From 2bdcfe5c47e9add476eab5d848b30d9d1715c153 Mon Sep 17 00:00:00 2001 From: Peter Williams Date: Wed, 30 Aug 2000 17:09:42 +0000 Subject: Make CamelServices connect only when told to (old behavior). Make CamelRemoteStore do its stuff in service::connect, not ::post_connect. svn path=/trunk/; revision=5116 --- camel/camel-session.c | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) (limited to 'camel/camel-session.c') diff --git a/camel/camel-session.c b/camel/camel-session.c index 3454517216..9992a48aaf 100644 --- a/camel/camel-session.c +++ b/camel/camel-session.c @@ -253,6 +253,25 @@ camel_session_get_service (CamelSession *session, const char *url_string, return service; } +CamelService * +camel_session_get_service_connected (CamelSession *session, const char *url_string, + CamelProviderType type, CamelException *ex) +{ + CamelService *svc; + + svc = camel_session_get_service (session, url_string, type, ex); + if (svc == NULL) + return NULL; + + if (svc->connected == FALSE) { + if (camel_service_connect (svc, ex) == FALSE) { + camel_object_unref (CAMEL_OBJECT (svc)); + return NULL; + } + } + + return svc; +} /** * camel_session_query_authenticator: query the session authenticator -- cgit v1.2.3