diff options
| author | eban <eban@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2000-09-25 07:00:55 +0000 |
|---|---|---|
| committer | eban <eban@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2000-09-25 07:00:55 +0000 |
| commit | fb897de4ec7cb844c4dc5f00a9c56038dc50351d (patch) | |
| tree | 6420115a2e8ebcd4ecd4759f6fa06b3cb844375c /win32 | |
| parent | 7be4b47395267a39ffe6d7356f5bc71c196d7feb (diff) | |
| download | ruby-fb897de4ec7cb844c4dc5f00a9c56038dc50351d.tar.gz ruby-fb897de4ec7cb844c4dc5f00a9c56038dc50351d.tar.xz ruby-fb897de4ec7cb844c4dc5f00a9c56038dc50351d.zip | |
eban
git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@969 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'win32')
| -rw-r--r-- | win32/win32.c | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/win32/win32.c b/win32/win32.c index f8de990ba..05b971c05 100644 --- a/win32/win32.c +++ b/win32/win32.c @@ -873,13 +873,18 @@ NtCmdGlob (NtCmdLineElement *patt) { ListInfo listinfo; char buffer[MAXPATHLEN], *buf = buffer; + char *p, *pend, *pb; listinfo.head = listinfo.tail = 0; if (patt->len >= MAXPATHLEN) buf = ruby_xmalloc(patt->len + 1); - strncpy(buf, patt->str, patt->len); + p = patt->str; + pend = p + patt->len; + pb = buf; + for (; p < pend; p = CharNext(p)) + *pb++ = *p == '\\' ? '/' : *p; buf[patt->len] = 0; rb_glob(buf, insert, (VALUE)&listinfo); if (buf != buffer) |
