aboutsummaryrefslogtreecommitdiff
path: root/libiberty/make-relative-prefix.c
diff options
context:
space:
mode:
authorTim Ruehsen <tim.ruehsen@gmx.de>2019-12-06 22:20:06 +0000
committerJeff Law <law@gcc.gnu.org>2019-12-06 15:20:06 -0700
commit1cd4fe3d4302f0db3dd38c720c69f0c51137ff13 (patch)
treed2af2546bc2fe82d48c1104cef672f76d02bee40 /libiberty/make-relative-prefix.c
parent070455950d3234009059b252d9b5f393682d20c6 (diff)
downloadgcc-1cd4fe3d4302f0db3dd38c720c69f0c51137ff13.zip
gcc-1cd4fe3d4302f0db3dd38c720c69f0c51137ff13.tar.gz
gcc-1cd4fe3d4302f0db3dd38c720c69f0c51137ff13.tar.bz2
Fix read buffer overflow in split_directories
* make-relative-prefix.c (split_directories): Return early on empty 'name' From-SVN: r279068
Diffstat (limited to 'libiberty/make-relative-prefix.c')
-rw-r--r--libiberty/make-relative-prefix.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/libiberty/make-relative-prefix.c b/libiberty/make-relative-prefix.c
index ec0b0ee..2ff2af8a 100644
--- a/libiberty/make-relative-prefix.c
+++ b/libiberty/make-relative-prefix.c
@@ -122,6 +122,9 @@ split_directories (const char *name, int *ptr_num_dirs)
const char *p, *q;
int ch;
+ if (!*name)
+ return NULL;
+
/* Count the number of directories. Special case MSDOS disk names as part
of the initial directory. */
p = name;