Added some NULL protection fixes.
authorJeffrey Stedfast <fejj@ximian.com>
Fri, 24 May 2002 05:15:31 +0000 (05:15 +0000)
committerJeffrey Stedfast <fejj@src.gnome.org>
Fri, 24 May 2002 05:15:31 +0000 (05:15 +0000)
2002-05-24  Jeffrey Stedfast  <fejj@ximian.com>

* providers/imap/camel-imap-store.c (connect_to_server): Added
some NULL protection fixes.

camel/ChangeLog
camel/providers/imap/camel-imap-store.c

index b724629..148c09e 100644 (file)
@@ -1,3 +1,8 @@
+2002-05-24  Jeffrey Stedfast  <fejj@ximian.com>
+
+       * providers/imap/camel-imap-store.c (connect_to_server): Added
+       some NULL protection fixes.
+
 2002-05-22  Jeffrey Stedfast  <fejj@ximian.com>
 
        * camel-remote-store.c: Removed from the build. Glory glory
index d1d42b6..312f6c2 100644 (file)
@@ -557,10 +557,16 @@ connect_to_server (CamelService *service, int ssl_mode, int try_starttls, CamelE
        
        /* Read the greeting, if any. FIXME: deal with PREAUTH */
        if (camel_imap_store_recv_line (store, &buf, ex) < 0) {
-               camel_object_unref (CAMEL_OBJECT (store->istream));
-               camel_object_unref (CAMEL_OBJECT (store->ostream));
-               store->istream = NULL;
-               store->ostream = NULL;
+               if (store->istream) {
+                       camel_object_unref (CAMEL_OBJECT (store->istream));
+                       store->istream = NULL;
+               }
+               
+               if (store->ostream) {
+                       camel_object_unref (CAMEL_OBJECT (store->ostream));
+                       store->ostream = NULL;
+               }
+               
                store->connected = FALSE;
                return FALSE;
        }
@@ -568,10 +574,17 @@ connect_to_server (CamelService *service, int ssl_mode, int try_starttls, CamelE
        
        /* get the imap server capabilities */
        if (!imap_get_capability (service, ex)) {
-               camel_object_unref (CAMEL_OBJECT (store->istream));
-               camel_object_unref (CAMEL_OBJECT (store->ostream));
-               store->istream = NULL;
-               store->ostream = NULL;
+               if (store->istream) {
+                       camel_object_unref (CAMEL_OBJECT (store->istream));
+                       store->istream = NULL;
+               }
+               
+               if (store->ostream) {
+                       camel_object_unref (CAMEL_OBJECT (store->ostream));
+                       store->ostream = NULL;
+               }
+               
+               store->connected = FALSE;
                return FALSE;
        }