diff --git a/source/libublsettingsui-gtk3-save.c b/source/libublsettingsui-gtk3-save.c index db3e4f3..f187763 100644 --- a/source/libublsettingsui-gtk3-save.c +++ b/source/libublsettingsui-gtk3-save.c @@ -282,9 +282,8 @@ void yon_loaded_config_set_sections_from_sections_dictionary(struct loaded_confi } } -struct loaded_config *yon_config_get_compared(char *command, int *final_size){ +struct loaded_config *yon_config_get_compared(char *command){ if (command){ - *final_size=0; int size; config_str config = yon_config_load(command,&size); config_str temporary = NULL; @@ -298,6 +297,7 @@ struct loaded_config *yon_config_get_compared(char *command, int *final_size){ } yon_char_parsed_free(config,size); } + if (!temporary) return NULL; struct loaded_config *loaded = yon_config_convert_parameter(temporary,temp_size); int parsed_size; @@ -471,18 +471,17 @@ template_saving_window *yon_save_proceed(char *path,YON_CONFIG_TYPE type, ...){ } va_list args; - int compare_size=0; struct loaded_config *config_compare=NULL; va_start(args,type); char *compare_command = yon_get_compare_config_command(args,path,type); - config_compare = yon_config_get_compared(compare_command,&compare_size); // get compare config + config_compare = yon_config_get_compared(compare_command); // get compare config template_saving_window *window = yon_saving_window_new(); yon_save_window_set_status(window,path,type); int current_size=0; - config_str current_config = yon_config_get_all(¤t_size); + config_str current_config = yon_config_get_all(¤t_size); // get INTERNAL config struct loaded_config *current_loaded = yon_config_convert_parameter(current_config,current_size); // convert INTERNAL config into struct