summaryrefslogtreecommitdiff
path: root/core/fs
diff options
context:
space:
mode:
authorGene Cumm <gene.cumm@gmail.com>2010-09-23 21:51:14 -0400
committerGene Cumm <gene.cumm@gmail.com>2010-09-23 23:26:08 -0400
commite670d25fb0819ee54be6dd0e1e1ce24810997dd7 (patch)
treeffb9c04356dc9e8a9a03418989e93521a137bc88 /core/fs
parent6f438cf6d03e45d875b510559246573954e43218 (diff)
downloadsyslinux-e670d25fb0819ee54be6dd0e1e1ce24810997dd7.tar.gz
core: fix handling new directory "/" for CONFIG in ISOLINUX and EXTLINUX
Diffstat (limited to 'core/fs')
-rw-r--r--core/fs/iso9660/iso9660.c2
-rw-r--r--core/fs/lib/mangle.c2
2 files changed, 4 insertions, 0 deletions
diff --git a/core/fs/iso9660/iso9660.c b/core/fs/iso9660/iso9660.c
index 62137d0d..46f5f175 100644
--- a/core/fs/iso9660/iso9660.c
+++ b/core/fs/iso9660/iso9660.c
@@ -63,6 +63,8 @@ static void iso_mangle_name(char *dst, const char *src)
if ( (*(dst-1) != '.') && (*(dst-1) != '/') )
break;
+ if ((dst[-1] == '/') && ((dst - 1) == p))
+ break;
dst --;
i ++;
diff --git a/core/fs/lib/mangle.c b/core/fs/lib/mangle.c
index 813099fb..8c2077a9 100644
--- a/core/fs/lib/mangle.c
+++ b/core/fs/lib/mangle.c
@@ -36,6 +36,8 @@ void generic_mangle_name(char *dst, const char *src)
break;
if (dst[-1] != '/')
break;
+ if ((dst[-1] == '/') && ((dst - 1) == p))
+ break;
dst--;
i++;