Version v0.3.45 - -m Fix directory encryption output path - save in same directory as source
This commit is contained in:
21
src/ui.c
21
src/ui.c
@@ -595,16 +595,23 @@ int handle_directory_encrypt(void) {
|
||||
return 1;
|
||||
}
|
||||
|
||||
// Generate default output filename
|
||||
// Generate default output filename in the same directory as the source
|
||||
char default_output[1024];
|
||||
const char* dir_name = strrchr(dir_path, '/');
|
||||
if (dir_name) {
|
||||
dir_name++; // Skip the '/'
|
||||
} else {
|
||||
dir_name = dir_path;
|
||||
}
|
||||
|
||||
snprintf(default_output, sizeof(default_output), "%s.tar.gz.otp", dir_name);
|
||||
if (dir_name) {
|
||||
// Has a path component - save in same directory
|
||||
size_t parent_len = dir_name - dir_path;
|
||||
char parent_dir[1024];
|
||||
strncpy(parent_dir, dir_path, parent_len);
|
||||
parent_dir[parent_len] = '\0';
|
||||
|
||||
dir_name++; // Skip the '/'
|
||||
snprintf(default_output, sizeof(default_output), "%s/%s.tar.gz.otp", parent_dir, dir_name);
|
||||
} else {
|
||||
// No path component - save in current directory
|
||||
snprintf(default_output, sizeof(default_output), "%s.tar.gz.otp", dir_path);
|
||||
}
|
||||
|
||||
// Get output filename
|
||||
char output_file[512];
|
||||
|
||||
Reference in New Issue
Block a user