diff options
author | Srinivasa Ragavan <sragavan@novell.com> | 2009-05-22 19:03:49 +0800 |
---|---|---|
committer | Srinivasa Ragavan <sragavan@novell.com> | 2009-05-22 20:13:57 +0800 |
commit | 981f6cb4c15b7c1c4163bed64940c5d5b053d67d (patch) | |
tree | 17979a3972290123ebbb7dfcf9273bc1d628d965 | |
parent | 1cb4f46d8e12b0c47f7e74fc294b07a232b475ed (diff) | |
download | gsoc2013-evolution-981f6cb4c15b7c1c4163bed64940c5d5b053d67d.tar.gz gsoc2013-evolution-981f6cb4c15b7c1c4163bed64940c5d5b053d67d.tar.zst gsoc2013-evolution-981f6cb4c15b7c1c4163bed64940c5d5b053d67d.zip |
Fix EConfig bugs for Anjal's account setup.
-rw-r--r-- | e-util/e-config.c | 21 |
1 files changed, 12 insertions, 9 deletions
diff --git a/e-util/e-config.c b/e-util/e-config.c index 1da54b5436..a2d68e1740 100644 --- a/e-util/e-config.c +++ b/e-util/e-config.c @@ -532,11 +532,13 @@ ec_rebuild(EConfig *emp) gnome_druid_page_edge_set_title((GnomeDruidPageEdge *)page, translated_label); gnome_druid_insert_page((GnomeDruid *)druid, pagenode?(GnomeDruidPage *)pagenode->frame:NULL, (GnomeDruidPage *)page); } - if (item->type == E_CONFIG_PAGE_FINISH) { - g_signal_connect(page, "back", G_CALLBACK(ec_druid_prev), wn); - g_signal_connect(page, "finish", G_CALLBACK(ec_druid_finish), wn); - } else - g_signal_connect(page, "next", G_CALLBACK(ec_druid_next), wn); + if (page) { + if (item->type == E_CONFIG_PAGE_FINISH) { + g_signal_connect(page, "back", G_CALLBACK(ec_druid_prev), wn); + g_signal_connect(page, "finish", G_CALLBACK(ec_druid_finish), wn); + } else + g_signal_connect(page, "next", G_CALLBACK(ec_druid_next), wn); + } wn->frame = page; wn->widget = page; } @@ -567,10 +569,11 @@ ec_rebuild(EConfig *emp) page = item->factory(emp, item, root, wn->frame, wn->context->data); if (emp->type == E_CONFIG_DRUID) { if (page) { - g_return_if_fail (GNOME_IS_DRUID_PAGE_STANDARD(page)); - connect = wn->frame != page; - wn->frame = page; - page = ((GnomeDruidPageStandard *)page)->vbox; + if (GNOME_IS_DRUID_PAGE_STANDARD(page)) { + connect = wn->frame != page; + wn->frame = page; + page = ((GnomeDruidPageStandard *)page)->vbox; + } } else wn->frame = page; } else { |