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

List:       kde-devel
Subject:    FIXED! Re: 1.1.2 bug: kwikdisk coredumps!
From:       Duncan Haldane <f.d.m.haldane () mciworld ! com>
Date:       1999-09-14 19:45:52
[Download RAW message or body]

OK I found and fixed your bug,
while testing for the 1.1.2 release.
duncan

details:



KDE include file ktmainwindow.h says ...
<snip>


    ~KTMainWindow();

    /** Deletes all KTMainWindows. This is a good thing to call before
      * an applications wants to exit via kapp->quit(). Rationale: The
      * destructors of main windows may want to delete other widgets
      * as well. Now, if an application calls kapp->quit() then Qt
      * will destroy all widgets in a somewhat random order which may
      * result in double-free'ed memory (=segfault). Since not every
      * program checks for QApplication::closingDown() before deleting
      * a widget, calling KTMainWindow::deleteAll() before is a good
      * and proper solution.
     */
  static void deleteAll();

<snip>
so, in kdf-0.5.1/kdf/kwickdisk.h
replace
   void quit() { kapp->quit(); };
by
   void quit() { KTMainWindow::deleteAll(); kapp->quit(); };

Fixes the segfault !
I patched it into my release-with-1.1.2 version of kdf


duncan

ps also add it in kdfwidget.cpp, kdfconfig.cpp
before the "kapp-quit();"

    KTMainWindow::deleteAll();
    kapp->quit();



and add 
 
#include <ktopwidget.h>

in kdfwidget.h, kdfconfig.h



----------------------------------
E-Mail: Duncan  Haldane <f.d.m.haldane@mciworld.com>
Date: 14-Sep-99
Time: 15:39:18

This message was sent by XFMail
----------------------------------

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

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