PKGBUILDs/extra/gnome-utils/bgo497489.patch
2009-10-09 21:23:22 -05:00

54 lines
2.3 KiB
Diff

diff -up gnome-utils-2.20.0.1/logview/log_repaint.c.versions gnome-utils-2.20.0.1/logview/log_repaint.c
--- gnome-utils-2.20.0.1/logview/log_repaint.c.versions 2007-11-16 13:29:00.000000000 -0500
+++ gnome-utils-2.20.0.1/logview/log_repaint.c 2007-11-16 13:29:43.000000000 -0500
@@ -226,6 +226,8 @@ logview_update_version_bar (LogviewWindo
else
recent = log;
+ g_signal_handler_block (logview->version_selector, logview->version_changed_id);
+
for (i=5; i>-1; i--)
gtk_combo_box_remove_text (GTK_COMBO_BOX (logview->version_selector), i);
@@ -241,6 +243,8 @@ logview_update_version_bar (LogviewWindo
gtk_combo_box_set_active (GTK_COMBO_BOX (logview->version_selector),
log->current_version);
+ g_signal_handler_unblock (logview->version_selector, logview->version_changed_id);
+
} else {
gtk_widget_hide (logview->version_bar);
}
diff -up gnome-utils-2.20.0.1/logview/logview.h.versions gnome-utils-2.20.0.1/logview/logview.h
--- gnome-utils-2.20.0.1/logview/logview.h.versions 2007-11-16 13:27:55.000000000 -0500
+++ gnome-utils-2.20.0.1/logview/logview.h 2007-11-16 13:28:05.000000000 -0500
@@ -55,6 +55,7 @@ struct _LogviewWindow {
Log *curlog;
int original_fontsize, fontsize;
+ gulong version_changed_id;
};
struct _LogviewWindowClass {
diff -up gnome-utils-2.20.0.1/logview/logview.c.versions gnome-utils-2.20.0.1/logview/logview.c
--- gnome-utils-2.20.0.1/logview/logview.c.versions 2007-11-16 13:28:13.000000000 -0500
+++ gnome-utils-2.20.0.1/logview/logview.c 2007-11-16 13:28:52.000000000 -0500
@@ -432,6 +432,9 @@ logview_version_selector_changed (GtkCom
g_assert (LOGVIEW_IS_WINDOW (logview));
+ if (!log)
+ return;
+
selected = gtk_combo_box_get_active (version_selector);
if (selected == log->current_version)
@@ -903,7 +906,7 @@ logview_init (LogviewWindow *logview)
logview->version_bar = gtk_hbox_new (FALSE, 0);
gtk_container_set_border_width (GTK_CONTAINER (logview->version_bar), 3);
logview->version_selector = gtk_combo_box_new_text ();
- g_signal_connect (G_OBJECT (logview->version_selector), "changed",
+ logview->version_changed_id = g_signal_connect (G_OBJECT (logview->version_selector), "changed",
G_CALLBACK (logview_version_selector_changed), logview);
label = gtk_label_new (_("Version: "));