aboutsummaryrefslogtreecommitdiffstats
path: root/calendar
diff options
context:
space:
mode:
Diffstat (limited to 'calendar')
-rw-r--r--calendar/ChangeLog5
-rw-r--r--calendar/gui/dialogs/calendar-setup.c22
2 files changed, 19 insertions, 8 deletions
diff --git a/calendar/ChangeLog b/calendar/ChangeLog
index 934992e1f0..78c6de53fd 100644
--- a/calendar/ChangeLog
+++ b/calendar/ChangeLog
@@ -1,3 +1,8 @@
+2004-01-21 JP Rosevear <jpr@ximian.com>
+
+ * gui/dialogs/calendar-setup.c (source_to_dialog): only block
+ widgets that exist
+
2004-01-19 JP Rosevear <jpr@ximian.com>
* gui/e-cal-model-tasks.c (ensure_task_not_complete): correct
diff --git a/calendar/gui/dialogs/calendar-setup.c b/calendar/gui/dialogs/calendar-setup.c
index da2f2f0b40..e493108e86 100644
--- a/calendar/gui/dialogs/calendar-setup.c
+++ b/calendar/gui/dialogs/calendar-setup.c
@@ -281,10 +281,14 @@ source_to_dialog (SourceDialog *source_dialog)
g_signal_handlers_block_matched (source_dialog->name_entry, G_SIGNAL_MATCH_DATA,
0, 0, NULL, NULL, source_dialog);
- g_signal_handlers_block_matched (source_dialog->uri_entry, G_SIGNAL_MATCH_DATA,
- 0, 0, NULL, NULL, source_dialog);
- g_signal_handlers_block_matched (source_dialog->refresh_spin, G_SIGNAL_MATCH_DATA,
- 0, 0, NULL, NULL, source_dialog);
+
+ /* These are calendar specific so make sure we have them */
+ if (source_dialog->uri_entry)
+ g_signal_handlers_block_matched (source_dialog->uri_entry, G_SIGNAL_MATCH_DATA,
+ 0, 0, NULL, NULL, source_dialog);
+ if (source_dialog->refresh_spin)
+ g_signal_handlers_block_matched (source_dialog->refresh_spin, G_SIGNAL_MATCH_DATA,
+ 0, 0, NULL, NULL, source_dialog);
gtk_entry_set_text (GTK_ENTRY (source_dialog->name_entry), source ? e_source_peek_name (source) : "");
if (source && source_is_remote (source)) {
@@ -307,10 +311,12 @@ source_to_dialog (SourceDialog *source_dialog)
g_signal_handlers_unblock_matched (source_dialog->name_entry, G_SIGNAL_MATCH_DATA,
0, 0, NULL, NULL, source_dialog);
- g_signal_handlers_unblock_matched (source_dialog->uri_entry, G_SIGNAL_MATCH_DATA,
- 0, 0, NULL, NULL, source_dialog);
- g_signal_handlers_unblock_matched (source_dialog->refresh_spin, G_SIGNAL_MATCH_DATA,
- 0, 0, NULL, NULL, source_dialog);
+ if (source_dialog->uri_entry)
+ g_signal_handlers_unblock_matched (source_dialog->uri_entry, G_SIGNAL_MATCH_DATA,
+ 0, 0, NULL, NULL, source_dialog);
+ if (source_dialog->refresh_spin)
+ g_signal_handlers_unblock_matched (source_dialog->refresh_spin, G_SIGNAL_MATCH_DATA,
+ 0, 0, NULL, NULL, source_dialog);
}
static void