diff options
| author | eban <eban@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2001-03-21 15:18:05 +0000 |
|---|---|---|
| committer | eban <eban@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2001-03-21 15:18:05 +0000 |
| commit | 1cd3664e9daf5a1b330103d025cdf2b1f9afb6aa (patch) | |
| tree | ca5c08a9084025f516f84820934fd08d0ff6f0c1 | |
| parent | 90c6fbcf060c33549c97d530d145208d7d013592 (diff) | |
| download | ruby-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.c | 17 |
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; } } |
