diff options
author | Ettore Perazzoli <ettore@src.gnome.org> | 2003-11-18 05:27:21 +0800 |
---|---|---|
committer | Ettore Perazzoli <ettore@src.gnome.org> | 2003-11-18 05:27:21 +0800 |
commit | c6b3809b47d4c5166d5244754f28b03ec5d5d60b (patch) | |
tree | 8076b2d754096a5196999295790f0099045d9884 /shell/main.c | |
parent | 9582e8159c9862e160d8b7569c534c8196e40686 (diff) | |
download | gsoc2013-evolution-c6b3809b47d4c5166d5244754f28b03ec5d5d60b.tar.gz gsoc2013-evolution-c6b3809b47d4c5166d5244754f28b03ec5d5d60b.tar.zst gsoc2013-evolution-c6b3809b47d4c5166d5244754f28b03ec5d5d60b.zip |
New helper function. (idle_cb): Call it if we have a local shell. Also,
* main.c (attempt_upgrade): New helper function.
(idle_cb): Call it if we have a local shell. Also, remove unused
variables.
* e-shell.c (e_shell_attempt_upgrade): New.
* Evolution-Component.idl (Component.upgradeFromeVersion): New.
svn path=/trunk/; revision=23403
Diffstat (limited to 'shell/main.c')
-rw-r--r-- | shell/main.c | 24 |
1 files changed, 22 insertions, 2 deletions
diff --git a/shell/main.c b/shell/main.c index 6285e55560..d89566a6aa 100644 --- a/shell/main.c +++ b/shell/main.c @@ -340,6 +340,25 @@ new_window_created_callback (EShell *shell, #endif /* DEVELOPMENT_WARNING */ +static void +attempt_upgrade (EShell *shell) +{ + GConfClient *gconf_client = gconf_client_get_default (); + char *previous_version = gconf_client_get_string (gconf_client, "/apps/evolution/version", NULL); + + if (previous_version != NULL) { + if (! e_shell_attempt_upgrade (shell, previous_version)) + e_notice (NULL, GTK_MESSAGE_ERROR, + _("Warning: Evolution could not upgrade all your data from version %s.\n" + "The data hasn't been deleted, but it will not be seen by this version of Evolution.\n"), + previous_version); + } + + gconf_client_set_string (gconf_client, "/apps/evolution/version", VERSION, NULL); + g_object_unref (gconf_client); +} + + /* This is for doing stuff that requires the GTK+ loop to be running already. */ static gint @@ -352,8 +371,6 @@ idle_cb (void *data) EShellStartupLineMode startup_line_mode; GSList *p; gboolean have_evolution_uri; - gboolean display_default; - gboolean displayed_any; #ifdef KILL_PROCESS_CMD kill_old_dataserver (); @@ -408,6 +425,9 @@ idle_cb (void *data) } + if (shell != NULL) + attempt_upgrade (shell); + have_evolution_uri = FALSE; if (uri_list == NULL && shell != NULL) |