From 4cd148d83f852363363e921c4925e67601654ff6 Mon Sep 17 00:00:00 2001 From: Johannes Sixt Date: Sat, 1 Mar 2008 21:11:14 +0100 Subject: [PATCH] setup.c: Prepare for Windows directory separators. This turns two switch/case statements into an if-else-if cascade because we later do not want to have case '/': #ifdef __MINGW32__ case '\\': #endif but use a predicate is_dir_sep(foo) in order to check for the directory separator. Signed-off-by: Johannes Sixt --- setup.c | 13 +++++-------- 1 file changed, 5 insertions(+), 8 deletions(-) diff --git a/setup.c b/setup.c index d630e374e..5fc89fd7d 100644 --- a/setup.c +++ b/setup.c @@ -26,24 +26,21 @@ static int sanitary_path_copy(char *dst, const char *src) * (4) "../" -- strip one, eat slash and continue. */ if (c == '.') { - switch (src[1]) { - case '\0': + if (!src[1]) { /* (1) */ src++; - break; - case '/': + } else if (src[1] == '/') { /* (2) */ src += 2; while (*src == '/') src++; continue; - case '.': - switch (src[2]) { - case '\0': + } else if (src[1] == '.') { + if (!src[2]) { /* (3) */ src += 2; goto up_one; - case '/': + } else if (src[2] == '/') { /* (4) */ src += 3; while (*src == '/') -- 2.30.2