Bug 291425

Summary: Okular crashes when trying to print pdf
Product: [Applications] okular Reporter: Robert Voinea <rvoinea>
Component: generalAssignee: Okular developers <okular-devel>
Status: RESOLVED NOT A BUG    
Severity: crash    
Priority: NOR    
Version: unspecified   
Target Milestone: ---   
Platform: Ubuntu   
OS: Linux   
Latest Commit: Version Fixed In:
Sentry Crash Report:
Attachments: PDF causing okular to crash

Description Robert Voinea 2012-01-13 09:28:08 UTC
Application: okular (0.13.3)
KDE Platform Version: 4.7.4 (4.7.4)
Qt Version: 4.7.4
Operating System: Linux 3.0.0-15-generic i686
Distribution: Ubuntu 11.10

-- Information about the crash:
Trying to print a pdf (I shall attach it to this bug) causes okular to crash.

The crash can be reproduced every time.

-- Backtrace:
Application: Okular (okular), signal: Aborted
[Current thread is 1 (Thread 0xb771e710 (LWP 12677))]

Thread 4 (Thread 0xb5b56b70 (LWP 12679)):
#0  0x0085f416 in __kernel_vsyscall ()
#1  0x01a39063 in __lll_lock_wait_private () at ../nptl/sysdeps/unix/sysv/linux/i386/i686/../i486/lowlevellock.S:95
#2  0x019cd135 in _L_lock_10306 () from /lib/i386-linux-gnu/libc.so.6
#3  0x019cb946 in __GI___libc_free (mem=0x8b48770) at malloc.c:3736
#4  0x0081c80f in operator delete(void*) () from /usr/lib/i386-linux-gnu/libstdc++.so.6
#5  0x06a00cfc in QEventDispatcherGlib::unregisterSocketNotifier (this=0x8b49038, notifier=0xb5b5630c) at kernel/qeventdispatcher_glib.cpp:503
#6  0x069eebe8 in setEnabled (enable=<optimized out>, this=0xb5b5630c) at kernel/qsocketnotifier.cpp:298
#7  QSocketNotifier::setEnabled (this=0xb5b5630c, enable=false) at kernel/qsocketnotifier.cpp:284
#8  0x06a0029d in socketNotifierSourceCheck (source=0x8d02250) at kernel/qeventdispatcher_glib.cpp:92
#9  0x04781f24 in g_main_context_check (context=0x8d3de00, max_priority=2147483647, fds=0x8d48a20, n_fds=2) at /build/buildd/glib2.0-2.30.0/./glib/gmain.c:2959
#10 0x047828f0 in g_main_context_iterate (context=0x8d3de00, block=75043616, dispatch=1, self=<optimized out>) at /build/buildd/glib2.0-2.30.0/./glib/gmain.c:3086
#11 0x04782c2a in g_main_context_iteration (context=0x8d3de00, may_block=1) at /build/buildd/glib2.0-2.30.0/./glib/gmain.c:3152
#12 0x06a00ada in QEventDispatcherGlib::processEvents (this=0x8b49038, flags=...) at kernel/qeventdispatcher_glib.cpp:422
#13 0x069d11dd in QEventLoop::processEvents (this=0xb5b562b0, flags=...) at kernel/qeventloop.cpp:149
#14 0x069d1421 in QEventLoop::exec (this=0xb5b562b0, flags=...) at kernel/qeventloop.cpp:201
#15 0x068d490b in QThread::exec (this=0x8cbcab0) at thread/qthread.cpp:498
#16 0x069b1e2d in QInotifyFileSystemWatcherEngine::run (this=0x8cbcab0) at io/qfilesystemwatcher_inotify.cpp:248
#17 0x068d77b3 in QThreadPrivate::start (arg=0x8cbcab0) at thread/qthread_unix.cpp:331
#18 0x00e51d31 in start_thread (arg=0xb5b56b70) at pthread_create.c:304
#19 0x01a2b0ce in clone () at ../sysdeps/unix/sysv/linux/i386/clone.S:130
Backtrace stopped: Not enough registers or memory available to unwind further

Thread 3 (Thread 0xb44f3b70 (LWP 12685)):
#0  0x0085f416 in __kernel_vsyscall ()
#1  0x00e55a5c in pthread_cond_wait@@GLIBC_2.3.2 () at ../nptl/sysdeps/unix/sysv/linux/i386/i686/../i486/pthread_cond_wait.S:169
#2  0x01a38cfc in __pthread_cond_wait (cond=0x8d76a58, mutex=0x8d76a40) at forward.c:139
#3  0x068d7cc0 in wait (time=4294967295, this=0x8d76a40) at thread/qwaitcondition_unix.cpp:88
#4  QWaitCondition::wait (this=0x8d765d8, mutex=0x8d765d4, time=4294967295) at thread/qwaitcondition_unix.cpp:160
#5  0x01560d7b in QFileInfoGatherer::run (this=0x8d765cc) at dialogs/qfileinfogatherer.cpp:214
#6  0x068d77b3 in QThreadPrivate::start (arg=0x8d765cc) at thread/qthread_unix.cpp:331
#7  0x00e51d31 in start_thread (arg=0xb44f3b70) at pthread_create.c:304
#8  0x01a2b0ce in clone () at ../sysdeps/unix/sysv/linux/i386/clone.S:130
Backtrace stopped: Not enough registers or memory available to unwind further

Thread 2 (Thread 0xb1fffb70 (LWP 12686)):
#0  0x0085f416 in __kernel_vsyscall ()
#1  0x01a39063 in __lll_lock_wait_private () at ../nptl/sysdeps/unix/sysv/linux/i386/i686/../i486/lowlevellock.S:95
#2  0x019cd135 in _L_lock_10306 () from /lib/i386-linux-gnu/libc.so.6
#3  0x019cb946 in __GI___libc_free (mem=0x8d51ce0) at malloc.c:3736
#4  0x0081c80f in operator delete(void*) () from /usr/lib/i386-linux-gnu/libstdc++.so.6
#5  0x06a00cfc in QEventDispatcherGlib::unregisterSocketNotifier (this=0x8d51c10, notifier=0xb1fff30c) at kernel/qeventdispatcher_glib.cpp:503
#6  0x069eebe8 in setEnabled (enable=<optimized out>, this=0xb1fff30c) at kernel/qsocketnotifier.cpp:298
#7  QSocketNotifier::setEnabled (this=0xb1fff30c, enable=false) at kernel/qsocketnotifier.cpp:284
#8  0x06a0029d in socketNotifierSourceCheck (source=0x8d5cc60) at kernel/qeventdispatcher_glib.cpp:92
#9  0x04781f24 in g_main_context_check (context=0x8d5d788, max_priority=2147483647, fds=0x8d5c9f0, n_fds=2) at /build/buildd/glib2.0-2.30.0/./glib/gmain.c:2959
#10 0x047828f0 in g_main_context_iterate (context=0x8d5d788, block=75043616, dispatch=1, self=<optimized out>) at /build/buildd/glib2.0-2.30.0/./glib/gmain.c:3086
#11 0x04782c2a in g_main_context_iteration (context=0x8d5d788, may_block=1) at /build/buildd/glib2.0-2.30.0/./glib/gmain.c:3152
#12 0x06a00ada in QEventDispatcherGlib::processEvents (this=0x8d51c10, flags=...) at kernel/qeventdispatcher_glib.cpp:422
#13 0x069d11dd in QEventLoop::processEvents (this=0xb1fff2b0, flags=...) at kernel/qeventloop.cpp:149
#14 0x069d1421 in QEventLoop::exec (this=0xb1fff2b0, flags=...) at kernel/qeventloop.cpp:201
#15 0x068d490b in QThread::exec (this=0x8d76c58) at thread/qthread.cpp:498
#16 0x069b1e2d in QInotifyFileSystemWatcherEngine::run (this=0x8d76c58) at io/qfilesystemwatcher_inotify.cpp:248
#17 0x068d77b3 in QThreadPrivate::start (arg=0x8d76c58) at thread/qthread_unix.cpp:331
#18 0x00e51d31 in start_thread (arg=0xb1fffb70) at pthread_create.c:304
#19 0x01a2b0ce in clone () at ../sysdeps/unix/sysv/linux/i386/clone.S:130
Backtrace stopped: Not enough registers or memory available to unwind further

Thread 1 (Thread 0xb771e710 (LWP 12677)):
[KCrash Handler]
#7  0x0085f416 in __kernel_vsyscall ()
#8  0x01986c8f in __GI_raise (sig=6) at ../nptl/sysdeps/unix/sysv/linux/raise.c:64
#9  0x0198a2b5 in __GI_abort () at abort.c:92
#10 0x019bcdfc in __libc_message (do_abort=2, fmt=0x1a96080 "*** glibc detected *** %s: %s: 0x%s ***\n") at ../sysdeps/unix/sysv/linux/libc_fatal.c:189
#11 0x019c7bc2 in malloc_printerr (action=<optimized out>, str=<optimized out>, ptr=0x8f9f160) at malloc.c:6283
#12 0x019c8862 in _int_free (av=0x1ad2400, p=0x8f9f158) at malloc.c:4795
#13 0x019cb94d in __GI___libc_free (mem=0x8f9f160) at malloc.c:3738
#14 0x0081c80f in operator delete(void*) () from /usr/lib/i386-linux-gnu/libstdc++.so.6
#15 0x02c283fd in PreScanOutputDev::tilingPatternFill(GfxState*, Catalog*, Object*, double*, int, Dict*, double*, double*, int, int, int, int, double, double) () from /usr/lib/libpoppler.so.15
#16 0x02be4dc8 in Gfx::doTilingPatternFill(GfxTilingPattern*, bool, bool) () from /usr/lib/libpoppler.so.15
#17 0x02be54f6 in Gfx::doPatternFill(bool) () from /usr/lib/libpoppler.so.15
#18 0x02be7828 in Gfx::opFill(Object*, int) () from /usr/lib/libpoppler.so.15
#19 0x02bdb88f in Gfx::execOp(Object*, Object*, int) () from /usr/lib/libpoppler.so.15
#20 0x02be282c in Gfx::go(bool) () from /usr/lib/libpoppler.so.15
#21 0x02be2d3c in Gfx::display(Object*, bool) () from /usr/lib/libpoppler.so.15
#22 0x02c22c80 in Page::displaySlice(OutputDev*, double, double, int, bool, bool, int, int, int, int, bool, Catalog*, bool (*)(void*), void*, bool (*)(Annot*, void*), void*) () from /usr/lib/libpoppler.so.15
#23 0x02c3d153 in PSOutputDev::checkPageSlice(Page*, double, double, int, bool, bool, int, int, int, int, bool, Catalog*, bool (*)(void*), void*) () from /usr/lib/libpoppler.so.15
#24 0x02c22b6e in Page::displaySlice(OutputDev*, double, double, int, bool, bool, int, int, int, int, bool, Catalog*, bool (*)(void*), void*, bool (*)(Annot*, void*), void*) () from /usr/lib/libpoppler.so.15
#25 0x02c22e43 in Page::display(OutputDev*, double, double, int, bool, bool, bool, Catalog*, bool (*)(void*), void*, bool (*)(Annot*, void*), void*) () from /usr/lib/libpoppler.so.15
#26 0x02c275cf in PDFDoc::displayPage(OutputDev*, int, double, double, int, bool, bool, bool, bool (*)(void*), void*, bool (*)(Annot*, void*), void*) () from /usr/lib/libpoppler.so.15
#27 0x081d5959 in Poppler::PSConverter::convert() () from /usr/lib/libpoppler-qt4.so.3
#28 0x022299c5 in PDFGenerator::print (this=0x8d04678, printer=...) at ../../../generators/poppler/generator_pdf.cpp:1004
#29 0x03870b86 in Okular::Document::print (this=0x89d0858, printer=...) at ../core/document.cpp:3101
#30 0x01fad692 in doPrint (printer=..., this=0x8980e00) at ../part.cpp:2125
#31 Okular::Part::doPrint (this=0x8980e00, printer=...) at ../part.cpp:2117
#32 0x01fbb6ec in Okular::Part::slotPrint (this=0x8980e00) at ../part.cpp:2077
#33 0x01fbbbfd in Okular::Part::qt_metacall (this=0x8980e00, _c=QMetaObject::InvokeMetaMethod, _id=54, _a=0xbfa72fd8) at ./part.moc:240
#34 0x069d8b7d in metacall (argv=0xbfa72fd8, idx=69, cl=QMetaObject::InvokeMetaMethod, object=0x8980e00) at kernel/qmetaobject.cpp:237
#35 QMetaObject::metacall (object=0x8980e00, cl=QMetaObject::InvokeMetaMethod, idx=69, argv=0xbfa72fd8) at kernel/qmetaobject.cpp:232
#36 0x069e7a6a in QMetaObject::activate (sender=0x8c7df10, m=0x1933458, local_signal_index=1, argv=0xbfa72fd8) at kernel/qobject.cpp:3278
#37 0x00fe383d in QAction::triggered (this=0x8c7df10, _t1=false) at .moc/release-shared/moc_qaction.cpp:263
#38 0x00fe3adb in QAction::activate (this=0x8c7df10, event=QAction::Trigger) at kernel/qaction.cpp:1257
#39 0x0148cb13 in QMenuPrivate::activateCausedStack (this=0x8c89ae8, causedStack=..., action=0x8c7df10, action_e=QAction::Trigger, self=true) at widgets/qmenu.cpp:1005
#40 0x014933af in QMenuPrivate::activateAction (this=0x8c89ae8, action=0x8c7df10, action_e=QAction::Trigger, self=true) at widgets/qmenu.cpp:1097
#41 0x014960f5 in QMenu::mouseReleaseEvent (this=0x8c95430, e=0xbfa736fc) at widgets/qmenu.cpp:2296
#42 0x00b25fbc in KMenu::mouseReleaseEvent (this=0x8c95430, e=0xbfa736fc) at ../../kdeui/widgets/kmenu.cpp:464
#43 0x01044f98 in QWidget::event (this=0x8c95430, event=0xbfa736fc) at kernel/qwidget.cpp:8295
#44 0x01494b6c in QMenu::event (this=0x8c95430, e=0xbfa736fc) at widgets/qmenu.cpp:2405
#45 0x00fead54 in notify_helper (e=0xbfa736fc, receiver=0x8c95430, this=0x87f3db0) at kernel/qapplication.cpp:4486
#46 QApplicationPrivate::notify_helper (this=0x87f3db0, receiver=0x8c95430, e=0xbfa736fc) at kernel/qapplication.cpp:4458
#47 0x00ff0dbb in QApplication::notify (this=0x87f3db0, receiver=0x8c95430, e=0xbfa736fc) at kernel/qapplication.cpp:4047
#48 0x00a47971 in KApplication::notify (this=0xbfa73f10, receiver=0x8c95430, event=0xbfa736fc) at ../../kdeui/kernel/kapplication.cpp:311
#49 0x069d219e in QCoreApplication::notifyInternal (this=0xbfa73f10, receiver=0x8c95430, event=0xbfa736fc) at kernel/qcoreapplication.cpp:787
#50 0x00febd15 in sendEvent (event=<optimized out>, receiver=<optimized out>) at ../../include/QtCore/../../src/corelib/kernel/qcoreapplication.h:215
#51 QApplicationPrivate::sendMouseEvent (receiver=0x8c95430, event=0xbfa736fc, alienWidget=0x0, nativeWidget=0x8c95430, buttonDown=0x1955eb4, lastMouseReceiver=..., spontaneous=true) at kernel/qapplication.cpp:3146
#52 0x010789fa in QETWidget::translateMouseEvent (this=0x8c95430, event=0xbfa73b7c) at kernel/qapplication_x11.cpp:4502
#53 0x01076e4d in QApplication::x11ProcessEvent (this=0xbfa73f10, event=0xbfa73b7c) at kernel/qapplication_x11.cpp:3690
#54 0x010a324c in x11EventSourceDispatch (s=0x87f6138, callback=0, user_data=0x0) at kernel/qguieventdispatcher_glib.cpp:146
#55 0x0478225f in g_main_dispatch (context=0x87f6000) at /build/buildd/glib2.0-2.30.0/./glib/gmain.c:2441
#56 g_main_context_dispatch (context=0x87f6000) at /build/buildd/glib2.0-2.30.0/./glib/gmain.c:3011
#57 0x04782990 in g_main_context_iterate (context=0x87f6000, block=75043616, dispatch=1, self=<optimized out>) at /build/buildd/glib2.0-2.30.0/./glib/gmain.c:3089
#58 0x04782c2a in g_main_context_iteration (context=0x87f6000, may_block=1) at /build/buildd/glib2.0-2.30.0/./glib/gmain.c:3152
#59 0x06a00ada in QEventDispatcherGlib::processEvents (this=0x87d8260, flags=...) at kernel/qeventdispatcher_glib.cpp:422
#60 0x010a2e3a in QGuiEventDispatcherGlib::processEvents (this=0x87d8260, flags=...) at kernel/qguieventdispatcher_glib.cpp:204
#61 0x069d11dd in QEventLoop::processEvents (this=0xbfa73e84, flags=...) at kernel/qeventloop.cpp:149
#62 0x069d1421 in QEventLoop::exec (this=0xbfa73e84, flags=...) at kernel/qeventloop.cpp:201
#63 0x069d619d in QCoreApplication::exec () at kernel/qcoreapplication.cpp:1064
#64 0x00fe88f4 in QApplication::exec () at kernel/qapplication.cpp:3760
#65 0x0804e010 in main (argc=) at ../../shell/main.cpp:85

Possible duplicates by query: bug 290830, bug 290682, bug 290537, bug 290055, bug 289453.

Reported using DrKonqi
Comment 1 Robert Voinea 2012-01-13 09:35:15 UTC
Created attachment 67772 [details]
PDF causing okular to crash
Comment 2 Robert Voinea 2012-01-13 09:35:45 UTC
The same thing happens for print preview.
Comment 3 Albert Astals Cid 2012-01-13 09:39:03 UTC
Which poppler version are you using?
Comment 4 Robert Voinea 2012-01-13 10:07:06 UTC
# dpkg -l | grep poppler

libpoppler-glib6 -- 0.16.7-2ubuntu2
libpoppler-qt4-3 -- 0.17.1-0ubuntu1~ppa1
libpoppler13 -- 0.16.7-2ubuntu2
libpoppler15 -- 0.17.1-0ubuntu1~ppa1
libpoppler4 -- 0.10.5-1ubuntu2.5
poppler-dbg -- 0.16.7-2ubuntu2
poppler-utils -- 0.17.1-0ubuntu1~ppa1
Comment 5 Albert Astals Cid 2012-01-13 14:37:40 UTC
You have some weird stuff in there having poppler 0.10.5, 0.16.7 and 0.17.1 installed, that is "supported" but it is not really "ideal", also 0.17.1 is a unstable release and it is not recommended for end users. You should "clean" your system so that you only have an installed version (let's say 0.16.7) and then try if the problem is still there.
Comment 6 Robert Voinea 2012-01-16 12:09:48 UTC
I have removed 0.15 and 0.17 and also reinstalled Okular.
It seems to work now for that document.
What it puzzles me is that for other PDF's I tried to print... it worked as expected.
I'm blaming this on the library mixup.

Thanks for support.

I'm closing this.