View Issue Details
ID | Project | Category | View Status | Date Submitted | Last Update |
---|---|---|---|---|---|
0003961 | Scribus | General | public | 2006-07-01 22:48 | 2006-07-24 21:14 |
Reporter | jo-hannes | Assigned To | avox | ||
Priority | normal | Severity | crash | Reproducibility | always |
Status | closed | Resolution | fixed | ||
Product Version | 1.3.4cvs | ||||
Fixed in Version | 1.3.4cvs | ||||
Summary | 0003961: crash when opening preferences | ||||
Description | after doing as described in 3924 Program received signal SIGSEGV, Segmentation fault. [Switching to Thread -1224177984 (LWP 5048)] 0x08475359 in QMapPrivate<unsigned int, double>::end (this=0x0) at qmap.h:380 380 ConstIterator end() const { return ConstIterator( header ); } (gdb) bt #0 0x08475359 in QMapPrivate<unsigned int, double>::end (this=0x0) at qmap.h:380 0000001 0x0847538f in QMap<unsigned int, double>::end (this=0x8923864) at qmap.h:663 0000002 0x084753b4 in QMap<unsigned int, double>::contains (this=0x8923864, k=@0xbfcb1434) at qmap.h:703 0000003 0x084700f3 in Foi::canRender (this=0x8923838, ch=@0xbfcb1792) at scfonts.cpp:166 0000004 0x08239099 in DocumentChecker::checkDocument (currDoc=0x8cc0cf8) at documentchecker.cpp:284 0000005 0x0861350d in ScribusMainWindow::scanDocument (this=0x877c230) at scribus.cpp:8450 0000006 0x086511cf in ScribusMainWindow::newActWin (this=0x877c230, w=0x8d21728) at scribus.cpp:2106 0000007 0x08655697 in ScribusMainWindow::closeEvent (this=0x877c230, ce=0xbfcb1bf8) at scribus.cpp:1695 0000008 0xb7867b0c in QWidget::event () from /usr/lib/libqt-mt.so.3 0000009 0xb7939762 in QMainWindow::event () from /usr/lib/libqt-mt.so.3 0000010 0xb77c2e56 in QApplication::internalNotify () from /usr/lib/libqt-mt.so.3 0000011 0xb77c3bd6 in QApplication::notify () from /usr/lib/libqt-mt.so.3 0000012 0x0833dcb5 in QApplication::sendEvent (receiver=0x877c230, event=0xbfcb1bf8) at qapplication.h:520 0000013 0xb7866aa1 in QWidget::close () from /usr/lib/libqt-mt.so.3 ---Type <return> to continue, or q <return> to quit--- 0000014 0x081edec6 in QWidget::close (this=0x877c230) at qwidget.h:848 0000015 0x08611be0 in ScribusMainWindow::slotFileQuit (this=0x877c230) at scribus.cpp:4479 0000016 0x08658406 in ScribusMainWindow::qt_invoke (this=0x877c230, _id=121, _o=0xbfcb1d9c) at scribus.moc:973 0000017 0xb782ceb9 in QObject::activate_signal () from /usr/lib/libqt-mt.so.3 0000018 0xb782d954 in QObject::activate_signal () from /usr/lib/libqt-mt.so.3 0000019 0xb7be7886 in QAction::activated () from /usr/lib/libqt-mt.so.3 0000020 0xb7998307 in QAction::internalActivation () from /usr/lib/libqt-mt.so.3 0000021 0xb7be7a22 in QAction::qt_invoke () from /usr/lib/libqt-mt.so.3 0000022 0x084a9c53 in ScrAction::qt_invoke (this=0x8ad35c8, _id=8, _o=0xbfcb1eb8) at scraction.moc:229 0000023 0xb782ceb9 in QObject::activate_signal () from /usr/lib/libqt-mt.so.3 0000024 0xb7bc029a in QSignal::signal () from /usr/lib/libqt-mt.so.3 0000025 0xb784a630 in QSignal::activate () from /usr/lib/libqt-mt.so.3 0000026 0xb7951fb1 in QPopupMenu::mouseReleaseEvent () from /usr/lib/libqt-mt.so.3 0000027 0xb786768d in QWidget::event () from /usr/lib/libqt-mt.so.3 0000028 0xb77c2e56 in QApplication::internalNotify () from /usr/lib/libqt-mt.so.3 0000029 0xb77c33e0 in QApplication::notify () from /usr/lib/libqt-mt.so.3 0000030 0xb77541c5 in QApplication::sendSpontaneousEvent () from /usr/lib/libqt-mt.so.3 0000031 0xb774f5c0 in QETWidget::translateMouseEvent () from /usr/lib/libqt-mt.so.3 0000032 0xb774dd59 in QApplication::x11ProcessEvent () from /usr/lib/libqt-mt.so.3 ---Type <return> to continue, or q <return> to quit--- 0000033 0xb77674db in QEventLoop::processEvents () from /usr/lib/libqt-mt.so.3 0000034 0xb77db947 in QEventLoop::enterLoop () from /usr/lib/libqt-mt.so.3 0000035 0xb77db86a in QEventLoop::exec () from /usr/lib/libqt-mt.so.3 0000036 0xb77c1965 in QApplication::exec () from /usr/lib/libqt-mt.so.3 0000037 0x08660e7e in mainApp (argc=1, argv=0xbfcb2a34) at main_nix.cpp:76 0000038 0x08660ec8 in main (argc=1, argv=0xbfcb2a34) at main_nix.cpp:52 | ||||
Tags | No tags attached. | ||||
Patch | |||||
child of | 0003964 | closed | 1.3.4 Release Metabug |
|
and a second backtrace: Program received signal SIGSEGV, Segmentation fault. [Switching to Thread -1224407360 (LWP 4940)] 0x08475359 in QMapPrivate<unsigned int, double>::end (this=0x0) at qmap.h:380 380 ConstIterator end() const { return ConstIterator( header ); } (gdb) bt #0 0x08475359 in QMapPrivate<unsigned int, double>::end (this=0x0) at qmap.h:380 0000001 0x0847538f in QMap<unsigned int, double>::end (this=0x8938e0c) at qmap.h:663 0000002 0x084753b4 in QMap<unsigned int, double>::contains (this=0x8938e0c, k=@0xbfb77ac4) at qmap.h:703 0000003 0x084700f3 in Foi::canRender (this=0x8938de0, ch=@0xbfb77b3e) at scfonts.cpp:166 0000004 0x0847a72a in Cwidth (scFace=0x8938de0, ch=@0xbfb78160, Size=120, ch2=@0xbfb7815c) at scfontmetrics.cpp:502 0000005 0x0838c97f in PageItem_TextFrame::DrawObj_Item (this=0x8e319b8, p=0x8d161f0, e={x1 = 0, y1 = 10, x2 = 328, y2 = 386}, sc=1) at pageitem_textframe.cpp:1896 0000006 0x083618fa in PageItem::DrawObj (this=0x8e319b8, p=0x8d161f0, e= {x1 = 0, y1 = 10, x2 = 328, y2 = 386}) at pageitem.cpp:748 0000007 0x084ec31f in ScribusView::DrawPageItems (this=0x8d22478, painter=0x8d161f0, clip={x1 = 0, y1 = 10, x2 = 328, y2 = 386}) at scribusview.cpp:831 0000008 0x084f728e in ScribusView::drawContents (this=0x8d22478, psx=0xbfb78c8c, clipx=0, clipy=10, clipw=329, cliph=377) at scribusview.cpp:400 0000009 0xb792a7c2 in QScrollView::drawContentsOffset () from /usr/lib/libqt-mt.so.3 0000010 0xb79291ce in QScrollView::viewportPaintEvent () ---Type <return> to continue, or q <return> to quit--- from /usr/lib/libqt-mt.so.3 0000011 0x084e178f in ScribusView::viewportPaintEvent (this=0x8d22478, p=0xbfb79230) at scribusview.cpp:280 0000012 0xb792bfce in QScrollView::eventFilter () from /usr/lib/libqt-mt.so.3 0000013 0xb77f2002 in QObject::activate_filters () from /usr/lib/libqt-mt.so.3 0000014 0xb77f2080 in QObject::event () from /usr/lib/libqt-mt.so.3 0000015 0xb782f5aa in QWidget::event () from /usr/lib/libqt-mt.so.3 0000016 0xb778ae56 in QApplication::internalNotify () from /usr/lib/libqt-mt.so.3 0000017 0xb778bbd6 in QApplication::notify () from /usr/lib/libqt-mt.so.3 0000018 0xb771c1c5 in QApplication::sendSpontaneousEvent () from /usr/lib/libqt-mt.so.3 0000019 0xb7710757 in QETWidget::translatePaintEvent () from /usr/lib/libqt-mt.so.3 0000020 0xb7715de3 in QApplication::x11ProcessEvent () from /usr/lib/libqt-mt.so.3 0000021 0xb772f4db in QEventLoop::processEvents () from /usr/lib/libqt-mt.so.3 0000022 0xb77a3947 in QEventLoop::enterLoop () from /usr/lib/libqt-mt.so.3 0000023 0xb7789991 in QApplication::enter_loop () from /usr/lib/libqt-mt.so.3 0000024 0xb79a842c in QDialog::exec () from /usr/lib/libqt-mt.so.3 0000025 0x086578ed in ScribusMainWindow::slotPrefsOrg (this=0x877c230) at scribus.cpp:7236 0000026 0x08658dc0 in ScribusMainWindow::qt_invoke (this=0x877c230, _id=198, _o=0xbfb7986c) at scribus.moc:1050 0000027 0xb77f4eb9 in QObject::activate_signal () from /usr/lib/libqt-mt.so.3 0000028 0xb77f5954 in QObject::activate_signal () from /usr/lib/libqt-mt.so.3 ---Type <return> to continue, or q <return> to quit--- 0000029 0xb7baf886 in QAction::activated () from /usr/lib/libqt-mt.so.3 0000030 0xb7960307 in QAction::internalActivation () from /usr/lib/libqt-mt.so.3 0000031 0xb7bafa22 in QAction::qt_invoke () from /usr/lib/libqt-mt.so.3 0000032 0x084a9c53 in ScrAction::qt_invoke (this=0x8943600, _id=8, _o=0xbfb79988) at scraction.moc:229 0000033 0xb77f4eb9 in QObject::activate_signal () from /usr/lib/libqt-mt.so.3 0000034 0xb7b8829a in QSignal::signal () from /usr/lib/libqt-mt.so.3 0000035 0xb7812630 in QSignal::activate () from /usr/lib/libqt-mt.so.3 0000036 0xb7919fb1 in QPopupMenu::mouseReleaseEvent () from /usr/lib/libqt-mt.so.3 0000037 0xb782f68d in QWidget::event () from /usr/lib/libqt-mt.so.3 0000038 0xb778ae56 in QApplication::internalNotify () from /usr/lib/libqt-mt.so.3 0000039 0xb778b3e0 in QApplication::notify () from /usr/lib/libqt-mt.so.3 0000040 0xb771c1c5 in QApplication::sendSpontaneousEvent () from /usr/lib/libqt-mt.so.3 0000041 0xb77175c0 in QETWidget::translateMouseEvent () from /usr/lib/libqt-mt.so.3 0000042 0xb7715d59 in QApplication::x11ProcessEvent () from /usr/lib/libqt-mt.so.3 0000043 0xb772f4db in QEventLoop::processEvents () from /usr/lib/libqt-mt.so.3 0000044 0xb77a3947 in QEventLoop::enterLoop () from /usr/lib/libqt-mt.so.3 0000045 0xb77a386a in QEventLoop::exec () from /usr/lib/libqt-mt.so.3 0000046 0xb7789965 in QApplication::exec () from /usr/lib/libqt-mt.so.3 0000047 0x08660e7e in mainApp (argc=1, argv=0xbfb7a504) at main_nix.cpp:76 0000048 0x08660ec8 in main (argc=1, argv=0xbfb7a504) at main_nix.cpp:52 |
|
This is confusing. How does an access to a non-null QMap end up calling QMapPrivate::end on (*0) ? line 663 is: const_iterator end() const { return ((const Priv*)sh)->end(); }^M ie "call end() on the private implementation class pointed to by `sh'". The private pointer is _only_ ever assigned a new QMapPrivate, or copied and incref'd in the copy ctor. Given that, the only ways I can see for this crash to happen are: - Accessing pointer to a delete'd or never initialized QMap - Heap corruption - Qt compiled with -fno-exceptions and an out-of-memory causing `new' to return 0 when allocating the QMapPrivate (somewhat unlikely given how small QMapPrivate is). |
|
Reminder sent to: subik Probably related to the prefs cleanup. |
|
Program received signal SIGSEGV, Segmentation fault. [Switching to Thread -1224337728 (LWP 29924)] 0x084742c1 in QMapPrivate<unsigned int, double>::end (this=0x0) at qmap.h:380 380 ConstIterator end() const { return ConstIterator( header ); } (gdb) bt #0 0x084742c1 in QMapPrivate<unsigned int, double>::end (this=Cannot access memory at address 0xbf8737e4 ) at qmap.h:380 Cannot access memory at address 0xbf8737dc (gdb) |
|
cannot replicate after July-10 commits... |
|
please, test it... |
Date Modified | Username | Field | Change |
---|---|---|---|
2006-07-01 22:48 | jo-hannes | New Issue | |
2006-07-01 22:49 | jo-hannes | Note Added: 0011741 | |
2006-07-02 20:23 |
|
Note Added: 0011763 | |
2006-07-02 20:29 |
|
Note Added: 0011764 | |
2006-07-02 21:31 | avox | Status | new => assigned |
2006-07-02 21:31 | avox | Assigned To | => avox |
2006-07-02 21:35 | avox | Relationship added | child of 0003964 |
2006-07-03 18:58 | mhanski | Note Added: 0011778 | |
2006-07-12 13:34 | subik | Note Added: 0011857 | |
2006-07-13 08:24 | subik | Note Added: 0011867 | |
2006-07-13 08:24 | subik | Status | assigned => feedback |
2006-07-23 12:25 | avox | Status | feedback => resolved |
2006-07-23 12:25 | avox | Fixed in Version | => 1.3.4cvs |
2006-07-23 12:25 | avox | Resolution | open => fixed |
2006-07-24 21:14 | cbradney | Status | resolved => closed |