Changeset 2555

Show
Ignore:
Timestamp:
08/06/07 12:32:05
Author:
pvanhoof
Message:

* Fixed a few locking problems with POP

Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • trunk/ChangeLog

    r2554 r2555  
    33        * GDK lock awareness 
    44        * More conservatism about reconnecting 
     5        * Fixed a few locking problems with POP 
    56 
    672007-08-02  Philip Van Hoof  <pvanhoof@gnome.org> 
  • trunk/libtinymail-camel/camel-lite/camel/camel-object.c

    r2218 r2555  
    14121412        g_return_if_fail (name); 
    14131413 
    1414         g_static_rec_mutex_lock (&hooks_lock); 
     1414        /* g_static_rec_mutex_lock (&hooks_lock); */ 
    14151415 
    14161416        hook = co_find_pair(obj->klass, name); 
     
    14191419 
    14201420        if (obj->hooks == NULL) { 
    1421                 g_static_rec_mutex_unlock (&hooks_lock); 
     1421                /* g_static_rec_mutex_unlock (&hooks_lock); */ 
    14221422                return; 
    14231423        } 
     
    14381438                  name, obj->klass->name); 
    14391439 
    1440         g_static_rec_mutex_unlock (&hooks_lock); 
     1440        /* g_static_rec_mutex_unlock (&hooks_lock); */ 
    14411441 
    14421442        return; 
     
    14451445        /* try prep function, if false, then quit */ 
    14461446        if (hook->func.prep != NULL && !hook->func.prep(obj, event_data)) { 
    1447                 g_static_rec_mutex_unlock (&hooks_lock); 
     1447                /* g_static_rec_mutex_unlock (&hooks_lock); */ 
    14481448                return; 
    14491449        } 
     
    14511451        /* also, no hooks, dont bother going further */ 
    14521452        if (obj->hooks == NULL) { 
    1453                 g_static_rec_mutex_unlock (&hooks_lock); 
     1453                /* g_static_rec_mutex_unlock (&hooks_lock); */ 
    14541454                return; 
    14551455        } 
     
    15011501        camel_object_unget_hooks(obj); 
    15021502        camel_object_unref(obj); 
    1503         g_static_rec_mutex_unlock (&hooks_lock); 
     1503        /* g_static_rec_mutex_unlock (&hooks_lock); */ 
    15041504} 
    15051505 
  • trunk/libtinymail-camel/tny-camel-folder.c

    r2553 r2555  
    399399                tny_folder_change_set_new_all_count (change, priv->cached_length); 
    400400        priv->dont_fkill = TRUE; 
    401         notify_folder_observers_about (TNY_FOLDER (self), change); 
    402         g_object_unref (G_OBJECT (change)); 
     401        notify_folder_observers_about_in_idle (TNY_FOLDER (self), change); 
     402        g_object_unref (change); 
    403403        priv->dont_fkill = old; 
    404404  } 
  • trunk/tests/c-demo/tny-demoui-summary-view.c

    r2536 r2555  
    981981static void 
    982982on_header_view_tree_row_activated (GtkTreeView *treeview, GtkTreePath *path, 
    983                         GtkTreeViewColumn *col,  gpointer userdata) 
    984 
     983                        GtkTreeViewColumn *col,  gpointer user_data) 
     984
     985        TnySummaryView *self = user_data; 
     986        TnyDemouiSummaryViewPriv *priv = TNY_DEMOUI_SUMMARY_VIEW_GET_PRIVATE (self); 
    985987        GtkTreeModel *model; 
    986988        GtkTreeIter iter; 
     
    10241026                        if (G_LIKELY (folder)) 
    10251027                        { 
    1026                                 msg = tny_folder_get_msg (folder, header, NULL); 
    1027                                 if (G_LIKELY (msg)) 
    1028                                 { 
    1029                                         msgwin = tny_gtk_msg_window_new ( 
    1030                                                 tny_platform_factory_new_msg_view (platfact)); 
    1031  
    1032                                         tny_msg_view_set_msg (TNY_MSG_VIEW (msgwin), msg); 
    1033                                         g_object_unref (G_OBJECT (msg)); 
    1034                                  
    1035                                         gtk_widget_show (GTK_WIDGET (msgwin)); 
    1036                                 } else { 
    1037                                         msgwin = tny_gtk_msg_window_new ( 
    1038                                                 tny_platform_factory_new_msg_view (platfact)); 
    1039  
    1040                                         tny_msg_view_set_unavailable (TNY_MSG_VIEW (msgwin)); 
    1041                          
    1042                                         gtk_widget_show (GTK_WIDGET (msgwin)); 
    1043                                 } 
     1028 
     1029                                OnGetMsgInfo *info = g_slice_new (OnGetMsgInfo); 
     1030                                info->self = TNY_DEMOUI_SUMMARY_VIEW (g_object_ref (self)); 
     1031                                info->header = TNY_HEADER (g_object_ref (header)); 
     1032                                gtk_widget_show (GTK_WIDGET (priv->progress)); 
     1033                                tny_folder_get_msg_async (folder, header,  
     1034                                        on_get_msg, status_update_on_get_msg, info); 
    10441035                                g_object_unref (G_OBJECT (folder)); 
    10451036                        } 
     
    18791870        gtk_tree_selection_set_mode (select, GTK_SELECTION_SINGLE); 
    18801871        g_signal_connect(G_OBJECT (priv->header_view), "row-activated",  
    1881                 G_CALLBACK (on_header_view_tree_row_activated), priv); 
     1872                G_CALLBACK (on_header_view_tree_row_activated), self); 
    18821873 
    18831874        g_signal_connect(G_OBJECT (priv->header_view), "key-press-event",