View Issue Details

IDProjectCategoryView StatusLast Update
0013687ScribusFontspublic2016-02-13 19:51
Reporterale Assigned Tofschmid  
PrioritynormalSeveritycrashReproducibilityalways
Status closedResolutionfixed 
Product Version1.5.1svn 
Target Version1.5.1Fixed in Version1.5.1svn 
Summary0013687: crash when trying to remove a font path
Description- select a path
- click on remove
- crash

if i first remove the path from the filesystem and then from the preferences scribus does not crash (and the path gets removed)
Additional InformationProgram received signal SIGSEGV, Segmentation fault.
0x0000000000886061 in ScFace::isNone (this=0x3041f40) at /home/ale/docs/src/scribus/scribus/fonts/scface.h:209
209 bool isNone() const { return m_m->status == NULLFACE; }
(gdb) bt
#0 0x0000000000886061 in ScFace::isNone (this=0x3041f40) at /home/ale/docs/src/scribus/scribus/fonts/scface.h:209
0000001 0x00000000010d8108 in Prefs_Fonts::DelPath (this=0x30226f0) at /home/ale/docs/src/scribus/scribus/ui/prefs_fonts.cpp:378
0000002 0x000000000081d9a3 in Prefs_Fonts::qt_static_metacall (_o=0x30226f0, _c=QMetaObject::InvokeMetaMethod, _id=7, _a=0x7fffffffa300)
    at /home/ale/docs/src/scribus/build/scribus/ui/moc_prefs_fonts.cpp:102
0000003 0x00007ffff44156ca in QMetaObject::activate(QObject*, int, int, void**) () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
0000004 0x00007ffff55f3802 in QAbstractButton::clicked(bool) () from /usr/lib/x86_64-linux-gnu/libQt5Widgets.so.5
0000005 0x00007ffff5356174 in ?? () from /usr/lib/x86_64-linux-gnu/libQt5Widgets.so.5
0000006 0x00007ffff5357789 in ?? () from /usr/lib/x86_64-linux-gnu/libQt5Widgets.so.5
0000007 0x00007ffff5357904 in QAbstractButton::mouseReleaseEvent(QMouseEvent*) () from /usr/lib/x86_64-linux-gnu/libQt5Widgets.so.5
0000008 0x00007ffff529bff8 in QWidget::event(QEvent*) () from /usr/lib/x86_64-linux-gnu/libQt5Widgets.so.5
0000009 0x00007ffff5258ffc in QApplicationPrivate::notify_helper(QObject*, QEvent*) () from /usr/lib/x86_64-linux-gnu/libQt5Widgets.so.5
0000010 0x00007ffff525ebc9 in QApplication::notify(QObject*, QEvent*) () from /usr/lib/x86_64-linux-gnu/libQt5Widgets.so.5
0000011 0x00007ffff43e6b6b in QCoreApplication::notifyInternal(QObject*, QEvent*) () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
0000012 0x00007ffff525dad2 in QApplicationPrivate::sendMouseEvent(QWidget*, QMouseEvent*, QWidget*, QWidget*, QWidget**, QPointer<QWidget>&, bool) () from /usr/lib/x86_64-linux-gnu/libQt5Widgets.so.5
0000013 0x00007ffff52b65fb in ?? () from /usr/lib/x86_64-linux-gnu/libQt5Widgets.so.5
0000014 0x00007ffff52b8bbb in ?? () from /usr/lib/x86_64-linux-gnu/libQt5Widgets.so.5
0000015 0x00007ffff5258ffc in QApplicationPrivate::notify_helper(QObject*, QEvent*) () from /usr/lib/x86_64-linux-gnu/libQt5Widgets.so.5
0000016 0x00007ffff525e4c6 in QApplication::notify(QObject*, QEvent*) () from /usr/lib/x86_64-linux-gnu/libQt5Widgets.so.5
0000017 0x00007ffff43e6b6b in QCoreApplication::notifyInternal(QObject*, QEvent*) () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
0000018 0x00007ffff4ca8201 in QGuiApplicationPrivate::processMouseEvent(QWindowSystemInterfacePrivate::MouseEvent*) () from /usr/lib/x86_64-linux-gnu/libQt5Gui.so.5
0000019 0x00007ffff4ca9ec5 in QGuiApplicationPrivate::processWindowSystemEvent(QWindowSystemInterfacePrivate::WindowSystemEvent*) () from /usr/lib/x86_64-linux-gnu/libQt5Gui.so.5
0000020 0x00007ffff4c8de38 in QWindowSystemInterface::sendWindowSystemEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/x86_64-linux-gnu/libQt5Gui.so.5
0000021 0x00007fffe8bdafd0 in ?? () from /usr/lib/x86_64-linux-gnu/libQt5XcbQpa.so.5
0000022 0x00007fffee4f5fd7 in g_main_context_dispatch () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
0000023 0x00007fffee4f6230 in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
0000024 0x00007fffee4f62dc in g_main_context_iteration () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
0000025 0x00007ffff443d2df in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
0000026 0x00007ffff43e42fa in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
0000027 0x00007ffff545415d in QDialog::exec() () from /usr/lib/x86_64-linux-gnu/libQt5Widgets.so.5
0000028 0x0000000000d2a1cb in ScribusMainWindow::slotPrefsOrg (this=0x1adbe90) at /home/ale/docs/src/scribus/scribus/scribus.cpp:6427
0000029 0x00000000007f6e0d in ScribusMainWindow::qt_static_metacall (_o=0x1adbe90, _c=QMetaObject::InvokeMetaMethod, _id=209, _a=0x7fffffffcf90)
    at /home/ale/docs/src/scribus/build/scribus/moc_scribus.cpp:1185
0000030 0x00007ffff44156ca in QMetaObject::activate(QObject*, int, int, void**) () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
0000031 0x00007ffff524f3b2 in QAction::triggered(bool) () from /usr/lib/x86_64-linux-gnu/libQt5Widgets.so.5
0000032 0x00007ffff5251838 in QAction::activate(QAction::ActionEvent) () from /usr/lib/x86_64-linux-gnu/libQt5Widgets.so.5
0000033 0x00007ffff53d41c2 in ?? () from /usr/lib/x86_64-linux-gnu/libQt5Widgets.so.5
0000034 0x00007ffff53da47c in ?? () from /usr/lib/x86_64-linux-gnu/libQt5Widgets.so.5
0000035 0x00007ffff53de3f0 in QMenu::mouseReleaseEvent(QMouseEvent*) () from /usr/lib/x86_64-linux-gnu/libQt5Widgets.so.5
0000036 0x00007ffff529bff8 in QWidget::event(QEvent*) () from /usr/lib/x86_64-linux-gnu/libQt5Widgets.so.5
0000037 0x00007ffff53dee33 in QMenu::event(QEvent*) () from /usr/lib/x86_64-linux-gnu/libQt5Widgets.so.5
0000038 0x00007ffff5258ffc in QApplicationPrivate::notify_helper(QObject*, QEvent*) () from /usr/lib/x86_64-linux-gnu/libQt5Widgets.so.5
0000039 0x00007ffff525ebc9 in QApplication::notify(QObject*, QEvent*) () from /usr/lib/x86_64-linux-gnu/libQt5Widgets.so.5
0000040 0x00007ffff43e6b6b in QCoreApplication::notifyInternal(QObject*, QEvent*) () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
0000041 0x00007ffff53ddb29 in ?? () from /usr/lib/x86_64-linux-gnu/libQt5Widgets.so.5
0000042 0x00007ffff53de276 in QMenu::mouseReleaseEvent(QMouseEvent*) () from /usr/lib/x86_64-linux-gnu/libQt5Widgets.so.5
0000043 0x00007ffff529bff8 in QWidget::event(QEvent*) () from /usr/lib/x86_64-linux-gnu/libQt5Widgets.so.5
0000044 0x00007ffff53dee33 in QMenu::event(QEvent*) () from /usr/lib/x86_64-linux-gnu/libQt5Widgets.so.5
0000045 0x00007ffff5258ffc in QApplicationPrivate::notify_helper(QObject*, QEvent*) () from /usr/lib/x86_64-linux-gnu/libQt5Widgets.so.5
0000046 0x00007ffff525ebc9 in QApplication::notify(QObject*, QEvent*) () from /usr/lib/x86_64-linux-gnu/libQt5Widgets.so.5
0000047 0x00007ffff43e6b6b in QCoreApplication::notifyInternal(QObject*, QEvent*) () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
0000048 0x00007ffff525dad2 in QApplicationPrivate::sendMouseEvent(QWidget*, QMouseEvent*, QWidget*, QWidget*, QWidget**, QPointer<QWidget>&, bool) () from /usr/lib/x86_64-linux-gnu/libQt5Widgets.so.5
0000049 0x00007ffff52b695d in ?? () from /usr/lib/x86_64-linux-gnu/libQt5Widgets.so.5
0000050 0x00007ffff52b8bbb in ?? () from /usr/lib/x86_64-linux-gnu/libQt5Widgets.so.5
0000051 0x00007ffff5258ffc in QApplicationPrivate::notify_helper(QObject*, QEvent*) () from /usr/lib/x86_64-linux-gnu/libQt5Widgets.so.5
0000052 0x00007ffff525e4c6 in QApplication::notify(QObject*, QEvent*) () from /usr/lib/x86_64-linux-gnu/libQt5Widgets.so.5
0000053 0x00007ffff43e6b6b in QCoreApplication::notifyInternal(QObject*, QEvent*) () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
0000054 0x00007ffff4ca8201 in QGuiApplicationPrivate::processMouseEvent(QWindowSystemInterfacePrivate::MouseEvent*) () from /usr/lib/x86_64-linux-gnu/libQt5Gui.so.5
0000055 0x00007ffff4ca9ec5 in QGuiApplicationPrivate::processWindowSystemEvent(QWindowSystemInterfacePrivate::WindowSystemEvent*) () from /usr/lib/x86_64-linux-gnu/libQt5Gui.so.5
0000056 0x00007ffff4c8de38 in QWindowSystemInterface::sendWindowSystemEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/x86_64-linux-gnu/libQt5Gui.so.5
0000057 0x00007fffe8bdafd0 in ?? () from /usr/lib/x86_64-linux-gnu/libQt5XcbQpa.so.5
0000058 0x00007fffee4f5fd7 in g_main_context_dispatch () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
0000059 0x00007fffee4f6230 in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
0000060 0x00007fffee4f62dc in g_main_context_iteration () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
0000061 0x00007ffff443d2df in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
0000062 0x00007ffff43e42fa in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
0000063 0x00007ffff43ec3dc in QCoreApplication::exec() () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
0000064 0x0000000001312a99 in mainApp (argc=1, argv=0x7fffffffe3e8) at /home/ale/docs/src/scribus/scribus/main_nix.cpp:78
0000065 0x0000000001312a17 in main (argc=1, argv=0x7fffffffe3e8) at /home/ale/docs/src/scribus/scribus/main_nix.cpp:54
TagsNo tags attached.
PatchNo

Relationships

related to 0013690 new Many menus are greyed out after adding new path/to/font in Prefrences > Fonts  
related to 0013699 new Use of freed session detected. Do not call runModalSession: after calling endModalSesion 

Activities

Kunda

2016-01-26 15:26

updater   ~0038444

Where does this happen ? I see no 'Remove' button.

ale

2016-01-26 16:31

manager   ~0038446

... you can only remove paths when no document is open.

it's in the preferences, in the font section, path's tab...

Kunda

2016-01-26 18:01

updater   ~0038448

Confirmed on 10.10.5 1.5.1svn r20718
The way I could reproduce it was to:
1) add a new path
2) close scribus
3) open scribus
4) delete path
Reason: I didn't have other paths specified.

Kunda

2016-01-26 18:03

updater   ~0038449

Also encountered another bug (0013690) while reproducing this one

jghali

2016-01-27 20:59

administrator   ~0038467

I could not reproduce this issue on Windows

Kunda

2016-01-27 22:28

updater  

bt-osx.txt (6,447 bytes)   
Process 21341 stopped
* thread #1: tid = 0x1fff61, 0x0000000103670523 QtCore`QMapNodeBase::nextNode() const + 19, queue = 'com.apple.main-thread', stop reason = EXC_BAD_ACCESS (code=1, address=0xc)
    frame #0: 0x0000000103670523 QtCore`QMapNodeBase::nextNode() const + 19
QtCore`QMapNodeBase::nextNode:
->  0x103670523 <+19>: movq   0x8(%rax), %rcx
    0x103670527 <+23>: testq  %rcx, %rcx
    0x10367052a <+26>: jne    0x103670520               ; <+16>
    0x10367052c <+28>: jmp    0x10367054a               ; <+58>
(lldb) bt
* thread #1: tid = 0x1fff61, 0x0000000103670523 QtCore`QMapNodeBase::nextNode() const + 19, queue = 'com.apple.main-thread', stop reason = EXC_BAD_ACCESS (code=1, address=0xc)
  * frame #0: 0x0000000103670523 QtCore`QMapNodeBase::nextNode() const + 19
    frame #1: 0x0000000100573651 Scribus`QMap<QString, ScFace>::iterator::operator++() + 17
    frame #2: 0x00000001003185d2 Scribus`SCFontsIterator::next() + 14
    frame #3: 0x0000000100649919 Scribus`Prefs_Fonts::DelPath() + 445
    frame #4: 0x00000001037d979c QtCore`QMetaObject::activate(QObject*, int, int, void**) + 2988
    frame #5: 0x00000001026de5d0 QtWidgets`QAbstractButton::clicked(bool) + 64
    frame #6: 0x000000010243245a QtWidgets`QAbstractButtonPrivate::emitClicked() + 58
    frame #7: 0x00000001024322b8 QtWidgets`QAbstractButtonPrivate::click() + 264
    frame #8: 0x00000001024332ee QtWidgets`QAbstractButton::mouseReleaseEvent(QMouseEvent*) + 270
    frame #9: 0x000000010238aa5f QtWidgets`QWidget::event(QEvent*) + 1631
    frame #10: 0x000000010243303f QtWidgets`QAbstractButton::event(QEvent*) + 175
    frame #11: 0x000000010234c97b QtWidgets`QApplicationPrivate::notify_helper(QObject*, QEvent*) + 251
    frame #12: 0x0000000102350013 QtWidgets`QApplication::notify(QObject*, QEvent*) + 9011
    frame #13: 0x00000001037a94f3 QtCore`QCoreApplication::notifyInternal(QObject*, QEvent*) + 115
    frame #14: 0x000000010234d30b QtWidgets`QApplicationPrivate::sendMouseEvent(QWidget*, QMouseEvent*, QWidget*, QWidget*, QWidget**, QPointer<QWidget>&, bool) + 971
    frame #15: 0x00000001023aaed9 QtWidgets`QWidgetWindow::handleMouseEvent(QMouseEvent*) + 1177
    frame #16: 0x00000001023aa0ef QtWidgets`QWidgetWindow::event(QEvent*) + 111
    frame #17: 0x000000010234c97b QtWidgets`QApplicationPrivate::notify_helper(QObject*, QEvent*) + 251
    frame #18: 0x000000010234f2de QtWidgets`QApplication::notify(QObject*, QEvent*) + 5630
    frame #19: 0x00000001037a94f3 QtCore`QCoreApplication::notifyInternal(QObject*, QEvent*) + 115
    frame #20: 0x0000000102a0d222 QtGui`QGuiApplicationPrivate::processMouseEvent(QWindowSystemInterfacePrivate::MouseEvent*) + 2434
    frame #21: 0x00000001029f9572 QtGui`QWindowSystemInterface::sendWindowSystemEvents(QFlags<QEventLoop::ProcessEventsFlag>) + 162
    frame #22: 0x0000000104da5391 libqcocoa.dylib`QCocoaEventDispatcherPrivate::postedEventsSourceCallback(void*) + 33
    frame #23: 0x00007fff95581a01 CoreFoundation`__CFRUNLOOP_IS_CALLING_OUT_TO_A_SOURCE0_PERFORM_FUNCTION__ + 17
    frame #24: 0x00007fff95573b8d CoreFoundation`__CFRunLoopDoSources0 + 269
    frame #25: 0x00007fff955731bf CoreFoundation`__CFRunLoopRun + 927
    frame #26: 0x00007fff95572bd8 CoreFoundation`CFRunLoopRunSpecific + 296
    frame #27: 0x00007fff9104656f HIToolbox`RunCurrentEventLoopInMode + 235
    frame #28: 0x00007fff910461ee HIToolbox`ReceiveNextEventCommon + 179
    frame #29: 0x00007fff9104612b HIToolbox`_BlockUntilNextEventMatchingListInModeWithFilter + 71
    frame #30: 0x00007fff8eabb8ab AppKit`_DPSNextEvent + 978
    frame #31: 0x00007fff8eabae58 AppKit`-[NSApplication nextEventMatchingMask:untilDate:inMode:dequeue:] + 346
    frame #32: 0x00007fff8ec86887 AppKit`-[NSApplication _realDoModalLoop:peek:] + 666
    frame #33: 0x00007fff8eeb0e64 AppKit`-[NSApplication runModalSession:] + 71
    frame #34: 0x0000000104da420a libqcocoa.dylib`QCocoaEventDispatcher::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) + 1978
    frame #35: 0x00000001037a6c1c QtCore`QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) + 412
    frame #36: 0x00000001025366eb QtWidgets`QDialog::exec() + 523
    frame #37: 0x00000001003c330c Scribus`ScribusMainWindow::slotPrefsOrg() + 124
    frame #38: 0x00000001037d979c QtCore`QMetaObject::activate(QObject*, int, int, void**) + 2988
    frame #39: 0x0000000102343a60 QtWidgets`QAction::activate(QAction::ActionEvent) + 288
    frame #40: 0x00000001037d979c QtCore`QMetaObject::activate(QObject*, int, int, void**) + 2988
    frame #41: 0x00000001037d218c QtCore`QObject::event(QEvent*) + 156
    frame #42: 0x000000010234c97b QtWidgets`QApplicationPrivate::notify_helper(QObject*, QEvent*) + 251
    frame #43: 0x000000010234f2de QtWidgets`QApplication::notify(QObject*, QEvent*) + 5630
    frame #44: 0x00000001037aa212 QtCore`QCoreApplicationPrivate::sendPostedEvents(QObject*, int, QThreadData*) + 1058
    frame #45: 0x0000000104da4b0e libqcocoa.dylib`QCocoaEventDispatcherPrivate::processPostedEvents() + 190
    frame #46: 0x0000000104da5391 libqcocoa.dylib`QCocoaEventDispatcherPrivate::postedEventsSourceCallback(void*) + 33
    frame #47: 0x00007fff95581a01 CoreFoundation`__CFRUNLOOP_IS_CALLING_OUT_TO_A_SOURCE0_PERFORM_FUNCTION__ + 17
    frame #48: 0x00007fff95573b8d CoreFoundation`__CFRunLoopDoSources0 + 269
    frame #49: 0x00007fff955731bf CoreFoundation`__CFRunLoopRun + 927
    frame #50: 0x00007fff95572bd8 CoreFoundation`CFRunLoopRunSpecific + 296
    frame #51: 0x00007fff9104656f HIToolbox`RunCurrentEventLoopInMode + 235
    frame #52: 0x00007fff910461ee HIToolbox`ReceiveNextEventCommon + 179
    frame #53: 0x00007fff9104612b HIToolbox`_BlockUntilNextEventMatchingListInModeWithFilter + 71
    frame #54: 0x00007fff8eabb8ab AppKit`_DPSNextEvent + 978
    frame #55: 0x00007fff8eabae58 AppKit`-[NSApplication nextEventMatchingMask:untilDate:inMode:dequeue:] + 346
    frame #56: 0x00007fff8eab0af3 AppKit`-[NSApplication run] + 594
    frame #57: 0x0000000104da42df libqcocoa.dylib`QCocoaEventDispatcher::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) + 2191
    frame #58: 0x00000001037a6c1c QtCore`QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) + 412
    frame #59: 0x00000001037a9a95 QtCore`QCoreApplication::exec() + 341
    frame #60: 0x00000001007e801d Scribus`mainApp(int, char**) + 90
    frame #61: 0x00007fff88f175c9 libdyld.dylib`start + 1
    frame #62: 0x00007fff88f175c9 libdyld.dylib`start + 1
bt-osx.txt (6,447 bytes)   

Kunda

2016-01-28 02:14

updater   ~0038474

Craig cant re-create on OSX but can on linux. Thing is he has no idea what causes it, yet.

Kunda

2016-01-31 18:34

updater   ~0038507

Last edited: 2016-01-31 18:46

Franz committed fix in r20842
but i can still reproduce crash on OSX

Edit: I can't reproduce crash consistently.

Kunda

2016-01-31 20:23

updater   ~0038509

Added issue 0013699 which also shows 0013690

Issue History

Date Modified Username Field Change
2016-01-26 09:43 ale New Issue
2016-01-26 12:13 ale Summary dummy ticket for font path bug => crash when trying to remove a font path
2016-01-26 12:13 ale Description Updated
2016-01-26 12:14 ale Description Updated
2016-01-26 12:14 ale Additional Information Updated
2016-01-26 13:35 Kunda Category - => Fonts
2016-01-26 15:26 Kunda Note Added: 0038444
2016-01-26 16:31 ale Note Added: 0038446
2016-01-26 17:49 Kunda Relationship added related to 0013690
2016-01-26 18:01 Kunda Note Added: 0038448
2016-01-26 18:01 Kunda Status new => confirmed
2016-01-26 18:02 Kunda Severity minor => crash
2016-01-26 18:02 Kunda Target Version => 1.5.1
2016-01-26 18:03 Kunda Note Added: 0038449
2016-01-27 20:59 jghali Note Added: 0038467
2016-01-27 22:28 Kunda File Added: bt-osx.txt
2016-01-28 02:14 Kunda Note Added: 0038474
2016-01-31 08:06 fschmid Status confirmed => resolved
2016-01-31 08:06 fschmid Fixed in Version => 1.5.1svn
2016-01-31 08:06 fschmid Resolution open => fixed
2016-01-31 08:06 fschmid Assigned To => fschmid
2016-01-31 18:34 Kunda Note Added: 0038507
2016-01-31 18:46 Kunda Note Edited: 0038507
2016-01-31 19:53 Kunda Relationship added related to 0013699
2016-01-31 20:23 Kunda Note Added: 0038509
2016-02-13 19:51 cbradney Status resolved => closed