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

List:       kde-bugs-dist
Subject:    [Bug 84450] KGet got signal 11
From:       Modestas Vainius <geromanas () mailas ! com>
Date:       2004-08-20 1:56:36
Message-ID: 20040820015636.22306.qmail () ktown ! kde ! org
[Download RAW message or body]

------- You are receiving this mail because: -------
You are on the CC list for the bug, or are watching someone who is.
      
http://bugs.kde.org/show_bug.cgi?id=84450      




------- Additional Comments From geromanas mailas com  2004-08-20 03:56 -------
The problem here is that KMainWidget::updateStatusBar(), which updates a tooltip of \
the dock too, is called *before* KMainWidget::kdock gets initialized. Consider these \
backtraces:

==9591== Use of uninitialised value of size 4
==9591==    at 0x1C75A1B4: QGDict::look_ptr(void*, void*, int) (in \
/usr/lib/libqt-mt.so.3.3.3) ==9591==    by 0x1C5DE0E7: QTipManager::remove(QWidget*, \
QRect const&, bool) (in /usr/lib/libqt-mt.so.3.3.3) ==9591==    by 0x1C5DFC6C: \
QToolTip::remove(QWidget*) (in /usr/lib/libqt-mt.so.3.3.3) ==9591==    by 0x807806E: \
DockWidget::updateToolTip(QString const&) (docking.cpp:102) ==9591==    by 0x8074193: \
KMainWidget::updateStatusBar() (kmainwidget.cpp:2064) ==9591==    by 0x806EE03: \
KMainWidget::setupGUI() (kmainwidget.cpp:402) ==9591==    by 0x806C967: \
KMainWidget::KMainWidget(bool) (kmainwidget.cpp:153) ==9591==    by 0x80925D8: \
KGetApp::newInstance() (main.cpp:145) ==9591==    by 0x1C0863F1: \
KUniqueApplication::processDelayed() (in /usr/lib/libkdecore.so.4.2.0) ==9591==    by \
0x1C08689E: KUniqueApplication::qt_invoke(int, QUObject*) (in \
/usr/lib/libkdecore.so.4.2.0) ==9591==    by 0x1C4A550B: \
QObject::activate_signal(QConnectionList*, QUObject*) (in /usr/lib/libqt-mt.so.3.3.3) \
==9591==    by 0x1C7E3069: QSignal::signal(QVariant const&) (in \
/usr/lib/libqt-mt.so.3.3.3) ==9591==    by 0x1C4BF6CC: QSignal::activate() (in \
/usr/lib/libqt-mt.so.3.3.3) ==9591==    by 0x1C4C6EB2: \
QSingleShotTimer::event(QEvent*) (in /usr/lib/libqt-mt.so.3.3.3) ==9591==    by \
0x1C448BCE: QApplication::internalNotify(QObject*, QEvent*) (in \
/usr/lib/libqt-mt.so.3.3.3) ==9591==    by 0x1C4481CD: QApplication::notify(QObject*, \
QEvent*) (in /usr/lib/libqt-mt.so.3.3.3) ==9591==    by 0x1BFDFF12: \
KApplication::notify(QObject*, QEvent*) (in /usr/lib/libkdecore.so.4.2.0) ==9591==    \
by 0x1C438404: QEventLoop::activateTimers() (in /usr/lib/libqt-mt.so.3.3.3) ==9591==  \
by 0x1C3F1C4A: QEventLoop::processEvents(unsigned) (in /usr/lib/libqt-mt.so.3.3.3) \
==9591==    by 0x1C45AF27: QEventLoop::enterLoop() (in /usr/lib/libqt-mt.so.3.3.3) \
==9591==    by 0x1C45ADD7: QEventLoop::exec() (in /usr/lib/libqt-mt.so.3.3.3) \
==9591==    by 0x1C448E20: QApplication::exec() (in /usr/lib/libqt-mt.so.3.3.3) \
==9591==    by 0x80807F4: main (main.cpp:206)

==9591== Use of uninitialised value of size 4
==9591==    at 0x1C75A9AB: QGDict::unlink_ptr(void*, void*) (in \
/usr/lib/libqt-mt.so.3.3.3) ==9591==    by 0x1C75AD90: QGDict::take_ptr(void*) (in \
/usr/lib/libqt-mt.so.3.3.3) ==9591==    by 0x1C5DE24B: QTipManager::remove(QWidget*, \
QRect const&, bool) (in /usr/lib/libqt-mt.so.3.3.3) ==9591==    by 0x1C5DFC6C: \
QToolTip::remove(QWidget*) (in /usr/lib/libqt-mt.so.3.3.3) ==9591==    by 0x807806E: \
DockWidget::updateToolTip(QString const&) (docking.cpp:102) ==9591==    by 0x8074193: \
KMainWidget::updateStatusBar() (kmainwidget.cpp:2064) ==9591==    by 0x8071E38: \
KMainWidget::checkQueue() (kmainwidget.cpp:1305) ==9591==    by 0x806F903: \
KMainWidget::readTransfersEx(KURL const&) (kmainwidget.cpp:599) ==9591==    by \
0x806F8B7: KMainWidget::readTransfers(bool) (kmainwidget.cpp:575) ==9591==    by \
0x806CD35: KMainWidget::KMainWidget(bool) (kmainwidget.cpp:208) ==9591==    by \
0x80925D8: KGetApp::newInstance() (main.cpp:145) ==9591==    by 0x1C0863F1: \
KUniqueApplication::processDelayed() (in /usr/lib/libkdecore.so.4.2.0) ==9591==    by \
0x1C08689E: KUniqueApplication::qt_invoke(int, QUObject*) (in \
/usr/lib/libkdecore.so.4.2.0) ==9591==    by 0x1C4A550B: \
QObject::activate_signal(QConnectionList*, QUObject*) (in /usr/lib/libqt-mt.so.3.3.3) \
==9591==    by 0x1C7E3069: QSignal::signal(QVariant const&) (in \
/usr/lib/libqt-mt.so.3.3.3) ==9591==    by 0x1C4BF6CC: QSignal::activate() (in \
/usr/lib/libqt-mt.so.3.3.3) ==9591==    by 0x1C4C6EB2: \
QSingleShotTimer::event(QEvent*) (in /usr/lib/libqt-mt.so.3.3.3) ==9591==    by \
0x1C448BCE: QApplication::internalNotify(QObject*, QEvent*) (in \
/usr/lib/libqt-mt.so.3.3.3) ==9591==    by 0x1C4481CD: QApplication::notify(QObject*, \
QEvent*) (in /usr/lib/libqt-mt.so.3.3.3) ==9591==    by 0x1BFDFF12: \
KApplication::notify(QObject*, QEvent*) (in /usr/lib/libkdecore.so.4.2.0) ==9591==    \
by 0x1C438404: QEventLoop::activateTimers() (in /usr/lib/libqt-mt.so.3.3.3) ==9591==  \
by 0x1C3F1C4A: QEventLoop::processEvents(unsigned) (in /usr/lib/libqt-mt.so.3.3.3) \
==9591==    by 0x1C45AF27: QEventLoop::enterLoop() (in /usr/lib/libqt-mt.so.3.3.3) \
==9591==    by 0x1C45ADD7: QEventLoop::exec() (in /usr/lib/libqt-mt.so.3.3.3) \
==9591==    by 0x1C448E20: QApplication::exec() (in /usr/lib/libqt-mt.so.3.3.3) \
==9591==    by 0x80807F4: main (main.cpp:206)

Thus, two functions, namely KMainWidget::setupGUI() and \
KMainWidget::readTransfers(bool), try to access the dock, which hasn't been created \
yet. I've made a patch (see the attachment), which fixes this bug by adding a \
validility test of the kdock object into KMainWidget::updateStatusBar().


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

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