frontend_common: Add special config case for unmapped windows network drives
Normally we save paths with '/' as the delimiter for each segment but when you manually select a network drive instead of using a mapped location, this would break. This ensures that if the read filesystem location starts with '//', we keep that pattern.
This commit is contained in:
parent
eedecaef96
commit
f3fe362c93
|
@ -856,7 +856,15 @@ std::string Config::AdjustKey(const std::string& key) {
|
|||
std::string Config::AdjustOutputString(const std::string& string) {
|
||||
std::string adjusted_string(string);
|
||||
boost::replace_all(adjusted_string, "\\", "/");
|
||||
boost::replace_all(adjusted_string, "//", "/");
|
||||
|
||||
// Windows requires that two forward slashes are used at the start of a path for unmapped
|
||||
// network drives so we have to watch for that here
|
||||
if (string.substr(0, 2) == "//") {
|
||||
boost::replace_all(adjusted_string, "//", "/");
|
||||
adjusted_string.insert(0, "/");
|
||||
} else {
|
||||
boost::replace_all(adjusted_string, "//", "/");
|
||||
}
|
||||
|
||||
// Needed for backwards compatibility with QSettings deserialization
|
||||
for (const auto& special_character : special_characters) {
|
||||
|
|
Loading…
Reference in New Issue