summaryrefslogtreecommitdiffstats
path: root/Utilities
diff options
context:
space:
mode:
Diffstat (limited to 'Utilities')
-rw-r--r--Utilities/std/cm/bits/fs_path.cxx5
1 files changed, 3 insertions, 2 deletions
diff --git a/Utilities/std/cm/bits/fs_path.cxx b/Utilities/std/cm/bits/fs_path.cxx
index 1f52878..17af643 100644
--- a/Utilities/std/cm/bits/fs_path.cxx
+++ b/Utilities/std/cm/bits/fs_path.cxx
@@ -181,9 +181,10 @@ public:
if (posSep == rend) {
this->set_state(state::in_root_dir);
} else {
- auto pos = this->consume_root_name(posSep, rend, true);
+ auto pos = this->consume_root_name(posSep ? posSep : rstart, rend,
+ posSep != nullptr);
if (pos == rend) {
- this->set_state(state::in_root_dir);
+ this->set_state(posSep ? state::in_root_dir : state::in_root_name);
} else {
this->consume_filename(posSep, rend);
this->set_state(state::in_filename);