summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authoreban <eban@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2001-03-21 15:18:05 +0000
committereban <eban@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2001-03-21 15:18:05 +0000
commit1cd3664e9daf5a1b330103d025cdf2b1f9afb6aa (patch)
treeca5c08a9084025f516f84820934fd08d0ff6f0c1
parent90c6fbcf060c33549c97d530d145208d7d013592 (diff)
downloadruby-1cd3664e9daf5a1b330103d025cdf2b1f9afb6aa.tar.gz
ruby-1cd3664e9daf5a1b330103d025cdf2b1f9afb6aa.tar.xz
ruby-1cd3664e9daf5a1b330103d025cdf2b1f9afb6aa.zip
* win32/win32.c (isUNCRoot): multibyte character support.
git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@1274 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
-rw-r--r--win32/win32.c17
1 files changed, 10 insertions, 7 deletions
diff --git a/win32/win32.c b/win32/win32.c
index 55e863be9..54ad44ae3 100644
--- a/win32/win32.c
+++ b/win32/win32.c
@@ -2668,13 +2668,16 @@ isUNCRoot(const char *path)
{
if (path[0] == '\\' && path[1] == '\\') {
const char *p;
- if (p = strchr(path + 3, '\\')) {
- if (!p[1])
- return 0;
- if (p = strchr(p + 1, '\\')) {
- if (!p[1])
- return 1;
- } else
+ for (p = path + 3; *p; p = CharNext(p)) {
+ if (*p == '\\')
+ break;
+ }
+ if (p[0] && p[1]) {
+ for (p++; *p; p = CharNext(p)) {
+ if (*p == '\\')
+ break;
+ }
+ if (!p[0] || !p[1])
return 1;
}
}