Changeset 3682

Show
Ignore:
Timestamp:
05/26/08 12:25:40
Author:
pvanhoof
Message:

2008-05-26 Philip Van Hoof <pvanhoof@gnome.org>

        • Bugfix when fetching parts and messages
Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • trunk/ChangeLog

    r3679 r3682  
     12008-05-26  Philip Van Hoof <pvanhoof@gnome.org> 
     2 
     3        * Bugfix when fetching parts and messages 
     4 
    152008-05-21  Philip Van Hoof <pvanhoof@gnome.org> 
    26 
  • trunk/libtinymail-camel/camel-lite/camel/providers/imap/camel-imap-folder.c

    r3679 r3682  
    45354535} 
    45364536 
    4537 static GStaticMutex gmsgstore_lock = G_STATIC_MUTEX_INIT; 
     4537static GStaticRecMutex gmsgstore_lock = G_STATIC_REC_MUTEX_INIT; 
    45384538 
    45394539static gboolean 
     
    45434543        gboolean retval = TRUE; 
    45444544 
    4545         if (g_static_mutex_trylock (&gmsgstore_lock)) 
     4545        if (g_static_rec_mutex_trylock (&gmsgstore_lock)) 
    45464546        { 
    45474547                imap_folder->gmsgstore_ticks--; 
     
    45584558                        retval = FALSE; 
    45594559                } 
    4560                 g_static_mutex_unlock (&gmsgstore_lock); 
     4560                g_static_rec_mutex_unlock (&gmsgstore_lock); 
    45614561        } else 
    45624562                retval = TRUE; 
     
    45734573 
    45744574 
    4575         g_static_mutex_lock (&gmsgstore_lock); /* A */ 
     4575        g_static_rec_mutex_lock (&gmsgstore_lock); /* A */ 
    45764576 
    45774577        if (imap_folder->gmsgstore) { 
     
    45914591                                                " and can't go online to fetch it: %s"), 
    45924592                                                camel_exception_get_description (&tex)); 
    4593                                 g_static_mutex_unlock (&gmsgstore_lock); 
     4593                                g_static_rec_mutex_unlock (&gmsgstore_lock); 
    45944594                                camel_exception_clear (&tex); 
    45954595                                return NULL; 
     
    46104610                        g_critical ("Severe interal error while trying to construct a new connection\n"); 
    46114611                        camel_object_unref (store); 
    4612                         g_static_mutex_unlock (&gmsgstore_lock); 
     4612                        g_static_rec_mutex_unlock (&gmsgstore_lock); 
    46134613                        return NULL; 
    46144614                } 
     
    46324632 
    46334633                        CAMEL_IMAP_FOLDER_REC_UNLOCK (imap_folder, cache_lock); 
    4634                         g_static_mutex_unlock (&gmsgstore_lock); 
     4634                        g_static_rec_mutex_unlock (&gmsgstore_lock); 
    46354635                        return NULL; 
    46364636                } 
     
    46664666        } 
    46674667 
    4668         g_static_mutex_unlock (&gmsgstore_lock); /* A */ 
     4668        g_static_rec_mutex_unlock (&gmsgstore_lock); /* A */ 
    46694669} 
    46704670 
     
    46734673stop_gmsgstore_from_idle (CamelImapFolder *imap_folder) 
    46744674{ 
    4675         g_static_mutex_lock (&gmsgstore_lock); /* A */ 
     4675        g_static_rec_mutex_lock (&gmsgstore_lock); /* A */ 
    46764676        if (imap_folder->gmsgstore) { 
    46774677                imap_folder->gmsgstore->clean_exit = FALSE; 
     
    46814681                        check_gmsgstore_die, imap_folder); 
    46824682        } 
    4683         g_static_mutex_unlock (&gmsgstore_lock); /* A */ 
     4683        g_static_rec_mutex_unlock (&gmsgstore_lock); /* A */ 
    46844684} 
    46854685 
     
    47544754                if (noop_response) 
    47554755                        camel_imap_response_free (store, noop_response); 
    4756                 else  
     4756                else { 
     4757                        stop_gmsgstore (imap_folder, ctchecker, FALSE); 
    47574758                        return NULL; 
    4758  
     4759                } 
     4760                 
    47594761                camel_operation_start (NULL, _("Retrieving converted message part")); 
    47604762 
     
    50125014                if (noop_response) 
    50135015                        camel_imap_response_free (store, noop_response); 
    5014                 else  
     5016                else { 
     5017                        stop_gmsgstore (imap_folder, ctchecker, FALSE); 
    50155018                        return NULL; 
     5019                } 
    50165020 
    50175021                camel_operation_start (NULL, _("Retrieving message part")); 
     
    54425446                        if (noop_response) 
    54435447                                camel_imap_response_free (store, noop_response); 
    5444                         else  
     5448                        else { 
     5449                                stop_gmsgstore (imap_folder, ctchecker, FALSE); 
    54455450                                return NULL; 
    5446  
     5451                        } 
    54475452 
    54485453                        camel_operation_start (NULL, _("Retrieving message bodystructure")); 
     
    55585563        if (noop_response) 
    55595564                camel_imap_response_free (store, noop_response); 
    5560         else  
     5565        else { 
     5566                stop_gmsgstore (imap_folder, ctchecker, FALSE); 
    55615567                return NULL; 
    5562  
     5568        } 
    55635569 
    55645570        camel_operation_start (NULL, _("Retrieving message"));