diff options
Diffstat (limited to 'contrib/compiler-rt/lib/profile/InstrProfilingUtil.c')
-rw-r--r-- | contrib/compiler-rt/lib/profile/InstrProfilingUtil.c | 18 |
1 files changed, 8 insertions, 10 deletions
diff --git a/contrib/compiler-rt/lib/profile/InstrProfilingUtil.c b/contrib/compiler-rt/lib/profile/InstrProfilingUtil.c index 7f49d0f9fae1..d053ab160ca7 100644 --- a/contrib/compiler-rt/lib/profile/InstrProfilingUtil.c +++ b/contrib/compiler-rt/lib/profile/InstrProfilingUtil.c @@ -243,23 +243,21 @@ lprofApplyPathPrefix(char *Dest, const char *PathStr, const char *Prefix, COMPILER_RT_VISIBILITY const char * lprofFindFirstDirSeparator(const char *Path) { - const char *Sep; - Sep = strchr(Path, DIR_SEPARATOR); - if (Sep) - return Sep; + const char *Sep = strchr(Path, DIR_SEPARATOR); #if defined(DIR_SEPARATOR_2) - Sep = strchr(Path, DIR_SEPARATOR_2); + const char *Sep2 = strchr(Path, DIR_SEPARATOR_2); + if (Sep2 && (!Sep || Sep2 < Sep)) + Sep = Sep2; #endif return Sep; } COMPILER_RT_VISIBILITY const char *lprofFindLastDirSeparator(const char *Path) { - const char *Sep; - Sep = strrchr(Path, DIR_SEPARATOR); - if (Sep) - return Sep; + const char *Sep = strrchr(Path, DIR_SEPARATOR); #if defined(DIR_SEPARATOR_2) - Sep = strrchr(Path, DIR_SEPARATOR_2); + const char *Sep2 = strrchr(Path, DIR_SEPARATOR_2); + if (Sep2 && (!Sep || Sep2 > Sep)) + Sep = Sep2; #endif return Sep; } |