diff --git a/README.md b/README.md index 57b044c..f1dcf7d 100644 --- a/README.md +++ b/README.md @@ -58,14 +58,14 @@ One-time pads can be trivially encrypted and decrypted using pencil and paper, m ### Download Pre-Built Binaries -**[Download Current Linux x86](https://git.laantungir.net/laantungir/otp/releases/download/v0.3.43/otp-v0.3.43-linux-x86_64)** +**[Download Current Linux x86](https://git.laantungir.net/laantungir/otp/releases/download/v0.3.44/otp-v0.3.44-linux-x86_64)** -**[Download Current Raspberry Pi 64](https://git.laantungir.net/laantungir/otp/releases/download/v0.3.43/otp-v0.3.43-linux-arm64)** +**[Download Current Raspberry Pi 64](https://git.laantungir.net/laantungir/otp/releases/download/v0.3.44/otp-v0.3.44-linux-arm64)** After downloading: ```bash # Rename for convenience, then make executable -mv otp-v0.3.43-linux-x86_64 otp +mv otp-v0.3.44-linux-x86_64 otp chmod +x otp # Run it diff --git a/src/main.h b/src/main.h index 0812bff..1c4c22e 100644 --- a/src/main.h +++ b/src/main.h @@ -23,7 +23,7 @@ #include // Version - Updated automatically by build.sh -#define OTP_VERSION "v0.3.43" +#define OTP_VERSION "v0.3.44" // Constants #define MAX_INPUT_SIZE 4096 diff --git a/src/ui.c b/src/ui.c index 28b89f4..36acaba 100644 --- a/src/ui.c +++ b/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];