aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorEttore Perazzoli <ettore@src.gnome.org>2002-07-27 01:18:59 +0800
committerEttore Perazzoli <ettore@src.gnome.org>2002-07-27 01:18:59 +0800
commit0df3715eb4f16d25f74ce6545da9ecdbc0d2ef2b (patch)
tree9a295299aec4c439c9467e68a5a5d739fe1c0d32
parent1363bc081251558d0490ecbbecb151fba008fc59 (diff)
downloadgsoc2013-evolution-0df3715eb4f16d25f74ce6545da9ecdbc0d2ef2b.tar
gsoc2013-evolution-0df3715eb4f16d25f74ce6545da9ecdbc0d2ef2b.tar.gz
gsoc2013-evolution-0df3715eb4f16d25f74ce6545da9ecdbc0d2ef2b.tar.bz2
gsoc2013-evolution-0df3715eb4f16d25f74ce6545da9ecdbc0d2ef2b.tar.lz
gsoc2013-evolution-0df3715eb4f16d25f74ce6545da9ecdbc0d2ef2b.tar.xz
gsoc2013-evolution-0df3715eb4f16d25f74ce6545da9ecdbc0d2ef2b.tar.zst
gsoc2013-evolution-0df3715eb4f16d25f74ce6545da9ecdbc0d2ef2b.zip
(load_all_folders): Don't return FALSE if any
of the folders fails to load; otherwise, if the user has played with ~/evolution, he might end up not seeing any folders at all. svn path=/trunk/; revision=17606
-rw-r--r--shell/ChangeLog14
-rw-r--r--shell/e-local-storage.c30
2 files changed, 37 insertions, 7 deletions
diff --git a/shell/ChangeLog b/shell/ChangeLog
index 7563ff3e2d..a06c2afc29 100644
--- a/shell/ChangeLog
+++ b/shell/ChangeLog
@@ -1,3 +1,9 @@
+2002-07-26 Ettore Perazzoli <ettore@ximian.com>
+
+ * e-local-storage.c (load_all_folders): Don't return FALSE if any
+ of the folders fails to load; otherwise, if the user has played
+ with ~/evolution, he might end up not seeing any folders at all.
+
2002-07-24 Ettore Perazzoli <ettore@ximian.com>
* e-shell-view-menu.c (command_work_online): Remove debugging
@@ -47,13 +53,13 @@
(removed_storage_cb)
(new_folder_cb)
* e-shortcuts-view.c
- (get_shortcut_info):
+ (get_shortcut_info)
* e-shell-view.c
(handle_current_folder_removed)
* e-shell-utils.c
- (e_shell_folder_name_is_valid):
+ (e_shell_folder_name_is_valid)
* e-local-storage.c
- (construct):
+ (construct)
* e-folder-tree.c
(get_parent_path)
(get_parent_path)
@@ -63,7 +69,7 @@
* e-folder-dnd-bridge.c
(handle_data_received_path)
* evolution-storage.c
- (make_full_uri):
+ (make_full_uri)
* e-shell-constants.h: New #defines E_PATH_SEPARATOR and
E_PATH_SEPARATOR_S.
diff --git a/shell/e-local-storage.c b/shell/e-local-storage.c
index 8c263d1e76..3b7caca0e4 100644
--- a/shell/e-local-storage.c
+++ b/shell/e-local-storage.c
@@ -218,8 +218,9 @@ load_all_folders (ELocalStorage *local_storage)
base_path = e_local_storage_get_base_path (local_storage);
- if (! e_path_find_folders (base_path, load_folder, local_storage))
- return FALSE;
+ /* Ignore errors, so we set up the local storage even if there is stale
+ data that we don't understand in ~/evolution. */
+ e_path_find_folders (base_path, load_folder, local_storage);
setup_stock_folders (local_storage);
@@ -817,6 +818,28 @@ struct _XferData {
};
typedef struct _XferData XferData;
+static int nesting = 0;
+
+#define PRINT_ENTER() \
+ while (0) { \
+ int _i; \
+ nesting ++; \
+ \
+ for (_i = 0; _i < nesting; _i ++) \
+ putchar (' '); \
+ printf ("Enter %s", __FUNCTION__); \
+ }
+
+#define PRINT_EXIT() \
+ while (0) { \
+ int _i; \
+ \
+ for (_i = 0; _i < nesting; _i ++) \
+ putchar (' '); \
+ printf ("Exit %s", __FUNCTION__); \
+ nesting --; \
+ }
+
static void
async_xfer_folder_step (ELocalStorage *local_storage,
const char *source_path,
@@ -831,6 +854,7 @@ async_xfer_folder_step (ELocalStorage *local_storage,
char *physical_path;
char *physical_uri;
+ PRINT_ENTER ();
priv = local_storage->priv;
source_folder = e_storage_get_folder (E_STORAGE (local_storage), source_path);
@@ -855,8 +879,8 @@ async_xfer_folder_step (ELocalStorage *local_storage,
remove_source,
component_client_callback,
component_client_callback_data);
-
g_free (physical_uri);
+ PRINT_EXIT ();
}
static void