aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--camel/ChangeLog11
-rw-r--r--camel/providers/local/camel-local-store.c5
-rw-r--r--camel/providers/local/camel-maildir-store.c6
-rw-r--r--camel/providers/local/camel-mbox-store.c3
-rw-r--r--camel/providers/local/camel-mh-store.c6
5 files changed, 14 insertions, 17 deletions
diff --git a/camel/ChangeLog b/camel/ChangeLog
index 70ec3e243e..9242a0f964 100644
--- a/camel/ChangeLog
+++ b/camel/ChangeLog
@@ -1,12 +1,9 @@
-2002-07-26 Peter Williams <peterw@ximian.com>
+2002-07-26 Jeffrey Stedfast <fejj@ximian.com>
- * providers/imap/camel-imap-summary.c
- (camel_imap_summary_add_offline_uncached): The flags'n'tags
- copy was unnecessary. Removed it.
+ * providers/local/camel-local-store.c (get_folder): If the path
+ exists and is a directory, return non-NULL. Missed this before
+ which is how we could return NULL even on success. Oops.
- * Revert Jeff's previous change, it broke local
- folders. Uninitialized exceptions or something.
-
2002-07-25 Jeffrey Stedfast <fejj@ximian.com>
If we're gonna do an elite hack, lets do it right.
diff --git a/camel/providers/local/camel-local-store.c b/camel/providers/local/camel-local-store.c
index a0d3708346..0fbb9eb14e 100644
--- a/camel/providers/local/camel-local-store.c
+++ b/camel/providers/local/camel-local-store.c
@@ -144,8 +144,9 @@ get_folder(CamelStore * store, const char *folder_name, guint32 flags, CamelExce
if (!S_ISDIR(st.st_mode)) {
camel_exception_setv(ex, CAMEL_EXCEPTION_STORE_NO_FOLDER,
_("Store root %s is not a regular directory"), path);
+ return NULL;
}
- return NULL;
+ return (CamelFolder *) 0xdeadbeef;
}
if (errno != ENOENT
@@ -175,7 +176,7 @@ get_folder(CamelStore * store, const char *folder_name, guint32 flags, CamelExce
*slash = '/';
} while (slash);
- return NULL;
+ return (CamelFolder *) 0xdeadbeef;
}
static CamelFolder *
diff --git a/camel/providers/local/camel-maildir-store.c b/camel/providers/local/camel-maildir-store.c
index caae276e14..53d554d16a 100644
--- a/camel/providers/local/camel-maildir-store.c
+++ b/camel/providers/local/camel-maildir-store.c
@@ -85,14 +85,14 @@ CamelType camel_maildir_store_get_type(void)
return camel_maildir_store_type;
}
-static CamelFolder *get_folder(CamelStore * store, const char *folder_name, guint32 flags, CamelException * ex)
+static CamelFolder *
+get_folder(CamelStore * store, const char *folder_name, guint32 flags, CamelException * ex)
{
char *name, *tmp, *cur, *new;
struct stat st;
CamelFolder *folder = NULL;
- (void) ((CamelStoreClass *)parent_class)->get_folder(store, folder_name, flags, ex);
- if (camel_exception_is_set(ex))
+ if (!((CamelStoreClass *)parent_class)->get_folder(store, folder_name, flags, ex))
return NULL;
name = g_strdup_printf("%s%s", CAMEL_LOCAL_STORE(store)->toplevel_dir, folder_name);
diff --git a/camel/providers/local/camel-mbox-store.c b/camel/providers/local/camel-mbox-store.c
index 3333580766..cfe3429713 100644
--- a/camel/providers/local/camel-mbox-store.c
+++ b/camel/providers/local/camel-mbox-store.c
@@ -81,8 +81,7 @@ get_folder(CamelStore *store, const char *folder_name, guint32 flags, CamelExcep
char *name;
struct stat st;
- (void) ((CamelStoreClass *)parent_class)->get_folder(store, folder_name, flags, ex);
- if (camel_exception_is_set(ex))
+ if (!((CamelStoreClass *)parent_class)->get_folder(store, folder_name, flags, ex))
return NULL;
name = g_strdup_printf("%s%s", CAMEL_LOCAL_STORE(store)->toplevel_dir, folder_name);
diff --git a/camel/providers/local/camel-mh-store.c b/camel/providers/local/camel-mh-store.c
index f653fdb408..a92db83797 100644
--- a/camel/providers/local/camel-mh-store.c
+++ b/camel/providers/local/camel-mh-store.c
@@ -185,13 +185,13 @@ fail:
camel_object_unref(out);
}
-static CamelFolder *get_folder(CamelStore * store, const char *folder_name, guint32 flags, CamelException * ex)
+static CamelFolder *
+get_folder(CamelStore * store, const char *folder_name, guint32 flags, CamelException * ex)
{
char *name;
struct stat st;
- (void) ((CamelStoreClass *)parent_class)->get_folder(store, folder_name, flags, ex);
- if (camel_exception_is_set(ex))
+ if (!((CamelStoreClass *)parent_class)->get_folder(store, folder_name, flags, ex))
return NULL;
name = g_strdup_printf("%s%s", CAMEL_LOCAL_STORE(store)->toplevel_dir, folder_name);