aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorEttore Perazzoli <ettore@src.gnome.org>2000-12-29 03:48:46 +0800
committerEttore Perazzoli <ettore@src.gnome.org>2000-12-29 03:48:46 +0800
commit77d282e4a29006f2a4abe4b0f7bda24bb6855f1c (patch)
tree862d1170eef8af8a35d415c55e78028b9fa7286f
parent847506be0e0ed8dd9ee0613ede2fbc9adf50c1a5 (diff)
downloadgsoc2013-evolution-77d282e4a29006f2a4abe4b0f7bda24bb6855f1c.tar.gz
gsoc2013-evolution-77d282e4a29006f2a4abe4b0f7bda24bb6855f1c.tar.zst
gsoc2013-evolution-77d282e4a29006f2a4abe4b0f7bda24bb6855f1c.zip
Fix a bug in `evolution_shell_client_user_select_folder()' that could
cause the function to return without assigning any value to the "out" parameters. svn path=/trunk/; revision=7190
-rw-r--r--shell/ChangeLog6
-rw-r--r--shell/evolution-shell-client.c15
2 files changed, 13 insertions, 8 deletions
diff --git a/shell/ChangeLog b/shell/ChangeLog
index 2939947631..df579059bd 100644
--- a/shell/ChangeLog
+++ b/shell/ChangeLog
@@ -1,3 +1,9 @@
+2000-12-28 Ettore Perazzoli <ettore@helixcode.com>
+
+ * evolution-shell-client.c (user_select_folder): Make sure the
+ `*uri_return' and `*physical_uri_return' are always initialized on
+ return, as that's what the caller expects.
+
2000-12-23 Jason Leach <jasonleach@usa.net>
* e-shell-view-menu.c (command_run_bugbuddy): Fix a crash when the
diff --git a/shell/evolution-shell-client.c b/shell/evolution-shell-client.c
index f5cc3ef15c..377f2c21d0 100644
--- a/shell/evolution-shell-client.c
+++ b/shell/evolution-shell-client.c
@@ -176,6 +176,11 @@ user_select_folder (EvolutionShellClient *shell_client,
result = NULL;
+ if (uri_return != NULL)
+ *uri_return = NULL;
+ if (physical_uri_return != NULL)
+ *physical_uri_return = NULL;
+
listener_interface = create_folder_selection_listener_interface (&result, uri_return,
physical_uri_return);
if (listener_interface == CORBA_OBJECT_NIL)
@@ -192,17 +197,11 @@ user_select_folder (EvolutionShellClient *shell_client,
corba_type_list._buffer = (CORBA_char **) possible_types;
GNOME_Evolution_Shell_selectUserFolder (corba_shell, listener_interface,
- title, default_folder, &corba_type_list,
- &ev);
+ title, default_folder, &corba_type_list,
+ &ev);
if (ev._major != CORBA_NO_EXCEPTION) {
CORBA_exception_free (&ev);
-
- if (uri_return != NULL)
- *uri_return = NULL;
- if (physical_uri_return != NULL)
- *physical_uri_return = NULL;
-
return;
}