saving files: do not prepend with default path if given path is an absolute path

This commit is contained in:
Philippe Teuwen 2024-07-31 15:49:09 +02:00
commit 34bfaa7d32

View file

@ -206,12 +206,15 @@ char *newfilenamemcopyEx(const char *preferredName, const char *suffix, savePath
char *pfn = fileName;
// user preference save paths
size_t save_path_len = path_size(e_save_path);
if (save_path_len && save_path_len < (FILE_PATH_SIZE - strlen(PATHSEP))) {
snprintf(pfn, len, "%s%s", g_session.defaultPaths[e_save_path], PATHSEP);
pfn += save_path_len + strlen(PATHSEP);
len -= save_path_len + strlen(PATHSEP);
// if given path is not an absolute path
if ((preferredName[0] != '/') && (preferredName[0] != '\\')) {
// user preference save paths
size_t save_path_len = path_size(e_save_path);
if (save_path_len && save_path_len < (FILE_PATH_SIZE - strlen(PATHSEP))) {
snprintf(pfn, len, "%s%s", g_session.defaultPaths[e_save_path], PATHSEP);
pfn += save_path_len + strlen(PATHSEP);
len -= save_path_len + strlen(PATHSEP);
}
}
// remove file extension if exist in name