move absolutePath to MiscFunctions

This commit is contained in:
FlafyDev
2022-08-19 23:18:09 +03:00
parent 69d17bf424
commit f0ad77251b
5 changed files with 28 additions and 28 deletions

View File

@@ -782,7 +782,7 @@ void CConfigManager::handleSource(const std::string& command, const std::string&
return;
}
auto value = absolutePath(rawpath);
auto value = absolutePath(rawpath, configCurrentPath);
if (!std::filesystem::exists(value)) {
Debug::log(ERR, "source= file doesnt exist");
@@ -876,28 +876,6 @@ std::string CConfigManager::parseKeyword(const std::string& COMMAND, const std::
return parseError;
}
std::string CConfigManager::absolutePath(const std::string& rawpath) {
auto value = rawpath;
if (value[0] == '.') {
auto currentDir = configCurrentPath.substr(0, configCurrentPath.find_last_of('/'));
if (value[1] == '.') {
auto parentDir = currentDir.substr(0, currentDir.find_last_of('/'));
value.replace(0, 2, parentDir);
} else {
value.replace(0, 1, currentDir);
}
}
if (value[0] == '~') {
static const char* const ENVHOME = getenv("HOME");
value.replace(0, 1, std::string(ENVHOME));
}
return value;
}
void CConfigManager::applyUserDefinedVars(std::string& line, const size_t equalsPlace) {
auto dollarPlace = line.find_first_of('$', equalsPlace);