From 1e665c7639a81da6e50e888976569b64288d8052 Mon Sep 17 00:00:00 2001 From: glx Date: Sun, 4 Oct 2009 12:17:10 +0000 Subject: (svn r17689) -Fix (r16307): depend could segfault in some case (TrueBrain) --- src/depend/depend.cpp | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/src/depend/depend.cpp b/src/depend/depend.cpp index 133a7b676..8510f0ecd 100644 --- a/src/depend/depend.cpp +++ b/src/depend/depend.cpp @@ -426,7 +426,8 @@ const char *GeneratePath(const char *dirname, const char *filename, bool local) /* Remove '..' from the begin of the filename. */ while (*p == '.') { if (*(++p) == '.') { - *(strrchr(path, '/')) = '\0'; + char *s = strrchr(path, '/'); + if (s != NULL) *s = '\0'; p += 2; } } @@ -443,7 +444,8 @@ const char *GeneratePath(const char *dirname, const char *filename, bool local) /* Remove '..' from the begin of the filename. */ while (*p == '.') { if (*(++p) == '.') { - *(strrchr(path, '/')) = '\0'; + char *s = strrchr(path, '/'); + if (s != NULL) *s = '\0'; p += 2; } } -- cgit v1.2.3-70-g09d2