[prev in list] [next in list] [prev in thread] [next in thread] 

List:       kde-commits
Subject:    branches/work/kdelibs4_snapshot/kdecore
From:       David Faure <faure () kde ! org>
Date:       2006-05-12 13:28:58
Message-ID: 1147440538.347370.14350.nullmailer () svn ! kde ! org
[Download RAW message or body]

SVN commit 540055 by dfaure:

Less crashes


 M  +4 -0      kcheckaccelerators.cpp  
 M  +3 -5      ksycoca.cpp  
 M  +1 -0      ksycocafactory.cpp  


--- branches/work/kdelibs4_snapshot/kdecore/kcheckaccelerators.cpp #540054:540055
@@ -107,6 +107,10 @@
         break;
     case QEvent::ChildAdded:
     case QEvent::ChildRemoved:
+        // Only care about widgets; this also avoids starting the timer in other threads
+        if ( !static_cast<QChildEvent *>(e)->child()->isWidgetType() )
+            break;
+        // fall-through
     case QEvent::Resize:
     case QEvent::LayoutRequest:
     case QEvent::WindowActivate:
--- branches/work/kdelibs4_snapshot/kdecore/ksycoca.cpp #540054:540055
@@ -40,7 +40,7 @@
 #endif
 
 #ifdef Q_OS_SOLARIS
-extern "C" extern int madvise(caddr_t, size_t, int); 
+extern "C" extern int madvise(caddr_t, size_t, int);
 #endif
 
 #ifndef MAP_FAILED
@@ -253,10 +253,8 @@
    d->database = 0;
    // It is very important to delete all factories here
    // since they cache information about the database file
-#if 0
-   while( !m_lstFactories->isEmpty() )
-       delete m_lstFactories->takeFirst();
-#endif
+   if ( m_lstFactories )
+       qDeleteAll( *m_lstFactories );
    delete m_lstFactories;
    m_lstFactories = 0L;
 }
--- branches/work/kdelibs4_snapshot/kdecore/ksycocafactory.cpp #540054:540055
@@ -29,6 +29,7 @@
 #include <qhash.h>
 
 KSycocaFactory::KSycocaFactory(KSycocaFactoryId factory_id)
+ : m_resourceList(0), m_entryDict(0), m_sycocaDict(0)
 {
   if (!KSycoca::self()->isBuilding() && (m_str = KSycoca::self()->findFactory( factory_id )))
   {
[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic