Add a test case for trim_trailing_slashes, and make it handle other cases.

This commit is contained in:
Martin Pool committed 2002-03-25 03:51:17 +00:00
1 parent bf4e725d5d
commit c127e8aaec
4 files changed
+90 -8

No files matched your search

+10 -6
View File
@@ -113,15 +113,19 @@ int do_rename(char *fname1, char *fname2)
void trim_trailing_slashes(char *name)
{
char *p;
int l;
/* Some BSD systems cannot make a directory if the name
* contains a trailing slash.
* <http://www.opensource.apple.com/bugs/X/BSD%20Kernel/2734739.html> */
if (!*name)
return; /* empty string */
p = strchr(name, '\0') - 1;
while (p == '/') {
p-- = '\0';
/* Don't change empty string; and also we can't improve on
* "/" */
l = strlen(name);
while (l > 1) {
if (name[--l] != '/')
break;
name[l] = '\0';
}
}