Bug 460759 - PDF form crash (PDF was created on Windows)
Summary: PDF form crash (PDF was created on Windows)
Status: VERIFIED FIXED
Alias: None
Product: okular
Classification: Applications
Component: general (show other bugs)
Version: 22.08.2
Platform: Arch Linux Linux
: NOR crash
Target Milestone: ---
Assignee: Okular developers
URL:
Keywords: drkonqi
Depends on:
Blocks:
 
Reported: 2022-10-20 12:41 UTC by rogerp
Modified: 2023-05-14 20:50 UTC (History)
3 users (show)

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


Attachments
Stack trace (16.56 KB, text/plain)
2022-10-27 13:38 UTC, rogerp
Details
New crash information added by DrKonqi (3.88 KB, text/plain)
2023-04-08 13:33 UTC, kde
Details

Note You need to log in before you can comment on or make changes to this bug.
Description rogerp 2022-10-20 12:41:54 UTC
Application: okular (22.08.2)

Qt Version: 5.15.6
Frameworks Version: 5.99.0
Operating System: Linux 6.0.2-arch1-1 x86_64
Windowing System: X11
Distribution: Arch Linux
DrKonqi: 5.26.1 [KCrashBackend]

-- Information about the crash:
Using Endeavouros Linux 6.0.2-arch1-1

Opened a PDF form from this website https://www.wokinghamu3a.org.uk/wp-content/uploads/2022/01/Application-Form-2022-V1.pdf

When switching to the "forms" mode in Okular to enter data into a PDF form, Okular crashes

The crash can be reproduced every time.

-- Backtrace:
Application: Okular (okular), signal: Segmentation fault

[KCrash Handler]
#4  0x00007f6d1ed59e70 in GfxResources::doLookupFont(char const*) const () from /usr/lib/libpoppler.so.125
#5  0x00007f6d1ed59f42 in GfxResources::lookupFont(char const*) () from /usr/lib/libpoppler.so.125
#6  0x00007f6d1ed5537e in Form::ensureFontsForAllCharacters(GooString const*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, GfxResources*) () from /usr/lib/libpoppler.so.125
#7  0x00007f6d1ed4a34c in ?? () from /usr/lib/libpoppler.so.125
#8  0x00007f6d245bb55d in Poppler::FormFieldText::setText(QString const&) () from /usr/lib/libpoppler-qt5.so.1
#9  0x00007f6d2ff8277d in ?? () from /usr/lib/libOkular5Core.so.10
#10 0x00007f6d46502f3a in QUndoStack::push(QUndoCommand*) () from /usr/lib/libQt5Widgets.so.5
#11 0x00007f6d2712659a in ?? () from /usr/lib/qt/plugins/okularpart.so
#12 0x00007f6d454bd381 in ?? () from /usr/lib/libQt5Core.so.5
#13 0x00007f6d2712b573 in ?? () from /usr/lib/qt/plugins/okularpart.so
#14 0x00007f6d454bd381 in ?? () from /usr/lib/libQt5Core.so.5
#15 0x00007f6d462b316a in QLineEdit::textEdited(QString const&) () from /usr/lib/libQt5Widgets.so.5
#16 0x00007f6d462b03e9 in ?? () from /usr/lib/libQt5Widgets.so.5
#17 0x00007f6d454bd530 in ?? () from /usr/lib/libQt5Core.so.5
#18 0x00007f6d462be85a in QWidgetLineControl::textEdited(QString const&) () from /usr/lib/libQt5Widgets.so.5
#19 0x00007f6d462b7c94 in QWidgetLineControl::finishChange(int, bool, bool) () from /usr/lib/libQt5Widgets.so.5
#20 0x00007f6d462c2e4e in QWidgetLineControl::processKeyEvent(QKeyEvent*) () from /usr/lib/libQt5Widgets.so.5
#21 0x00007f6d462b56f4 in QLineEdit::keyPressEvent(QKeyEvent*) () from /usr/lib/libQt5Widgets.so.5
#22 0x00007f6d461af5d1 in QWidget::event(QEvent*) () from /usr/lib/libQt5Widgets.so.5
#23 0x00007f6d46178b1c in QApplicationPrivate::notify_helper(QObject*, QEvent*) () from /usr/lib/libQt5Widgets.so.5
#24 0x00007f6d4617ddf8 in QApplication::notify(QObject*, QEvent*) () from /usr/lib/libQt5Widgets.so.5
#25 0x00007f6d4548cb88 in QCoreApplication::notifyInternal2(QObject*, QEvent*) () from /usr/lib/libQt5Core.so.5
#26 0x00007f6d461cf18b in ?? () from /usr/lib/libQt5Widgets.so.5
#27 0x00007f6d46178b1c in QApplicationPrivate::notify_helper(QObject*, QEvent*) () from /usr/lib/libQt5Widgets.so.5
#28 0x00007f6d4548cb88 in QCoreApplication::notifyInternal2(QObject*, QEvent*) () from /usr/lib/libQt5Core.so.5
#29 0x00007f6d4593fb50 in QGuiApplicationPrivate::processKeyEvent(QWindowSystemInterfacePrivate::KeyEvent*) () from /usr/lib/libQt5Gui.so.5
#30 0x00007f6d45928985 in QWindowSystemInterface::sendWindowSystemEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/libQt5Gui.so.5
#31 0x00007f6d4072f6c0 in ?? () from /usr/lib/libQt5XcbQpa.so.5
#32 0x00007f6d43e7081b in g_main_context_dispatch () from /usr/lib/libglib-2.0.so.0
#33 0x00007f6d43ec6ec9 in ?? () from /usr/lib/libglib-2.0.so.0
#34 0x00007f6d43e6f0d2 in g_main_context_iteration () from /usr/lib/libglib-2.0.so.0
#35 0x00007f6d454d750c in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/libQt5Core.so.5
#36 0x00007f6d4548532c in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/libQt5Core.so.5
#37 0x00007f6d4548fe59 in QCoreApplication::exec() () from /usr/lib/libQt5Core.so.5
#38 0x000055aa01e49882 in ?? ()
#39 0x00007f6d44c3c290 in ?? () from /usr/lib/libc.so.6
#40 0x00007f6d44c3c34a in __libc_start_main () from /usr/lib/libc.so.6
#41 0x000055aa01e4a445 in ?? ()
[Inferior 1 (process 15103) detached]

Reported using DrKonqi
Comment 1 Albert Astals Cid 2022-10-26 21:19:00 UTC
Do you get any output if you run okular from the command line and open the file?

Can you install debug symbols to get us a backtrace with line information?

Do you have adobe-base-14-fonts installed by any chance?
Comment 2 rogerp 2022-10-27 13:36:41 UTC
(In reply to Albert Astals Cid from comment #1)
> Do you get any output if you run okular from the command line and open the
> file?
$ okular
20 -- exe=/usr/bin/okular
13 -- platform=xcb
11 -- display=:0
15 -- appname=okular
17 -- apppath=/usr/bin
10 -- signal=11
9 -- pid=8779
19 -- appversion=22.08.2
19 -- programname=Okular
31 -- bugaddress=submit@bugs.kde.org
12 -- startupid=0
KCrash: crashing... crashRecursionCounter = 2
KCrash: Application Name = okular path = /usr/bin pid = 8779
KCrash: Arguments: /usr/bin/okular 
KCrash: Attempting to start /usr/lib/drkonqi
r
[1]+  Stopped                 okular
$ QSocketNotifier: Invalid socket 5 and type 'Read', disabling...
QSocketNotifier: Invalid socket 13 and type 'Read', disabling...
Unable to start Dr. Konqi
Re-raising signal for core dump handling.

[1]+  Segmentation fault      (core dumped) okular

> 
> Can you install debug symbols to get us a backtrace with line information?
> 
see attached but obviously it says it can't find the symbol table. I couldn't find the symbol table for okular.

> Do you have adobe-base-14-fonts installed by any chance?
No. I use TeXlive but when I checked ``cat fonts.dir | grep adobe-base-14`` it returned nothing
Comment 3 rogerp 2022-10-27 13:38:34 UTC
Created attachment 153234 [details]
Stack trace

This is a log produced by gdb, using (gdb) exec /usr/bin/okular
Comment 4 Albert Astals Cid 2022-11-22 23:48:36 UTC
Can you please follow https://community.kde.org/Guidelines_and_HOWTOs/Debugging/How_to_create_useful_crash_reports#Arch_Linux so we get line numbers in the crash making it much more useful?
Comment 5 kde 2023-04-08 13:33:25 UTC
Created attachment 157956 [details]
New crash information added by DrKonqi

okular (22.12.3) using Qt 5.15.8

Activating "Show forms". The starting to type in a form.

-- Backtrace (Reduced):
#4  0x00007fb72655a760 in GfxResources::doLookupFont(char const*) const () from /usr/lib/libpoppler.so.126
#5  0x00007fb72655a832 in GfxResources::lookupFont(char const*) () from /usr/lib/libpoppler.so.126
#6  0x00007fb726555b9e in Form::ensureFontsForAllCharacters(GooString const*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, GfxResources*) () from /usr/lib/libpoppler.so.126
[...]
#8  0x00007fb72c2f357d in Poppler::FormFieldText::setText(QString const&) () from /usr/lib/libpoppler-qt5.so.1
[...]
#10 0x00007fb73d3034fa in QUndoStack::push(QUndoCommand*) () from /usr/lib/libQt5Widgets.so.5
Comment 6 Albert Astals Cid 2023-04-09 08:57:15 UTC
(In reply to kde from comment #5)
> Created attachment 157956 [details]
> New crash information added by DrKonqi
> 
> okular (22.12.3) using Qt 5.15.8
> 
> Activating "Show forms". The starting to type in a form.
> 
> -- Backtrace (Reduced):
> #4  0x00007fb72655a760 in GfxResources::doLookupFont(char const*) const ()
> from /usr/lib/libpoppler.so.126
> #5  0x00007fb72655a832 in GfxResources::lookupFont(char const*) () from
> /usr/lib/libpoppler.so.126
> #6  0x00007fb726555b9e in Form::ensureFontsForAllCharacters(GooString
> const*, std::__cxx11::basic_string<char, std::char_traits<char>,
> std::allocator<char> > const&, GfxResources*) () from
> /usr/lib/libpoppler.so.126
> [...]
> #8  0x00007fb72c2f357d in Poppler::FormFieldText::setText(QString const&) ()
> from /usr/lib/libpoppler-qt5.so.1
> [...]
> #10 0x00007fb73d3034fa in QUndoStack::push(QUndoCommand*) () from
> /usr/lib/libQt5Widgets.so.5

Which PDF file does that happen with?
Comment 7 kde 2023-04-11 11:50:20 UTC
Sent it to you via mail. Thanks for the fast response.
Comment 8 Albert Astals Cid 2023-05-05 22:53:24 UTC
This is fixed in poppler 23.05
Comment 9 kde 2023-05-14 20:50:41 UTC
Can confirm, that this works now.