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

List:       kde-commits
Subject:    branches/KDE/3.5/kdewebdev/quanta
From:       Andras Mantia <amantia () kde ! org>
Date:       2007-03-31 8:09:26
Message-ID: 1175328566.961064.28635.nullmailer () svn ! kde ! org
[Download RAW message or body]

SVN commit 648392 by amantia:

fix crash after using Close Other Tabs for a tab holding a plugin

 M  +1 -0      ChangeLog  
 M  +6 -0      parsers/node.cpp  
 M  +4 -0      parsers/parser.cpp  
 M  +2 -0      src/viewmanager.cpp  


--- branches/KDE/3.5/kdewebdev/quanta/ChangeLog #648391:648392
@@ -4,6 +4,7 @@
  - bugfixes:
       - fix directory creation when certain ftp servers are used [#141232]
       - fix crash when dropping a document template on an Untitled empty document [#141908]
+      - fix crash after using Close Other Tabs for a tab holding a plugin
  - improvements:
       - autocompletion for member variables. Patch by Andrew Lowe
         <andrew.lowe@manildra.com.au>.
--- branches/KDE/3.5/kdewebdev/quanta/parsers/node.cpp #648391:648392
@@ -86,6 +86,12 @@
     child = 0L;
     delete next;
     next = 0L;
+  } else
+  {
+    if (next && next->prev == this)
+      next->prev = 0L;
+    if (child && child->parent == this)
+      child->parent = 0L;
   }
 
   delete tag;
--- branches/KDE/3.5/kdewebdev/quanta/parsers/parser.cpp #648391:648392
@@ -827,6 +827,10 @@
     {
       nextNode->prev = prev;
     }
+    if (nextNode && nextNode->parent == node)
+    {
+      nextNode->parent = parent;
+    }
     if (next)
       next->prev = prev;
     if (prev && prev->next == node)
--- branches/KDE/3.5/kdewebdev/quanta/src/viewmanager.cpp #648391:648392
@@ -254,6 +254,8 @@
      currentView = m_contextView;
    else
      currentView = quantaApp->activeWindow();
+   if (dynamic_cast<QuantaView*>(currentView) && !static_cast<QuantaView*>(currentView)->document())
+     ToolbarTabWidget::ref()->reparent(0, 0, QPoint(), false);
   KMdiIterator<KMdiChildView*> *it = quantaApp->createIterator();
   //save the children first to a list, as removing invalidates our iterator
   QValueList<KMdiChildView *> children;
[prev in list] [next in list] [prev in thread] [next in thread] 

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