diff options
author | Damon Chaplin <damon@ximian.com> | 2001-07-27 05:00:21 +0800 |
---|---|---|
committer | Damon Chaplin <damon@src.gnome.org> | 2001-07-27 05:00:21 +0800 |
commit | fe700291eae05e801bc37a03fa3b882a6557d594 (patch) | |
tree | a101da7d67cf327235b2eb53e3513d822dfb08dd /calendar/gui/dialogs | |
parent | 871a58ea8aa324673075ceb24246faf7b56739c3 (diff) | |
download | gsoc2013-evolution-fe700291eae05e801bc37a03fa3b882a6557d594.tar.gz gsoc2013-evolution-fe700291eae05e801bc37a03fa3b882a6557d594.tar.zst gsoc2013-evolution-fe700291eae05e801bc37a03fa3b882a6557d594.zip |
check that the row passed in is valid. Sometimes we get the "row-selected"
2001-07-26 Damon Chaplin <damon@ximian.com>
* gui/dialogs/recurrence-page.c (exception_select_row_cb): check that
the row passed in is valid. Sometimes we get the "row-selected"
signal for row 0 when there are no rows in the list. Fixes bug #4266.
* cal-client/cal-client.c (cal_client_get_object): prefetch all the
timezone data needed by the object, to try to avoid making Corba
calls all over the place. They can cause problems because they call
the GTK+ main loop recursively. This currently leads to an assertion
failure in the GnomeCanvas occasionally. Though there are probably
several other similar problems around.
svn path=/trunk/; revision=11433
Diffstat (limited to 'calendar/gui/dialogs')
-rw-r--r-- | calendar/gui/dialogs/recurrence-page.c | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/calendar/gui/dialogs/recurrence-page.c b/calendar/gui/dialogs/recurrence-page.c index df3dd7e9cf..b60a9f6b48 100644 --- a/calendar/gui/dialogs/recurrence-page.c +++ b/calendar/gui/dialogs/recurrence-page.c @@ -2087,6 +2087,12 @@ exception_select_row_cb (GtkCList *clist, gint row, gint col, rpage = RECURRENCE_PAGE (data); priv = rpage->priv; + /* Sometimes GtkCList emits a 'row-selected' signal for row 0 when + there are 0 rows in the list (after you delete the last row). + So we check that the row is valid here. */ + if (row >= clist->rows) + return; + dt = gtk_clist_get_row_data (clist, row); g_assert (dt != NULL); |