aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--camel/ChangeLog30
-rw-r--r--camel/camel-provider.h4
-rw-r--r--camel/camel-session.c6
-rw-r--r--camel/providers/imap/camel-imap-provider.c2
-rw-r--r--camel/providers/local/camel-local-provider.c8
-rw-r--r--camel/providers/nntp/camel-nntp-provider.c4
-rw-r--r--camel/providers/pop3/camel-pop3-provider.c4
-rw-r--r--camel/providers/sendmail/camel-sendmail-provider.c4
-rw-r--r--camel/providers/smtp/camel-smtp-provider.c4
9 files changed, 59 insertions, 7 deletions
diff --git a/camel/ChangeLog b/camel/ChangeLog
index 1655d50437..2d2a2c71ad 100644
--- a/camel/ChangeLog
+++ b/camel/ChangeLog
@@ -1,5 +1,35 @@
2001-09-28 Jeffrey Stedfast <fejj@ximian.com>
+ * providers/nntp/camel-nntp-provider.c
+ (camel_provider_module_init): Init the nntp url hash and url_equal
+ functions.
+
+ * providers/sendmail/camel-sendmail-provider.c
+ (camel_provider_module_init): Init the sendmail url hash and
+ url_equal functions.
+
+ * providers/smtp/camel-smtp-provider.c
+ (camel_provider_module_init): Init the smtp url hash and url_equal
+ functions.
+
+ * providers/pop3/camel-pop3-provider.c
+ (camel_provider_module_init): Init the pop3 url hash and url_equal
+ functions.
+
+ * providers/imap/camel-imap-provider.c
+ (camel_provider_module_init): Init the imap url hash and url_equal
+ functions.
+
+ * providers/local/camel-local-provider.c
+ (camel_provider_module_init): Init the local url hash and
+ url_equal functions.
+
+ * camel-session.c (camel_session_class_init): Init the vfolder url
+ hash and url_equal functions.
+
+ * camel-provider.h: Added url_hash and url_equal function pointers
+ to the structure.
+
* camel-vtrash-folder.c (vtrash_move_messages_to): Oops, a
CamelFolder is not a CamelFolderClass.
diff --git a/camel/camel-provider.h b/camel/camel-provider.h
index 5301a42ec6..ee4a98fc9d 100644
--- a/camel/camel-provider.h
+++ b/camel/camel-provider.h
@@ -145,7 +145,9 @@ typedef struct {
GList *authtypes;
GHashTable *service_cache;
-
+
+ GHashFunc url_hash;
+ GCompareFunc url_equal;
} CamelProvider;
GHashTable *camel_provider_init (void);
diff --git a/camel/camel-session.c b/camel/camel-session.c
index facedb9400..e30f82d955 100644
--- a/camel/camel-session.c
+++ b/camel/camel-session.c
@@ -99,7 +99,7 @@ camel_session_init (CamelSession *session)
session->priv->thread_id = 1;
session->priv->thread_active = g_hash_table_new(NULL, NULL);
session->priv->thread_queue = NULL;
-#endif
+#endif
}
static gboolean
@@ -151,10 +151,12 @@ camel_session_class_init (CamelSessionClass *camel_session_class)
camel_session_class->thread_queue = session_thread_queue;
camel_session_class->thread_wait = session_thread_wait;
#endif
-
+
if (vee_provider.service_cache == NULL) {
vee_provider.object_types[CAMEL_PROVIDER_STORE] = camel_vee_store_get_type ();
vee_provider.service_cache = g_hash_table_new (camel_url_hash, camel_url_equal);
+ vee_provider.url_hash = camel_url_hash;
+ vee_provider.url_equal = camel_url_equal;
}
}
diff --git a/camel/providers/imap/camel-imap-provider.c b/camel/providers/imap/camel-imap-provider.c
index d3448a0156..40ec09f3ca 100644
--- a/camel/providers/imap/camel-imap-provider.c
+++ b/camel/providers/imap/camel-imap-provider.c
@@ -92,6 +92,8 @@ camel_provider_module_init (CamelSession *session)
imap_provider.object_types[CAMEL_PROVIDER_STORE] =
camel_imap_store_get_type ();
imap_provider.service_cache = g_hash_table_new (imap_url_hash, imap_url_equal);
+ imap_provider.url_hash = imap_url_hash;
+ imap_provider.url_equal = imap_url_equal;
imap_provider.authtypes = g_list_concat (camel_remote_store_authtype_list (),
camel_sasl_authtype_list (FALSE));
imap_provider.authtypes = g_list_prepend (imap_provider.authtypes,
diff --git a/camel/providers/local/camel-local-provider.c b/camel/providers/local/camel-local-provider.c
index 606416fc37..2ee5ea27ba 100644
--- a/camel/providers/local/camel-local-provider.c
+++ b/camel/providers/local/camel-local-provider.c
@@ -87,17 +87,25 @@ void camel_provider_module_init(CamelSession * session)
{
mh_provider.object_types[CAMEL_PROVIDER_STORE] = camel_mh_store_get_type();
mh_provider.service_cache = g_hash_table_new(camel_url_hash, camel_url_equal);
+ mh_provider.url_hash = camel_url_hash;
+ mh_provider.url_equal = camel_url_equal;
camel_session_register_provider(session, &mh_provider);
mbox_provider.object_types[CAMEL_PROVIDER_STORE] = camel_mbox_store_get_type();
mbox_provider.service_cache = g_hash_table_new(camel_url_hash, camel_url_equal);
+ mbox_provider.url_hash = camel_url_hash;
+ mbox_provider.url_equal = camel_url_equal;
camel_session_register_provider(session, &mbox_provider);
maildir_provider.object_types[CAMEL_PROVIDER_STORE] = camel_maildir_store_get_type();
maildir_provider.service_cache = g_hash_table_new(camel_url_hash, camel_url_equal);
+ maildir_provider.url_hash = camel_url_hash;
+ maildir_provider.url_equal = camel_url_equal;
camel_session_register_provider(session, &maildir_provider);
spool_provider.object_types[CAMEL_PROVIDER_STORE] = camel_spool_store_get_type();
spool_provider.service_cache = g_hash_table_new(camel_url_hash, camel_url_equal);
+ spool_provider.url_hash = camel_url_hash;
+ spool_provider.url_equal = camel_url_equal;
camel_session_register_provider(session, &spool_provider);
}
diff --git a/camel/providers/nntp/camel-nntp-provider.c b/camel/providers/nntp/camel-nntp-provider.c
index cb08912b83..a8afe48c02 100644
--- a/camel/providers/nntp/camel-nntp-provider.c
+++ b/camel/providers/nntp/camel-nntp-provider.c
@@ -61,7 +61,9 @@ camel_provider_module_init (CamelSession *session)
camel_nntp_store_get_type();
news_provider.service_cache = g_hash_table_new (nntp_url_hash, nntp_url_equal);
-
+ news_provider.url_hash = nntp_url_hash;
+ news_provider.url_equal = nntp_url_equal;
+
camel_session_register_provider (session, &news_provider);
}
diff --git a/camel/providers/pop3/camel-pop3-provider.c b/camel/providers/pop3/camel-pop3-provider.c
index bc7fbf1c8f..d1351c2daf 100644
--- a/camel/providers/pop3/camel-pop3-provider.c
+++ b/camel/providers/pop3/camel-pop3-provider.c
@@ -103,7 +103,9 @@ camel_provider_module_init (CamelSession *session)
pop3_provider.object_types[CAMEL_PROVIDER_STORE] =
camel_pop3_store_get_type ();
pop3_provider.service_cache = g_hash_table_new (camel_url_hash, camel_url_equal);
-
+ pop3_provider.url_hash = camel_url_hash;
+ pop3_provider.url_equal = camel_url_equal;
+
#ifdef HAVE_KRB4
pop3_provider.authtypes = g_list_prepend (camel_remote_store_authtype_list (), &camel_pop3_kpop_authtype);
#endif
diff --git a/camel/providers/sendmail/camel-sendmail-provider.c b/camel/providers/sendmail/camel-sendmail-provider.c
index d61351867c..05b97bc495 100644
--- a/camel/providers/sendmail/camel-sendmail-provider.c
+++ b/camel/providers/sendmail/camel-sendmail-provider.c
@@ -53,8 +53,10 @@ camel_provider_module_init (CamelSession *session)
{
sendmail_provider.object_types[CAMEL_PROVIDER_TRANSPORT] =
camel_sendmail_transport_get_type();
-
+
sendmail_provider.service_cache = g_hash_table_new (camel_url_hash, camel_url_equal);
+ sendmail_provider.url_hash = camel_url_hash;
+ sendmail_provider.url_equal = camel_url_equal;
camel_session_register_provider (session, &sendmail_provider);
}
diff --git a/camel/providers/smtp/camel-smtp-provider.c b/camel/providers/smtp/camel-smtp-provider.c
index a52f3c3a14..88b995222b 100644
--- a/camel/providers/smtp/camel-smtp-provider.c
+++ b/camel/providers/smtp/camel-smtp-provider.c
@@ -57,7 +57,9 @@ camel_provider_module_init (CamelSession *session)
smtp_provider.authtypes = g_list_append(camel_sasl_authtype_list(TRUE), camel_sasl_authtype ("LOGIN"));
smtp_provider.authtypes = g_list_append(smtp_provider.authtypes, camel_sasl_authtype ("POPB4SMTP"));
smtp_provider.service_cache = g_hash_table_new (camel_url_hash, camel_url_equal);
-
+ smtp_provider.url_hash = camel_url_hash;
+ smtp_provider.url_equal = camel_url_equal;
+
camel_session_register_provider (session, &smtp_provider);
}