Bug 402997 - Okular crashes on opening PDF document
Summary: Okular crashes on opening PDF document
Status: RESOLVED UPSTREAM
Alias: None
Product: okular
Classification: Applications
Component: general (show other bugs)
Version: unspecified
Platform: Compiled Sources Linux
: NOR crash
Target Milestone: ---
Assignee: Okular developers
URL:
Keywords: drkonqi
Depends on:
Blocks:
 
Reported: 2019-01-08 14:23 UTC by RJVB
Modified: 2019-01-08 19:42 UTC (History)
2 users (show)

See Also:
Latest Commit:
Version Fixed In:
Sentry Crash Report:


Attachments
fatal PDF document (161.74 KB, application/pdf)
2019-01-08 14:24 UTC, RJVB
Details

Note You need to log in before you can comment on or make changes to this bug.
Description RJVB 2019-01-08 14:23:33 UTC
Application: okular (1.4.70)
 (Compiled from sources)
Qt Version: 5.9.7
Frameworks Version: 5.52.0
Operating System: Linux 4.14.23-ck1-mainline-core2-rjvb x86_64
Distribution: Ubuntu 14.04.5 LTS

-- Information about the crash:
- What I was doing when the application crashed:
Opening the attached PDF document crashes Okular5 systematically.

Okular built from git/master #031b794ec83014fbcdac9ffc69f6cde6ddc5b26b
Poppler 0.68.0
Qt5 5.9.7

The crash can be reproduced every time.

-- Backtrace:
Application: Okular (okular), signal: Aborted
Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1".
To enable execution of this file add
	add-auto-load-safe-path /opt/local/lib/libstdc++.so.6.0.24-gdb.py
line to your configuration file "/home/bertin/.gdbinit".
To completely disable this security protection add
	set auto-load safe-path /
line to your configuration file "/home/bertin/.gdbinit".
For more information about this security protection see the
"Auto-loading safe path" section in the GDB manual.  E.g., run from the shell:
	info "(gdb)Auto-loading safe path"
[Current thread is 1 (Thread 0x7f6e7f1da780 (LWP 12462))]

Thread 2 (Thread 0x7f6e6f59a700 (LWP 12463)):
#0  0x00007f6e79426c9d in poll () from /lib/x86_64-linux-gnu/libc.so.6
#1  0x00007f6e72c33f96 in g_main_context_poll (priority=0, context=<optimized out>, timeout=<optimized out>, fds=<optimized out>, n_fds=<optimized out>) at gmain.c:4191
#2  g_main_context_iterate (context=<optimized out>, block=<optimized out>, dispatch=<optimized out>, self=<optimized out>) at gmain.c:3885
#3  0x00007f6e72c34277 in g_main_context_iteration (context=0x7f6e68001600, may_block=1) at gmain.c:3951
#4  0x00007f6e7a21686b in QEventDispatcherGlib::processEvents (this=0x7f6e680008c0, flags=...) at /opt/local/var/lnxports/build/_opt_local_site-ports_aqua_qt5-kde-devel/qt5-kde-devel/work/qt-everywhere-opensource-src-5.9.7/qtbase/src/corelib/kernel/qeventdispatcher_glib.cpp:425
#5  0x00007f6e7a1c1a7f in QEventLoop::processEvents (this=<optimized out>, flags=...) at /opt/local/var/lnxports/build/_opt_local_site-ports_aqua_qt5-kde-devel/qt5-kde-devel/work/qt-everywhere-opensource-src-5.9.7/qtbase/src/corelib/kernel/qeventloop.cpp:134
#6  QEventLoop::exec (this=0x7f6e6f599e48, flags=...) at /opt/local/var/lnxports/build/_opt_local_site-ports_aqua_qt5-kde-devel/qt5-kde-devel/work/qt-everywhere-opensource-src-5.9.7/qtbase/src/corelib/kernel/qeventloop.cpp:212
#7  0x00007f6e7a005c67 in QThread::exec (this=<optimized out>) at /opt/local/var/lnxports/build/_opt_local_site-ports_aqua_qt5-kde-devel/qt5-kde-devel/work/qt-everywhere-opensource-src-5.9.7/qtbase/src/corelib/thread/qthread.cpp:515
#8  0x00007f6e7a64d5c0 in QDBusConnectionManager::run (this=0x7f6e7a8ac2e0 <(anonymous namespace)::Q_QGS__q_manager::innerFunction()::holder>) at /opt/local/var/lnxports/build/_opt_local_site-ports_aqua_qt5-kde-devel/qt5-kde-devel/work/qt-everywhere-opensource-src-5.9.7/qtbase/src/dbus/qdbusconnection.cpp:178
#9  0x00007f6e7a009852 in QThreadPrivate::start (arg=0x7f6e7a8ac2e0 <(anonymous namespace)::Q_QGS__q_manager::innerFunction()::holder>) at /opt/local/var/lnxports/build/_opt_local_site-ports_aqua_qt5-kde-devel/qt5-kde-devel/work/qt-everywhere-opensource-src-5.9.7/qtbase/src/corelib/thread/qthread_unix.cpp:368
#10 0x00007f6e77d4d184 in start_thread () from /lib/x86_64-linux-gnu/libpthread.so.0
#11 0x00007f6e7943403d in clone () from /lib/x86_64-linux-gnu/libc.so.6

Thread 1 (Thread 0x7f6e7f1da780 (LWP 12462)):
[KCrash Handler]
#6  0x00007f6e7936cc37 in raise () from /lib/x86_64-linux-gnu/libc.so.6
#7  0x00007f6e79370028 in abort () from /lib/x86_64-linux-gnu/libc.so.6
#8  0x00007f6e53b28ad2 in Object::getDict (this=<optimized out>) at /opt/local/var/lnxports/build/_opt_local_linux-ports_graphics_poppler/poppler-qt5/work/poppler-0.68.0/poppler/Object.h:247
#9  BaseStream::getDict (this=<optimized out>) at /opt/local/var/lnxports/build/_opt_local_linux-ports_graphics_poppler/poppler-qt5/work/poppler-0.68.0/poppler/Stream.h:320
#10 0x00007f6e5375e5eb in Hints::readTables(BaseStream*, Linearization*, XRef*, SecurityHandler*) () from /opt/local/lib/libpoppler.so.68
#11 0x00007f6e5377a6e8 in PDFDoc::checkLinearization() () from /opt/local/lib/libpoppler.so.68
#12 0x00007f6e5377ca26 in PDFDoc::getPage(int) () from /opt/local/lib/libpoppler.so.68
#13 0x00007f6e53b36608 in Poppler::Page::Page (this=0x278d4c0, doc=0x2758b30, index=0) at /opt/local/var/lnxports/build/_opt_local_linux-ports_graphics_poppler/poppler-qt5/work/poppler-0.68.0/qt5/src/poppler-page.cc:436
#14 0x00007f6e53b25ee6 in Poppler::Document::page (this=0x278d390, index=6) at /opt/local/var/lnxports/build/_opt_local_linux-ports_graphics_poppler/poppler-qt5/work/poppler-0.68.0/qt5/src/poppler-document.cc:113
#15 0x00007f6e53d77b7b in PDFGenerator::loadPages (this=0x2757700, pagesVector=..., rotation=<optimized out>, clear=false) at /opt/local/var/lnxports/build/_opt_local_site-ports_kf5_kf5-okular/kf5-okular-devel/work/okular-5/generators/poppler/generator_pdf.cpp:682
#16 0x00007f6e53d779c3 in PDFGenerator::init (this=0x2757700, pagesVector=..., password=...) at /opt/local/var/lnxports/build/_opt_local_site-ports_kf5_kf5-okular/kf5-okular-devel/work/okular-5/generators/poppler/generator_pdf.cpp:632
#17 0x00007f6e53d777a7 in PDFGenerator::loadDocumentWithPassword (this=0x2757700, filePath=..., pagesVector=..., password=...) at /opt/local/var/lnxports/build/_opt_local_site-ports_kf5_kf5-okular/kf5-okular-devel/work/okular-5/generators/poppler/generator_pdf.cpp:587
#18 0x00007f6e58be53f1 in Okular::DocumentPrivate::openDocumentInternal (this=0x232d6e0, offer=..., isstdin=false, docFile=..., filedata=..., password=...) at /opt/local/var/lnxports/build/_opt_local_site-ports_kf5_kf5-okular/kf5-okular-devel/work/okular-5/core/document.cpp:878
#19 0x00007f6e58bf3a4a in Okular::Document::openDocument (this=<optimized out>, docFile=..., url=..., _mime=..., password=...) at /opt/local/var/lnxports/build/_opt_local_site-ports_kf5_kf5-okular/kf5-okular-devel/work/okular-5/core/document.cpp:2448
#20 0x00007f6e58f19ad5 in Okular::Part::doOpenFile (this=0x234a480, mimeA=..., fileNameToOpenA=..., isCompressedFile=0x7ffe97430f37) at /opt/local/var/lnxports/build/_opt_local_site-ports_kf5_kf5-okular/kf5-okular-devel/work/okular-5/part.cpp:1386
#21 0x00007f6e58f1ad79 in Okular::Part::openFile (this=<optimized out>) at /opt/local/var/lnxports/build/_opt_local_site-ports_kf5_kf5-okular/kf5-okular-devel/work/okular-5/part.cpp:1520
#22 0x00007f6e7ee1daf6 in KParts::ReadOnlyPartPrivate::openLocalFile (this=0x230af70) at /opt/local/var/lnxports/build/_opt_local_site-ports_kf5_KF5-Frameworks/kf5-kparts/work/kparts-5.52.0/src/readonlypart.cpp:190
#23 0x00007f6e7ee1d86d in KParts::ReadOnlyPart::openUrl (this=0x234a480, url=...) at /opt/local/var/lnxports/build/_opt_local_site-ports_kf5_KF5-Frameworks/kf5-kparts/work/kparts-5.52.0/src/readonlypart.cpp:153
#24 0x00007f6e58f1c88f in Okular::Part::openUrl (this=0x234a480, _url=..., swapInsteadOfOpening=<optimized out>) at /opt/local/var/lnxports/build/_opt_local_site-ports_kf5_kf5-okular/kf5-okular-devel/work/okular-5/part.cpp:1705
#25 0x00000000004130e3 in Shell::openUrl (this=0x23900a0, url=..., serializedOptions=...) at /opt/local/var/lnxports/build/_opt_local_site-ports_kf5_kf5-okular/kf5-okular-devel/work/okular-5/shell/shell.cpp:341
#26 0x0000000000413d46 in Shell::openDocument (this=0x23900a0, url=..., serializedOptions=...) at /opt/local/var/lnxports/build/_opt_local_site-ports_kf5_kf5-okular/kf5-okular-devel/work/okular-5/shell/shell.cpp:282
#27 0x000000000040fffd in Okular::main (paths=..., serializedOptions=...) at /opt/local/var/lnxports/build/_opt_local_site-ports_kf5_kf5-okular/kf5-okular-devel/work/okular-5/shell/okular_main.cpp:170
#28 0x000000000040d15a in main (argc=2, argv=<optimized out>) at /opt/local/var/lnxports/build/_opt_local_site-ports_kf5_kf5-okular/kf5-okular-devel/work/okular-5/shell/main.cpp:72

Reported using DrKonqi
Comment 1 RJVB 2019-01-08 14:24:19 UTC
Created attachment 117342 [details]
fatal PDF document
Comment 2 Yuri Chornoivan 2019-01-08 14:28:50 UTC
Works fine, no crashes in Okular 1.6.0, KDE Frameworks 5.53.0, Qt 5.12.0, Poppler 0.72 (64-bits).
Comment 3 Oliver Sander 2019-01-08 14:31:55 UTC
The backtrace looks like the crash is in poppler.  Can you try pdftocairo and see if that triggers the crash?  Can you try a newer version of poppler?
Comment 4 RJVB 2019-01-08 19:42:38 UTC
You're right, it was a poppler issue. An upgrade to poppler 0.73.0 (without changing anything else) fixed it for me.