Bug 273259 - Crash in Okular printer dialog
Summary: Crash in Okular printer dialog
Status: RESOLVED UPSTREAM
Alias: None
Product: okular
Classification: Applications
Component: general (show other bugs)
Version: 0.12.2
Platform: Ubuntu Linux
: NOR crash
Target Milestone: ---
Assignee: Okular developers
URL:
Keywords:
: 276806 (view as bug list)
Depends on:
Blocks:
 
Reported: 2011-05-14 11:52 UTC by sml
Modified: 2012-08-08 22:00 UTC (History)
2 users (show)

See Also:
Latest Commit:
Version Fixed In:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description sml 2011-05-14 11:52:33 UTC
Application: okular (0.12.2)
KDE Platform Version: 4.6.3 (4.6.3)
Qt Version: 4.7.2
Operating System: Linux 2.6.38-8-generic x86_64
Distribution: Ubuntu 11.04

-- Information about the crash:
- What I was doing when the application crashed:

I was playing around with printer settings, trying to get my printer to print n-up. I had opened and closed the printer properties dialog a few times, and when I clicked the 'Properties' button to open it again, Okular crashed.

-- Backtrace:
Application: Okular (okular), signal: Segmentation fault
[Current thread is 1 (Thread 0x7f54677d7780 (LWP 25284))]

Thread 6 (Thread 0x7f54510ce700 (LWP 25303)):
#0  0x00007f5464a62f03 in __poll (fds=<value optimized out>, nfds=<value optimized out>, timeout=<value optimized out>) at ../sysdeps/unix/sysv/linux/poll.c:87
#1  0x00007f5461960104 in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#2  0x00007f5461960639 in g_main_context_iteration () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#3  0x00007f5465421446 in QEventDispatcherGlib::processEvents (this=0x2bb4720, flags=<value optimized out>) at kernel/qeventdispatcher_glib.cpp:424
#4  0x00007f54653f5882 in QEventLoop::processEvents (this=<value optimized out>, flags=...) at kernel/qeventloop.cpp:149
#5  0x00007f54653f5abc in QEventLoop::exec (this=0x7f54510cddd0, flags=...) at kernel/qeventloop.cpp:201
#6  0x00007f546530c924 in QThread::exec (this=<value optimized out>) at thread/qthread.cpp:492
#7  0x00007f54653d7c2f in QInotifyFileSystemWatcherEngine::run (this=0x2bc8730) at io/qfilesystemwatcher_inotify.cpp:248
#8  0x00007f546530f175 in QThreadPrivate::start (arg=0x2bc8730) at thread/qthread_unix.cpp:320
#9  0x00007f5461e2bd8c in start_thread (arg=0x7f54510ce700) at pthread_create.c:304
#10 0x00007f5464a7004d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112
#11 0x0000000000000000 in ?? ()

Thread 5 (Thread 0x7f544ad60700 (LWP 25321)):
#0  pthread_cond_wait@@GLIBC_2.3.2 () at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:162
#1  0x00007f546530f82b in wait (this=<value optimized out>, mutex=0x2e36990, time=18446744073709551615) at thread/qwaitcondition_unix.cpp:88
#2  QWaitCondition::wait (this=<value optimized out>, mutex=0x2e36990, time=18446744073709551615) at thread/qwaitcondition_unix.cpp:160
#3  0x00007f546530c235 in QSemaphore::acquire (this=0x2e365c0, n=1) at thread/qsemaphore.cpp:144
#4  0x00007f54466cea5f in ?? () from /usr/lib/kde4/okularGenerator_ghostview.so
#5  0x00007f546530f175 in QThreadPrivate::start (arg=0x2e365b0) at thread/qthread_unix.cpp:320
#6  0x00007f5461e2bd8c in start_thread (arg=0x7f544ad60700) at pthread_create.c:304
#7  0x00007f5464a7004d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112
#8  0x0000000000000000 in ?? ()

Thread 4 (Thread 0x7f5447676700 (LWP 25325)):
#0  0x00007f5464a68143 in select () at ../sysdeps/unix/syscall-template.S:82
#1  0x00007f54653d7501 in QProcessManager::run (this=0x7f5465729f60) at io/qprocess_unix.cpp:245
#2  0x00007f546530f175 in QThreadPrivate::start (arg=0x7f5465729f60) at thread/qthread_unix.cpp:320
#3  0x00007f5461e2bd8c in start_thread (arg=0x7f5447676700) at pthread_create.c:304
#4  0x00007f5464a7004d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112
#5  0x0000000000000000 in ?? ()

Thread 3 (Thread 0x7f5448678700 (LWP 25472)):
#0  pthread_cond_wait@@GLIBC_2.3.2 () at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:162
#1  0x00007f546530f82b in wait (this=<value optimized out>, mutex=0x2f19ff8, time=18446744073709551615) at thread/qwaitcondition_unix.cpp:88
#2  QWaitCondition::wait (this=<value optimized out>, mutex=0x2f19ff8, time=18446744073709551615) at thread/qwaitcondition_unix.cpp:160
#3  0x00007f54662ad0e4 in QFileInfoGatherer::run (this=0x2f19fe8) at dialogs/qfileinfogatherer.cpp:214
#4  0x00007f546530f175 in QThreadPrivate::start (arg=0x2f19fe8) at thread/qthread_unix.cpp:320
#5  0x00007f5461e2bd8c in start_thread (arg=0x7f5448678700) at pthread_create.c:304
#6  0x00007f5464a7004d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112
#7  0x0000000000000000 in ?? ()

Thread 2 (Thread 0x7f5447e77700 (LWP 25473)):
#0  0x00007f5461e2e3c4 in __pthread_mutex_lock (mutex=0x26ca098) at pthread_mutex_lock.c:61
#1  0x00007f546195f461 in g_main_context_query () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#2  0x00007f546196000a in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#3  0x00007f5461960639 in g_main_context_iteration () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#4  0x00007f5465421446 in QEventDispatcherGlib::processEvents (this=0x2e8a240, flags=<value optimized out>) at kernel/qeventdispatcher_glib.cpp:424
#5  0x00007f54653f5882 in QEventLoop::processEvents (this=<value optimized out>, flags=...) at kernel/qeventloop.cpp:149
#6  0x00007f54653f5abc in QEventLoop::exec (this=0x7f5447e76dd0, flags=...) at kernel/qeventloop.cpp:201
#7  0x00007f546530c924 in QThread::exec (this=<value optimized out>) at thread/qthread.cpp:492
#8  0x00007f54653d7c2f in QInotifyFileSystemWatcherEngine::run (this=0x2e9e520) at io/qfilesystemwatcher_inotify.cpp:248
#9  0x00007f546530f175 in QThreadPrivate::start (arg=0x2e9e520) at thread/qthread_unix.cpp:320
#10 0x00007f5461e2bd8c in start_thread (arg=0x7f5447e77700) at pthread_create.c:304
#11 0x00007f5464a7004d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112
#12 0x0000000000000000 in ?? ()

Thread 1 (Thread 0x7f54677d7780 (LWP 25284)):
[KCrash Handler]
#6  QPPDOptionsModel::index (this=0x3007d20, row=1, column=0, parent=<value optimized out>) at dialogs/qprintdialog_unix.cpp:1136
#7  0x00007f546631ccc4 in indexesFromRange (range=..., result=...) at itemviews/qitemselectionmodel.cpp:285
#8  0x00007f546631cd93 in QItemSelection::indexes (this=0x30c0848) at itemviews/qitemselectionmodel.cpp:438
#9  0x00007f54663234e7 in QItemSelectionModelPrivate::_q_layoutAboutToBeChanged (this=0x30c07b0) at itemviews/qitemselectionmodel.cpp:794
#10 0x00007f546632452e in QItemSelectionModel::qt_metacall (this=0x2ff66f0, _c=QMetaObject::InvokeMetaMethod, _id=<value optimized out>, _a=0x7fff71a97f10) at .moc/release-shared/moc_qitemselectionmodel.cpp:139
#11 0x00007f546540b5f8 in QMetaObject::activate (sender=0x3007d20, m=<value optimized out>, local_signal_index=<value optimized out>, argv=0x0) at kernel/qobject.cpp:3287
#12 0x00007f546625e478 in QPPDOptionsModel::parseItems (this=0x3007d20) at dialogs/qprintdialog_unix.cpp:1166
#13 0x00007f546625ebc2 in QPrintPropertiesDialog::selectPrinter (this=0x2fe0b90) at dialogs/qprintdialog_unix.cpp:320
#14 0x00007f546625ee29 in QUnixPrintWidgetPrivate::_q_btnPropertiesClicked (this=0x2d5e000) at dialogs/qprintdialog_unix.cpp:968
#15 0x00007f546625f9c5 in QUnixPrintWidget::qt_metacall (this=0x2702d80, _c=QMetaObject::InvokeMetaMethod, _id=<value optimized out>, _a=0x7fff71a981c0) at .moc/release-shared/moc_qprintdialog.cpp:77
#16 0x00007f546540b5f8 in QMetaObject::activate (sender=0x2a43750, m=<value optimized out>, local_signal_index=<value optimized out>, argv=0x7fff71a981c0) at kernel/qobject.cpp:3287
#17 0x00007f546642b252 in QAbstractButton::clicked (this=<value optimized out>, _t1=false) at .moc/release-shared/moc_qabstractbutton.cpp:206
#18 0x00007f546617483e in QAbstractButtonPrivate::emitClicked (this=0x2ca7420) at widgets/qabstractbutton.cpp:546
#19 0x00007f5466175dbb in QAbstractButtonPrivate::click (this=0x2ca7420) at widgets/qabstractbutton.cpp:539
#20 0x00007f546617602c in QAbstractButton::mouseReleaseEvent (this=0x2a43750, e=0x7fff71a98b00) at widgets/qabstractbutton.cpp:1121
#21 0x00007f5465e06cb8 in QWidget::event (this=0x2a43750, event=0x7fff71a98b00) at kernel/qwidget.cpp:8259
#22 0x00007f5465db59e4 in QApplicationPrivate::notify_helper (this=0x2615770, receiver=0x2a43750, e=0x7fff71a98b00) at kernel/qapplication.cpp:4462
#23 0x00007f5465dbadb3 in QApplication::notify (this=<value optimized out>, receiver=0x2a43750, e=0x7fff71a98b00) at kernel/qapplication.cpp:4023
#24 0x00007f5466ad5196 in KApplication::notify (this=0x7fff71a9b230, receiver=0x2a43750, event=0x7fff71a98b00) at ../../kdeui/kernel/kapplication.cpp:311
#25 0x00007f54653f649c in QCoreApplication::notifyInternal (this=0x7fff71a9b230, receiver=0x2a43750, event=0x7fff71a98b00) at kernel/qcoreapplication.cpp:731
#26 0x00007f5465db6a0d in sendEvent (receiver=0x2a43750, event=0x7fff71a98b00, alienWidget=0x2a43750, nativeWidget=0x2f63960, buttonDown=0x7f5466896218, lastMouseReceiver=..., spontaneous=true) at ../../include/QtCore/../../src/corelib/kernel/qcoreapplication.h:215
#27 QApplicationPrivate::sendMouseEvent (receiver=0x2a43750, event=0x7fff71a98b00, alienWidget=0x2a43750, nativeWidget=0x2f63960, buttonDown=0x7f5466896218, lastMouseReceiver=..., spontaneous=true) at kernel/qapplication.cpp:3122
#28 0x00007f5465e36600 in QETWidget::translateMouseEvent (this=0x2f63960, event=<value optimized out>) at kernel/qapplication_x11.cpp:4556
#29 0x00007f5465e3504a in QApplication::x11ProcessEvent (this=0x7fff71a9b230, event=0x7fff71a99450) at kernel/qapplication_x11.cpp:3678
#30 0x00007f5465e5d162 in x11EventSourceDispatch (s=0x2613310, callback=0, user_data=0x0) at kernel/qguieventdispatcher_glib.cpp:146
#31 0x00007f546195fbcd in g_main_context_dispatch () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#32 0x00007f54619603a8 in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#33 0x00007f5461960639 in g_main_context_iteration () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#34 0x00007f54654213ef in QEventDispatcherGlib::processEvents (this=0x25c5340, flags=<value optimized out>) at kernel/qeventdispatcher_glib.cpp:422
#35 0x00007f5465e5cdfe in QGuiEventDispatcherGlib::processEvents (this=<value optimized out>, flags=<value optimized out>) at kernel/qguieventdispatcher_glib.cpp:204
#36 0x00007f54653f5882 in QEventLoop::processEvents (this=<value optimized out>, flags=...) at kernel/qeventloop.cpp:149
#37 0x00007f54653f5abc in QEventLoop::exec (this=0x7fff71a99750, flags=...) at kernel/qeventloop.cpp:201
#38 0x00007f54662748e6 in QDialog::exec (this=0x2f63960) at dialogs/qdialog.cpp:552
#39 0x00007f5456fe7ae4 in ?? () from /usr/lib/kde4/okularpart.so
#40 0x00007f5456fe8012 in ?? () from /usr/lib/kde4/okularpart.so
#41 0x00007f546540b5f8 in QMetaObject::activate (sender=0x2b3a490, m=<value optimized out>, local_signal_index=<value optimized out>, argv=0x7fff71a99930) at kernel/qobject.cpp:3287
#42 0x00007f5465daf112 in QAction::triggered (this=<value optimized out>, _t1=false) at .moc/release-shared/moc_qaction.cpp:263
#43 0x00007f5465daf2ff in QAction::activate (this=0x2b3a490, event=<value optimized out>) at kernel/qaction.cpp:1257
#44 0x00007f54661f1303 in QMenuPrivate::activateCausedStack (this=0x2b755c0, causedStack=..., action=0x2b3a490, action_e=QAction::Trigger, self=true) at widgets/qmenu.cpp:993
#45 0x00007f54661f72ba in QMenuPrivate::activateAction (this=0x2b755c0, action=0x2b3a490, action_e=QAction::Trigger, self=true) at widgets/qmenu.cpp:1085
#46 0x00007f5466b9b7ad in KMenu::mouseReleaseEvent (this=0x2b75480, e=<value optimized out>) at ../../kdeui/widgets/kmenu.cpp:458
#47 0x00007f5465e06cb8 in QWidget::event (this=0x2b75480, event=0x7fff71a9a560) at kernel/qwidget.cpp:8259
#48 0x00007f54661f849b in QMenu::event (this=0x2b75480, e=0x7fff71a9a560) at widgets/qmenu.cpp:2415
#49 0x00007f5465db59e4 in QApplicationPrivate::notify_helper (this=0x2615770, receiver=0x2b75480, e=0x7fff71a9a560) at kernel/qapplication.cpp:4462
#50 0x00007f5465dbadb3 in QApplication::notify (this=<value optimized out>, receiver=0x2b75480, e=0x7fff71a9a560) at kernel/qapplication.cpp:4023
#51 0x00007f5466ad5196 in KApplication::notify (this=0x7fff71a9b230, receiver=0x2b75480, event=0x7fff71a9a560) at ../../kdeui/kernel/kapplication.cpp:311
#52 0x00007f54653f649c in QCoreApplication::notifyInternal (this=0x7fff71a9b230, receiver=0x2b75480, event=0x7fff71a9a560) at kernel/qcoreapplication.cpp:731
#53 0x00007f5465db6a0d in sendEvent (receiver=0x2b75480, event=0x7fff71a9a560, alienWidget=0x0, nativeWidget=0x2b75480, buttonDown=0x7f5466896218, lastMouseReceiver=..., spontaneous=true) at ../../include/QtCore/../../src/corelib/kernel/qcoreapplication.h:215
#54 QApplicationPrivate::sendMouseEvent (receiver=0x2b75480, event=0x7fff71a9a560, alienWidget=0x0, nativeWidget=0x2b75480, buttonDown=0x7f5466896218, lastMouseReceiver=..., spontaneous=true) at kernel/qapplication.cpp:3122
#55 0x00007f5465e36854 in QETWidget::translateMouseEvent (this=0x2b75480, event=<value optimized out>) at kernel/qapplication_x11.cpp:4490
#56 0x00007f5465e3504a in QApplication::x11ProcessEvent (this=0x7fff71a9b230, event=0x7fff71a9aeb0) at kernel/qapplication_x11.cpp:3678
#57 0x00007f5465e5d162 in x11EventSourceDispatch (s=0x2613310, callback=0, user_data=0x0) at kernel/qguieventdispatcher_glib.cpp:146
#58 0x00007f546195fbcd in g_main_context_dispatch () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#59 0x00007f54619603a8 in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#60 0x00007f5461960639 in g_main_context_iteration () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#61 0x00007f54654213ef in QEventDispatcherGlib::processEvents (this=0x25c5340, flags=<value optimized out>) at kernel/qeventdispatcher_glib.cpp:422
#62 0x00007f5465e5cdfe in QGuiEventDispatcherGlib::processEvents (this=<value optimized out>, flags=<value optimized out>) at kernel/qguieventdispatcher_glib.cpp:204
#63 0x00007f54653f5882 in QEventLoop::processEvents (this=<value optimized out>, flags=...) at kernel/qeventloop.cpp:149
#64 0x00007f54653f5abc in QEventLoop::exec (this=0x7fff71a9b1b0, flags=...) at kernel/qeventloop.cpp:201
#65 0x00007f54653f9ecb in QCoreApplication::exec () at kernel/qcoreapplication.cpp:1008
#66 0x000000000040812e in _start ()

Reported using DrKonqi
Comment 1 Albert Astals Cid 2011-05-14 12:41:12 UTC
Can you reproduce the crash every time you open the properties dialog?
Comment 2 sml 2011-05-31 04:18:52 UTC
Yes. Steps to reproduce:

1. Open a PDF document in Okular.
2. CTRL + P to open print dialog.
3. Click Properties button next to your printer.
4. Go to the Advanced tab (note, this is not available with the "Print to File" printer).
5. Change "N-up printing" to "2-up".
6. Click Ok.
7. Hold down the "Enter" key so that the properties dialog is rapidly opened and then dismissed.
8. After a few seconds, Okular crashes.

This crash is 100% reproducable, though the time to crash seems to vary between about 1 second and 5 seconds.
Comment 3 Dario Andres 2011-07-10 23:14:00 UTC
*** Bug 276806 has been marked as a duplicate of this bug. ***
Comment 4 Albert Astals Cid 2012-08-08 22:00:26 UTC
Unfortunately this crash happens inside the Qt printing dialog code so there is not much we can do to fix it.

If you can still reproduce this crash in newer KDE/Qt/Okular versions please open a bug in https://bugreports.qt-project.org

Thanks for caring about Okular :-)