diff --git a/source/ubl-settings-logging.c b/source/ubl-settings-logging.c index fcaf15f..8a70527 100644 --- a/source/ubl-settings-logging.c +++ b/source/ubl-settings-logging.c @@ -2273,6 +2273,7 @@ main_window *setup_window(){ int cur_size=0; config_str cur_watcher = yon_char_parse(custom_watchers[i],&cur_size,";"); if (cur_watcher){ + cur_watcher = yon_char_parsed_append(cur_watcher,&cur_size,NULL); char *cur_name; int found=0; int valid = gtk_tree_model_get_iter_first(GTK_TREE_MODEL(widgets->list),&iter); @@ -2285,7 +2286,7 @@ main_window *setup_window(){ } if (!found) gtk_list_store_append(widgets->list,&iter); - gtk_list_store_set(widgets->list,&iter,0,cur_watcher[0],1,cur_watcher[1],2,cur_watcher[2],-1); + gtk_list_store_set(widgets->list,&iter,0,cur_watcher[0],1,cur_watcher[1],2,cur_watcher[2]?cur_watcher[2]:"",-1); yon_char_parsed_free(cur_watcher,cur_size); } } diff --git a/source/ubl-utils.c b/source/ubl-utils.c index 16e7c87..8fdd809 100644 --- a/source/ubl-utils.c +++ b/source/ubl-utils.c @@ -2196,7 +2196,7 @@ struct temp_statusbox { void _yon_ubl_status_box_timed_remove(struct temp_statusbox *statusstruct){ sleep(statusstruct->times); - if (statusstruct->revealer){ + if (status_thread_busy){ gtk_revealer_set_reveal_child(GTK_REVEALER(statusstruct->revealer),0); sleep(1); gtk_widget_destroy(statusstruct->revealer); @@ -2205,6 +2205,10 @@ void _yon_ubl_status_box_timed_remove(struct temp_statusbox *statusstruct){ status_thread_busy=0; } +void __yon_ubl_status_box_destroyed(){ + status_thread_busy=0; +} + void yon_ubl_status_box_spawn(GtkContainer *container,char *display_text, int timeout,BACKGROUND_IMAGE_TYPE type){ if (!status_thread_busy){ GtkWidget *box = gtk_box_new(GTK_ORIENTATION_HORIZONTAL,5); @@ -2218,6 +2222,7 @@ void yon_ubl_status_box_spawn(GtkContainer *container,char *display_text, int ti gtk_widget_show_all(revealer); gtk_revealer_set_reveal_child(GTK_REVEALER(revealer),1); + g_signal_connect(G_OBJECT(revealer),"destroy", G_CALLBACK(__yon_ubl_status_box_destroyed),NULL); gtk_widget_set_margin_bottom(label,9); gtk_widget_set_margin_top(label,9); diff --git a/source/ubl-utils.h b/source/ubl-utils.h index e01b857..fa0faab 100644 --- a/source/ubl-utils.h +++ b/source/ubl-utils.h @@ -15,6 +15,7 @@ #include #include #include +#include #include "../compile/ubl-cmake.h" #ifdef WEBKIT_FOUND