From cd33490c6609cea7d10096fb999fb0a13d7960ab Mon Sep 17 00:00:00 2001 From: Thomas Bernard Date: Tue, 11 Apr 2023 01:57:03 +0200 Subject: [PATCH] check if Main.backups->Pages->Filename is NULL to avoid segfaults --- src/loadsave.c | 4 ++-- src/windows.c | 2 ++ 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/src/loadsave.c b/src/loadsave.c index 0deecc6e..afde0f09 100644 --- a/src/loadsave.c +++ b/src/loadsave.c @@ -2232,8 +2232,8 @@ void Rotate_safety_backups(void) Init_context_backup_image(&context, file_name, Config_directory); context.Format=FORMAT_GIF; // Provide original file data, to store as a GIF Application Extension - context.Original_file_name = strdup(Main.backups->Pages->Filename); - context.Original_file_directory = strdup(Main.backups->Pages->File_directory); + context.Original_file_name = Main.backups->Pages->Filename != NULL ? strdup(Main.backups->Pages->Filename) : NULL; + context.Original_file_directory = Main.backups->Pages->File_directory != NULL ? strdup(Main.backups->Pages->File_directory) : NULL; Save_image(&context); Destroy_context(&context); diff --git a/src/windows.c b/src/windows.c index 239fd837..5842bb46 100644 --- a/src/windows.c +++ b/src/windows.c @@ -1100,6 +1100,8 @@ void Print_filename(void) // Partial copy of the name if (Main.backups->Pages->Filename_unicode != NULL) Unicode_strlcpy(display_string, Main.backups->Pages->Filename_unicode, 256); + else if (Main.backups->Pages->Filename == NULL) + display_string[0] = 0; else { #ifdef ENABLE_FILENAMES_ICONV