diff options
author | Jon Loeliger <jdl@jdl.com> | 2008-10-03 11:12:33 -0500 |
---|---|---|
committer | Jon Loeliger <jdl@jdl.com> | 2008-10-03 11:12:33 -0500 |
commit | 879e4d2590b50d63f82c3c3652bc3c7900591f1c (patch) | |
tree | 360150a0a9f7b94f455ace32fc5145898d4c4b2f /srcpos.c | |
parent | 68f98d7b8aa41fab175daf9f1bcb2a5bc22dbc90 (diff) | |
download | dtc-879e4d2590b50d63f82c3c3652bc3c7900591f1c.zip dtc-879e4d2590b50d63f82c3c3652bc3c7900591f1c.tar.gz dtc-879e4d2590b50d63f82c3c3652bc3c7900591f1c.tar.bz2 |
Implement and use an xstrdup() function
Many places in dtc use strdup(), but none of them actually check the
return value to see if the implied allocation succeeded. This is a
potential bug, which we fix in the patch below by replacing strdup()
with an xstrdup() which in analogy to xmalloc() will quit with a fatal
error if the allocation fails.
I felt the introduciton of util.[ch] was a better choice
for utility oriented code than directly using srcpos.c
for the new string function.
This patch is a re-factoring of Dave Gibson's similar patch.
Signed-off-by: Jon Loeliger <jdl@freescale.com>
Diffstat (limited to 'srcpos.c')
-rw-r--r-- | srcpos.c | 4 |
1 files changed, 2 insertions, 2 deletions
@@ -39,7 +39,7 @@ static int dtc_open_one(struct dtc_file *file, strcat(fullname, "/"); strcat(fullname, fname); } else { - fullname = strdup(fname); + fullname = xstrdup(fname); } file->file = fopen(fullname, "r"); @@ -85,7 +85,7 @@ struct dtc_file *dtc_open_file(const char *fname, if (!file->file) goto fail; - file->name = strdup(fname); + file->name = xstrdup(fname); return file; } |