diff --git a/source/libublsettingsui-gtk3.c b/source/libublsettingsui-gtk3.c index 0a33071..e960ee0 100644 --- a/source/libublsettingsui-gtk3.c +++ b/source/libublsettingsui-gtk3.c @@ -579,30 +579,34 @@ template_main_window *setup_window(){ if (yon_char_is_empty(__yon_config_mode)){ int size; config_str cnf = yon_config_load(SAVE_MODE_GET_COMMAND,&size); - __yon_config_mode=yon_char_new(cnf[0]); - if (__yon_config_mode[strlen(__yon_config_mode)-1]=='\n') __yon_config_mode[strlen(__yon_config_mode)-1]='\0'; - yon_char_parsed_free(cnf,size); - if (!yon_char_is_empty(__yon_config_mode)&&strcmp(__yon_config_mode,"(null)")){ - gtk_image_set_from_pixbuf(GTK_IMAGE(ModeStatusImage),gtk_icon_theme_load_icon_for_scale(gtk_icon_theme_get_default(),yon_ubl_save_mode_get_icon_name(yon_ubl_save_mode_get_type(__yon_config_mode)),25,1,GTK_ICON_LOOKUP_FORCE_SIZE,NULL)); - char *tooltip_text=NULL; - switch (yon_ubl_save_mode_get_type(__yon_config_mode)){ - case SAVE_MODE_FULL: tooltip_text = SAVE_MODE_FULL_LABEL; - break; - case SAVE_MODE_MODULE: tooltip_text = SAVE_MODE_MODULE_LABEL; - break; - case SAVE_MODE_SANDBOX: tooltip_text = SAVE_MODE_SANDBOX_LABEL; - break; - case SAVE_MODE_RAM_HOME: tooltip_text = SAVE_MODE_RAM_HOME_LABEL; - break; - case SAVE_MODE_HDD: tooltip_text = SAVE_MODE_HDD_LABEL; - break; - case SAVE_MODE_HDD_HOME: tooltip_text = SAVE_MODE_HDD_HOME_LABEL; - break; + if (cnf){ + __yon_config_mode=yon_char_new(cnf[0]); + if (__yon_config_mode[strlen(__yon_config_mode)-1]=='\n') __yon_config_mode[strlen(__yon_config_mode)-1]='\0'; + yon_char_parsed_free(cnf,size); + if (!yon_char_is_empty(__yon_config_mode)&&strcmp(__yon_config_mode,"(null)")){ + gtk_image_set_from_pixbuf(GTK_IMAGE(ModeStatusImage),gtk_icon_theme_load_icon_for_scale(gtk_icon_theme_get_default(),yon_ubl_save_mode_get_icon_name(yon_ubl_save_mode_get_type(__yon_config_mode)),25,1,GTK_ICON_LOOKUP_FORCE_SIZE,NULL)); + char *tooltip_text=NULL; + switch (yon_ubl_save_mode_get_type(__yon_config_mode)){ + case SAVE_MODE_FULL: tooltip_text = SAVE_MODE_FULL_LABEL; + break; + case SAVE_MODE_MODULE: tooltip_text = SAVE_MODE_MODULE_LABEL; + break; + case SAVE_MODE_SANDBOX: tooltip_text = SAVE_MODE_SANDBOX_LABEL; + break; + case SAVE_MODE_RAM_HOME: tooltip_text = SAVE_MODE_RAM_HOME_LABEL; + break; + case SAVE_MODE_HDD: tooltip_text = SAVE_MODE_HDD_LABEL; + break; + case SAVE_MODE_HDD_HOME: tooltip_text = SAVE_MODE_HDD_HOME_LABEL; + break; + } + gtk_widget_set_tooltip_text(ModeStatusImage,tooltip_text); + } else { + free(__yon_config_mode); + __yon_config_mode=NULL; + gtk_widget_hide(ModeStatusImage); } - gtk_widget_set_tooltip_text(ModeStatusImage,tooltip_text); } else { - free(__yon_config_mode); - __yon_config_mode=NULL; gtk_widget_hide(ModeStatusImage); } }