Bug 418738 - Okular crashes when open digital signed PDF (?)
Summary: Okular crashes when open digital signed PDF (?)
Status: RESOLVED DUPLICATE of bug 407338
Alias: None
Product: okular
Classification: Applications
Component: general (show other bugs)
Version: 1.8.3
Platform: Compiled Sources Linux
: NOR crash
Target Milestone: ---
Assignee: Okular developers
URL:
Keywords: drkonqi
Depends on:
Blocks:
 
Reported: 2020-03-11 14:53 UTC by ElXreno
Modified: 2022-08-09 08:09 UTC (History)
2 users (show)

See Also:
Latest Commit:
Version Fixed In:


Attachments
New crash information added by DrKonqi (3.28 KB, text/plain)
2022-08-09 08:09 UTC, Respawner289
Details

Note You need to log in before you can comment on or make changes to this bug.
Description ElXreno 2020-03-11 14:53:39 UTC
Application: okular (1.8.3)
 (Compiled from sources)
Qt Version: 5.13.2
Frameworks Version: 5.67.0
Operating System: Linux 5.5.8-200.fc31.x86_64 x86_64
Distribution: Fedora 31 (KDE Plasma)

-- Information about the crash:
Every month one service sends me a PDF (probably digital signed) and I can't open it with Okular.
Also I can't share this PDF because it contains private data.

PDF created in StreamServe Communication Server 5.6.2 GA Build 840 (64 bit)

The crash can be reproduced every time.

-- Backtrace:
Application: Okular (okular), signal: Segmentation fault
Using host libthread_db library "/lib64/libthread_db.so.1".
[Current thread is 1 (Thread 0x7f8fae7374c0 (LWP 10976))]

Thread 3 (Thread 0x7f8f9ba1e700 (LWP 10978)):
#0  0x00007f8fb1d0aa6f in poll () from /lib64/libc.so.6
#1  0x00007f8fb09f081e in g_main_context_iterate.isra () from /lib64/libglib-2.0.so.0
#2  0x00007f8fb09f0953 in g_main_context_iteration () from /lib64/libglib-2.0.so.0
#3  0x00007f8fb229e843 in QEventDispatcherGlib::processEvents (this=0x7f8f94000b60, flags=...) at kernel/qeventdispatcher_glib.cpp:425
#4  0x00007f8fb22481db in QEventLoop::exec (this=this@entry=0x7f8f9ba1dd70, flags=..., flags@entry=...) at ../../include/QtCore/../../src/corelib/global/qflags.h:140
#5  0x00007f8fb2098c45 in QThread::exec (this=this@entry=0x7f8fb25a8060 <(anonymous namespace)::Q_QGS__q_manager::innerFunction()::holder>) at ../../include/QtCore/../../src/corelib/global/qflags.h:120
#6  0x00007f8fb2524f6a in QDBusConnectionManager::run (this=0x7f8fb25a8060 <(anonymous namespace)::Q_QGS__q_manager::innerFunction()::holder>) at qdbusconnection.cpp:178
#7  0x00007f8fb2099d96 in QThreadPrivate::start (arg=0x7f8fb25a8060 <(anonymous namespace)::Q_QGS__q_manager::innerFunction()::holder>) at thread/qthread_unix.cpp:360
#8  0x00007f8fb145a4e2 in start_thread () from /lib64/libpthread.so.0
#9  0x00007f8fb1d156d3 in clone () from /lib64/libc.so.6

Thread 2 (Thread 0x7f8fa1408700 (LWP 10977)):
#0  0x00007f8fb1d0aa6f in poll () from /lib64/libc.so.6
#1  0x00007f8fb14e038a in _xcb_conn_wait () from /lib64/libxcb.so.1
#2  0x00007f8fb14e1fea in xcb_wait_for_event () from /lib64/libxcb.so.1
#3  0x00007f8fa160fd48 in QXcbEventQueue::run (this=0x5636ceb34c30) at qxcbeventqueue.cpp:228
#4  0x00007f8fb2099d96 in QThreadPrivate::start (arg=0x5636ceb34c30) at thread/qthread_unix.cpp:360
#5  0x00007f8fb145a4e2 in start_thread () from /lib64/libpthread.so.0
#6  0x00007f8fb1d156d3 in clone () from /lib64/libc.so.6

Thread 1 (Thread 0x7f8fae7374c0 (LWP 10976)):
[KCrash Handler]
#6  HASH_End (context=0x0, result=0x5636cf54af30 "Pp?\317\066V", result_len=0x7fff1e87756c, max_result_len=0) at sechash.c:462
#7  0x00007f8f91ed371f in SignatureHandler::validateSignature (this=this@entry=0x7fff1e8775f0) at /usr/src/debug/poppler-0.73.0-16.fc31.x86_64/poppler/SignatureHandler.cc:362
#8  0x00007f8f91db1ade in FormFieldSignature::validateSignature (this=0x5636cf1a7060, doVerifyCert=<optimized out>, forceRevalidation=<optimized out>, validationTime=4294967295) at /usr/src/debug/poppler-0.73.0-16.fc31.x86_64/poppler/Form.cc:1747
#9  0x00007f8f9200ed09 in Poppler::FormFieldSignature::validate (this=<optimized out>, opt=<optimized out>, validationTime=...) at /usr/src/debug/poppler-0.73.0-16.fc31.x86_64/qt5/src/poppler-form.cc:871
#10 0x00007f8f9200f834 in Poppler::FormFieldSignature::validate (this=0x5636cf1a6cc0, opt=opt@entry=Poppler::FormFieldSignature::ValidateVerifyCertificate) at /usr/src/debug/poppler-0.73.0-16.fc31.x86_64/qt5/src/poppler-form.cc:864
#11 0x00007f8f92078187 in PopplerFormFieldSignature::PopplerFormFieldSignature (this=0x5636cf1ad350, field=0x5636cf1a6cc0) at /usr/src/debug/okular-19.08.3-1.fc31.x86_64/generators/poppler/formfields.cpp:387
#12 0x00007f8f92070b7d in PDFGenerator::addFormFields (this=<optimized out>, popplerPage=<optimized out>, page=<optimized out>) at /usr/src/debug/okular-19.08.3-1.fc31.x86_64/generators/poppler/generator_pdf.cpp:1980
#13 0x00007f8f92070e50 in PDFGenerator::loadPages (this=this@entry=0x5636cf164140, pagesVector=..., rotation=rotation@entry=0, clear=clear@entry=false) at /usr/src/debug/okular-19.08.3-1.fc31.x86_64/generators/poppler/generator_pdf.cpp:781
#14 0x00007f8f920711ea in PDFGenerator::init (this=this@entry=0x5636cf164140, pagesVector=..., password=...) at /usr/src/debug/okular-19.08.3-1.fc31.x86_64/generators/poppler/generator_pdf.cpp:677
#15 0x00007f8f920713fc in PDFGenerator::loadDocumentWithPassword (this=0x5636cf164140, filePath=..., pagesVector=..., password=...) at /usr/src/debug/okular-19.08.3-1.fc31.x86_64/generators/poppler/generator_pdf.cpp:632
#16 0x00007f8f9a557b87 in Okular::DocumentPrivate::openDocumentInternal (this=0x5636cec7dcc0, offer=..., isstdin=isstdin@entry=false, docFile=..., filedata=..., password=...) at /usr/src/debug/okular-19.08.3-1.fc31.x86_64/core/document.cpp:875
#17 0x00007f8f9a55822b in Okular::Document::openDocument (this=this@entry=0x5636cec5afc0, docFile=..., url=..., _mime=..., password=...) at /usr/src/debug/okular-19.08.3-1.fc31.x86_64/core/document.cpp:2446
#18 0x00007f8f9a6c790b in Okular::Part::doOpenFile (this=this@entry=0x5636cec56960, mimeA=..., fileNameToOpenA=..., isCompressedFile=isCompressedFile@entry=0x7fff1e877da7) at /usr/src/debug/okular-19.08.3-1.fc31.x86_64/part.cpp:1431
#19 0x00007f8f9a6c80d9 in Okular::Part::openFile (this=0x5636cec56960) at /usr/src/debug/okular-19.08.3-1.fc31.x86_64/part.cpp:1565
#20 0x00007f8fb3953291 in KParts::ReadOnlyPartPrivate::openLocalFile (this=this@entry=0x5636cec1ed60) at /usr/src/debug/kf5-kparts-5.67.0-1.fc31.x86_64/src/readonlypart.cpp:190
#21 0x00007f8fb395422e in KParts::ReadOnlyPart::openUrl (this=this@entry=0x5636cec56960, url=...) at /usr/src/debug/kf5-kparts-5.67.0-1.fc31.x86_64/src/readonlypart.cpp:153
#22 0x00007f8f9a6b87ce in Okular::Part::openUrl (this=0x5636cec56960, _url=..., swapInsteadOfOpening=<optimized out>) at /usr/src/debug/okular-19.08.3-1.fc31.x86_64/part.cpp:1772
#23 0x00005636ce378d1b in Shell::openUrl (this=0x5636cebf0560, url=..., serializedOptions=...) at /usr/src/debug/okular-19.08.3-1.fc31.x86_64/shell/shell.cpp:280
#24 0x00005636ce378f97 in Shell::openDocument (this=0x5636cebf0560, url=..., serializedOptions=...) at /usr/src/debug/okular-19.08.3-1.fc31.x86_64/shell/shell.cpp:221
#25 0x00005636ce371547 in Okular::main (paths=..., serializedOptions=...) at /usr/src/debug/okular-19.08.3-1.fc31.x86_64/shell/okular_main.cpp:176
#26 0x00005636ce370c2b in main (argc=<optimized out>, argv=<optimized out>) at /usr/src/debug/okular-19.08.3-1.fc31.x86_64/shell/main.cpp:82
[Inferior 1 (process 10976) detached]

The reporter indicates this bug may be a duplicate of or related to bug 414179, bug 407338.

Possible duplicates by query: bug 417241, bug 416077, bug 414179, bug 409684, bug 408837.

Reported using DrKonqi
Comment 1 Yuri Chornoivan 2020-03-11 15:39:02 UTC
Please update or patch your poppler.

https://gitlab.freedesktop.org/poppler/poppler/commit/eaeac5c7dba6f53acef3f0be6b226facecfc5f28.diff

Thanks in advance for your patience.

*** This bug has been marked as a duplicate of bug 407338 ***
Comment 2 Respawner289 2022-08-09 08:09:57 UTC
Created attachment 151187 [details]
New crash information added by DrKonqi

okular (22.04.3) using Qt 5.15.5

If okular try to open frequently updating file (in my case I wotk on LaTeX, which compiles to pdf), it can crash. 
This is was first time when it occurs.

-- Backtrace (Reduced):
#7  0x00007f182c6766c8 in OutlineItem::open() () from /lib64/libpoppler.so.122
#8  0x00007f182c676709 in OutlineItem::hasKids() () from /lib64/libpoppler.so.122
[...]
#12 0x00007f184467228c in Okular::Document::openDocument(QString const&, QUrl const&, QMimeType const&, QString const&) () from /lib64/libOkular5Core.so.10
#13 0x00007f18447beb52 in Okular::Part::doOpenFile(QMimeType const&, QString const&, bool*) () from /usr/lib64/qt5/plugins/okularpart.so
#14 0x00007f18447c0305 in Okular::Part::openFile() () from /usr/lib64/qt5/plugins/okularpart.so