Now basedir with backslashes or forward slashes should work.
m_base_dir = parse_env_string(value);
if (!m_base_dir.empty()) { // The empty string means "disable"
verify_absolute_path(m_base_dir);
+ m_base_dir = Util::normalize_absolute_path(m_base_dir);
}
break;
return 0;
}
+ assert(dir[0] == '/');
+ assert(path[0] == '/');
+
const size_t limit = std::min(dir.length(), path.length());
size_t i = 0;
do {
--i;
- } while (i > 0 && i != string_view::npos && dir[i] != '/' && path[i] != '/');
+ } while (i > 0 && dir[i] != '/' && path[i] != '/');
return i;
}
{
char buffer[PATH_MAX];
if (getcwd(buffer, sizeof(buffer))) {
+#ifndef _WIN32
return buffer;
+#else
+ std::string cwd = buffer;
+ std::replace(cwd.begin(), cwd.end(), '\\', '/');
+ return cwd;
+#endif
} else {
return {};
}
#else
char volume[4]; // "C:\"
GetVolumePathName(Util::get_actual_cwd().c_str(), volume, sizeof(volume));
+ volume[2] = '/'; // Since base directory is normalized to forward slashes
return volume;
#endif
}