summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDJ Delorie <dj@delorie.com>2008-03-24 18:06:37 +0000
committerDJ Delorie <dj@delorie.com>2008-03-24 18:06:37 +0000
commit336feba920ab34f478930d1bc5debe29051d0c4c (patch)
tree291cb7acc7d55d496e1f50a309dc9fd75f5fd3f3
parentb9bcabcbe5bf36d6feb202a7beb3ca627ca86f30 (diff)
downloadgdb-336feba920ab34f478930d1bc5debe29051d0c4c.tar.gz
merge from gcc
-rw-r--r--libiberty/ChangeLog5
-rw-r--r--libiberty/make-relative-prefix.c12
2 files changed, 10 insertions, 7 deletions
diff --git a/libiberty/ChangeLog b/libiberty/ChangeLog
index fad27c31414..547007a5238 100644
--- a/libiberty/ChangeLog
+++ b/libiberty/ChangeLog
@@ -1,3 +1,8 @@
+2008-03-24 Doug Evans <dje@google.com>
+
+ * make-relative-prefix.c (make_relative_prefix_1): Handle NULL
+ return from strdup.
+
2008-03-12 Seongbae Park <seongbae.park@gmail.com>
* cplus-dem.c (malloc, realloc): Use void * instead of char *
diff --git a/libiberty/make-relative-prefix.c b/libiberty/make-relative-prefix.c
index 80e7f92fb41..c98d287d7c0 100644
--- a/libiberty/make-relative-prefix.c
+++ b/libiberty/make-relative-prefix.c
@@ -292,14 +292,12 @@ make_relative_prefix_1 (const char *progname, const char *bin_prefix,
}
}
- if ( resolve_links )
- {
- full_progname = lrealpath (progname);
- if (full_progname == NULL)
- return NULL;
- }
+ if (resolve_links)
+ full_progname = lrealpath (progname);
else
- full_progname = strdup(progname);
+ full_progname = strdup (progname);
+ if (full_progname == NULL)
+ return NULL;
prog_dirs = split_directories (full_progname, &prog_num);
free (full_progname);