diff options
Diffstat (limited to 'src')
| -rw-r--r-- | src/lib/fs.rs | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/src/lib/fs.rs b/src/lib/fs.rs index e185ca3e..722f2661 100644 --- a/src/lib/fs.rs +++ b/src/lib/fs.rs @@ -13,7 +13,13 @@ fn dirname(path p) -> path { assert (_str.byte_len(sep) == 1u); let int i = _str.rindex(p, sep.(0)); if (i == -1) { - ret p; + // FIXME: the '/' character is a path separator on all 3 platforms we + // support. This should probably be generalized a bit more in the + // future, but for now this should work. + i = _str.rindex(p, '/'); + if (i == -1) { + ret p; + } } ret _str.substr(p, 0u, i as uint); } |