diff options
author | Johannes Sixt <johannes.sixt@telecom.at> | 2008-03-01 21:11:14 +0100 |
---|---|---|
committer | Johannes Sixt <johannes.sixt@telecom.at> | 2008-06-23 13:22:35 +0200 |
commit | 4cd148d83f852363363e921c4925e67601654ff6 (patch) | |
tree | bf28422eba86581aafd9348baf9b5fafd6282751 /setup.c | |
parent | 80ba074f4163dc8ee4232d64e73a8521edcadc1d (diff) | |
download | git-4cd148d83f852363363e921c4925e67601654ff6.tar.gz |
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 <johannes.sixt@telecom.at>
Diffstat (limited to 'setup.c')
-rw-r--r-- | setup.c | 13 |
1 files changed, 5 insertions, 8 deletions
@@ -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 == '/') |