diff --git a/src/terminal/widget.c b/src/terminal/widget.c index 82e4e2a..632b499 100644 --- a/src/terminal/widget.c +++ b/src/terminal/widget.c @@ -868,20 +868,30 @@ LIB3270_EXPORT GtkIMContext * v3270_get_im_context(GtkWidget *widget) static gboolean bg_emit_save_settings(v3270 *terminal) { GdkWindow * window = gtk_widget_get_window(GTK_WIDGET(terminal)); - gdk_window_set_cursor( - window, - GTK_V3270_GET_CLASS(terminal)->cursors[LIB3270_POINTER_WAITING] - ); - gdk_display_sync(gtk_widget_get_display(GTK_WIDGET(terminal))); + if(window) { - terminal->freeze = 0; - g_signal_emit(terminal,v3270_widget_signal[V3270_SIGNAL_SAVE_SETTINGS], 0, FALSE); + gdk_window_set_cursor( + window, + GTK_V3270_GET_CLASS(terminal)->cursors[LIB3270_POINTER_WAITING] + ); - gdk_window_set_cursor( - window, - NULL - ); + gdk_display_sync(gtk_widget_get_display(GTK_WIDGET(terminal))); + + terminal->freeze = 0; + g_signal_emit(terminal,v3270_widget_signal[V3270_SIGNAL_SAVE_SETTINGS], 0, FALSE); + + gdk_window_set_cursor( + window, + NULL + ); + + } else { + + terminal->freeze = 0; + g_signal_emit(terminal,v3270_widget_signal[V3270_SIGNAL_SAVE_SETTINGS], 0, FALSE); + + } g_object_unref(terminal); -- libgit2 0.21.2