------- You are receiving this mail because: -------
You are the assignee for the bug, or are watching the assignee.
         
http://bugs.kde.org/show_bug.cgi?id=129189         
ogoffart kde org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|NEW                         |RESOLVED
         Resolution|                            |FIXED



------- Additional Comments From ogoffart kde org  2006-06-17 00:37 -------
SVN commit 552190 by ogoffart:

Attempt to fix Bug 129189: Kopete chrashed while I was away from the computer
BUG: 129189
I've added a QGuardedPtr around the pointer which seems wrong in the backtrace, 
 but i have been unable to reproduce the bug, so i don't know if it was the 
cause.

 M  +5 -7      kopetecontactlistview.cpp  


--- branches/kopete/0.12/kopete/kopete/contactlist/kopetecontactlistview.cpp 
#552189:552190
 @ -246,7 +246,6  @
         : ContactListViewStrategy( view )
         , m_onlineItem( new KopeteStatusGroupViewItem( 
Kopete::OnlineStatus::Online, listView() ) )
         , m_offlineItem( new KopeteStatusGroupViewItem( 
Kopete::OnlineStatus::Offline, listView() ) )
-        , m_temporaryItem( 0 )
        {
                m_onlineItem->setOpen( true );
                m_offlineItem->setOpen( true );
 @ -259,7 +258,7  @
                removeMetaContactFromGroupInner( mc, m_onlineItem );
                removeMetaContactFromGroupInner( mc, m_offlineItem );
                if ( m_temporaryItem )
-                       removeMetaContactFromGroupInner( mc, m_temporaryItem );
+                       removeMetaContactFromGroupInner( mc, 
(KopeteGroupViewItem*)m_temporaryItem );
        }
 
        void addMetaContact( Kopete::MetaContact *mc )
 @ -311,20 +310,19  @
                                m_temporaryItem->setOpen( true );
                        }
 
-                       addMetaContactToGroupInner( mc, m_temporaryItem );
+                       addMetaContactToGroupInner( mc, 
(KopeteGroupViewItem*)m_temporaryItem );
                        return;
                }
 
                // if it's not temporary, it should not be in the temporary 
group
                if ( m_temporaryItem )
                {
-                       removeMetaContactFromGroupInner( mc, m_temporaryItem );
+                       removeMetaContactFromGroupInner( mc, 
(KopeteGroupViewItem*)m_temporaryItem );
 
                        // remove temporary item if empty
                        if ( m_temporaryItem && m_temporaryItem->childCount() 
== 0 )
                        {
-                               delete m_temporaryItem;
-                               m_temporaryItem = 0;
+                               delete (KopeteGroupViewItem*)m_temporaryItem;
                        }
                }
 
 @ -356,7 +354,7  @
        }
 
        KopeteStatusGroupViewItem *m_onlineItem, *m_offlineItem;
-       KopeteGroupViewItem *m_temporaryItem;
+       QGuardedPtr<KopeteGroupViewItem> m_temporaryItem;
 };
 
 void KopeteContactListViewPrivate::updateViewStrategy( KListView *view )
_______________________________________________
kopete-devel mailing list
[email protected]
https://mail.kde.org/mailman/listinfo/kopete-devel

Reply via email to