Bug 470446 - Crash While Editing Forms
Summary: Crash While Editing Forms
Status: REPORTED
Alias: None
Product: okular
Classification: Applications
Component: general (show other bugs)
Version: 23.04.1
Platform: openSUSE Linux
: NOR crash
Target Milestone: ---
Assignee: Okular developers
URL:
Keywords: drkonqi
Depends on:
Blocks:
 
Reported: 2023-05-30 11:50 UTC by İsmail
Modified: 2023-09-07 06:30 UTC (History)
2 users (show)

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


Attachments
the form (827.15 KB, application/pdf)
2023-09-07 06:30 UTC, İsmail
Details

Note You need to log in before you can comment on or make changes to this bug.
Description İsmail 2023-05-30 11:50:37 UTC
Application: okular (23.04.1)

Qt Version: 5.15.9
Frameworks Version: 5.106.0
Operating System: Linux 6.3.2-1-default x86_64
Windowing System: Wayland
Distribution: "openSUSE Tumbleweed"
DrKonqi: 5.27.5 [KCrashBackend]

-- Information about the crash:
I was filling and editing forms in a document. When I enabled the forms for the next time the blinking cursor was appearing in each field, I think each field was having the focus at the same time. Then it crashed after a while.

The reporter is unsure if this crash is reproducible.

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

[KCrash Handler]
#4  0x00007f351d369a04 in __memmove_avx_unaligned_erms () from /lib64/libc.so.6
#5  0x00007f34dde5f944 in void std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::_M_construct<char*>(char*, char*, std::forward_iterator_tag) [clone .isra.0] () from /lib64/libpoppler.so.128
#6  0x00007f34dde6315e in HorizontalTextLayouter::HorizontalTextLayouter(GooString const*, Form const*, GfxFont const*, std::optional<double>, bool) [clone .isra.0] () from /lib64/libpoppler.so.128
#7  0x00007f34ddd0d331 in AnnotAppearanceBuilder::drawText(GooString const*, Form const*, GooString const*, GfxResources const*, AnnotBorder const*, AnnotAppearanceCharacs const*, PDFRectangle const*, VariableTextQuadding, XRef*, Dict*, int, int) () from /lib64/libpoppler.so.128
#8  0x00007f34ddd0dd7b in AnnotAppearanceBuilder::drawFormField(FormField const*, Form const*, GfxResources const*, GooString const*, AnnotBorder const*, AnnotAppearanceCharacs const*, PDFRectangle const*, GooString const*, XRef*, Dict*) () from /lib64/libpoppler.so.128
#9  0x00007f34ddd10e93 in AnnotWidget::generateFieldAppearance() () from /lib64/libpoppler.so.128
#10 0x00007f34ddd122c8 in AnnotWidget::draw(Gfx*, bool) () from /lib64/libpoppler.so.128
#11 0x00007f34dddb3fcb in Page::displaySlice(OutputDev*, double, double, int, bool, bool, int, int, int, int, bool, bool (*)(void*), void*, bool (*)(Annot*, void*), void*, bool) () from /lib64/libpoppler.so.128
#12 0x00007f34de007ca5 in Poppler::Page::renderToImage (this=this@entry=0x7f34ec0120e0, xres=xres@entry=9.6754686555130025, yres=yres@entry=9.6636259977194978, xPos=xPos@entry=-1, yPos=yPos@entry=-1, w=w@entry=-1, h=h@entry=-1, rotate=Poppler::Page::Rotate0, partialUpdateCallback=0x0, shouldDoPartialUpdateCallback=0x0, shouldAbortRenderCallback=0x7f34de055de0 <shouldAbortRenderCallback(QVariant const&)>, payload=...) at /usr/src/debug/poppler-23.05.0/qt5/src/poppler-page.cc:570
#13 0x00007f34de05b65f in PDFGenerator::image (this=0x55600a36c2b0, request=0x55600a82a9b0) at /usr/src/debug/okular-23.04.1/generators/poppler/generator_pdf.cpp:1208
#14 0x00007f35101c0340 in Okular::PixmapGenerationThread::run (this=0x55600a63b560) at /usr/src/debug/okular-23.04.1/core/generator_p.cpp:59
#15 0x00007f351d903b7d in ?? () from /lib64/libQt5Core.so.5
#16 0x00007f351d292ab4 in start_thread () from /lib64/libc.so.6
#17 0x00007f351d319b60 in clone3 () from /lib64/libc.so.6

Thread 8 (Thread 0x7f350a7fc6c0 (LWP 7189) "okular:sh2"):
#1  0x00007f351d291da0 in pthread_cond_wait@@GLIBC_2.3.2 () from /lib64/libc.so.6
#2  0x00007f3510ac7bfb in cnd_wait (mtx=0x55600987ab08, cond=0x55600987ab30) at ../src/c11/impl/threads_posix.c:135
#3  util_queue_thread_func (input=input@entry=0x556009876900) at ../src/util/u_queue.c:290
#4  0x00007f3510b0eb37 in impl_thrd_routine (p=<optimized out>) at ../src/c11/impl/threads_posix.c:67
#5  0x00007f351d292ab4 in start_thread () from /lib64/libc.so.6
#6  0x00007f351d319b60 in clone3 () from /lib64/libc.so.6

Thread 7 (Thread 0x7f350affd6c0 (LWP 7188) "okular:sh1"):
#1  0x00007f351d291da0 in pthread_cond_wait@@GLIBC_2.3.2 () from /lib64/libc.so.6
#2  0x00007f3510ac7bfb in cnd_wait (mtx=0x55600987ab08, cond=0x55600987ab30) at ../src/c11/impl/threads_posix.c:135
#3  util_queue_thread_func (input=input@entry=0x556009879410) at ../src/util/u_queue.c:290
#4  0x00007f3510b0eb37 in impl_thrd_routine (p=<optimized out>) at ../src/c11/impl/threads_posix.c:67
#5  0x00007f351d292ab4 in start_thread () from /lib64/libc.so.6
#6  0x00007f351d319b60 in clone3 () from /lib64/libc.so.6

Thread 6 (Thread 0x7f350b7fe6c0 (LWP 7187) "okular:sh0"):
#1  0x00007f351d291da0 in pthread_cond_wait@@GLIBC_2.3.2 () from /lib64/libc.so.6
#2  0x00007f3510ac7bfb in cnd_wait (mtx=0x55600987ab08, cond=0x55600987ab30) at ../src/c11/impl/threads_posix.c:135
#3  util_queue_thread_func (input=input@entry=0x556009878d00) at ../src/util/u_queue.c:290
#4  0x00007f3510b0eb37 in impl_thrd_routine (p=<optimized out>) at ../src/c11/impl/threads_posix.c:67
#5  0x00007f351d292ab4 in start_thread () from /lib64/libc.so.6
#6  0x00007f351d319b60 in clone3 () from /lib64/libc.so.6

Thread 5 (Thread 0x7f350bfff6c0 (LWP 7186) "okular:disk$0"):
#1  0x00007f351d291da0 in pthread_cond_wait@@GLIBC_2.3.2 () from /lib64/libc.so.6
#2  0x00007f3510ac7bfb in cnd_wait (mtx=0x5560098804b8, cond=0x5560098804e0) at ../src/c11/impl/threads_posix.c:135
#3  util_queue_thread_func (input=input@entry=0x55600987a5b0) at ../src/util/u_queue.c:290
#4  0x00007f3510b0eb37 in impl_thrd_routine (p=<optimized out>) at ../src/c11/impl/threads_posix.c:67
#5  0x00007f351d292ab4 in start_thread () from /lib64/libc.so.6
#6  0x00007f351d319b60 in clone3 () from /lib64/libc.so.6

Thread 4 (Thread 0x7f35131fe6c0 (LWP 7185) "WaylandEventThr"):
#1  0x00007f351bee03e6 in wl_display_prepare_read_queue () from /lib64/libwayland-client.so.0
#2  0x00007f351b92af24 in QtWaylandClient::EventThread::prepareReadQueue (this=0x5560097fdc50) at qwaylanddisplay.cpp:261
#3  QtWaylandClient::EventThread::readAndDispatchEvents (this=<optimized out>) at qwaylanddisplay.cpp:154
#4  QtWaylandClient::EventThread::waitForReading (this=0x5560097fdc50) at qwaylanddisplay.cpp:236
#5  QtWaylandClient::EventThread::run (this=0x5560097fdc50) at qwaylanddisplay.cpp:208
#6  0x00007f351d903b7d in ?? () from /lib64/libQt5Core.so.5
#7  0x00007f351d292ab4 in start_thread () from /lib64/libc.so.6
#8  0x00007f351d319b60 in clone3 () from /lib64/libc.so.6

Thread 3 (Thread 0x7f35139ff6c0 (LWP 7184) "WaylandEventThr"):
#1  0x00007f351d291da0 in pthread_cond_wait@@GLIBC_2.3.2 () from /lib64/libc.so.6
#2  0x00007f351d9093fb in QWaitCondition::wait(QMutex*, QDeadlineTimer) () from /lib64/libQt5Core.so.5
#3  0x00007f351b92ae6f in QtWaylandClient::EventThread::waitForReading (this=0x5560097fdcc0) at qwaylanddisplay.cpp:244
#4  QtWaylandClient::EventThread::run (this=0x5560097fdcc0) at qwaylanddisplay.cpp:208
#5  0x00007f351d903b7d in ?? () from /lib64/libQt5Core.so.5
#6  0x00007f351d292ab4 in start_thread () from /lib64/libc.so.6
#7  0x00007f351d319b60 in clone3 () from /lib64/libc.so.6

Thread 2 (Thread 0x7f35191ff6c0 (LWP 7183) "QDBusConnection"):
#1  0x00007f351c316c5e in ?? () from /lib64/libglib-2.0.so.0
#2  0x00007f351c316d7c in g_main_context_iteration () from /lib64/libglib-2.0.so.0
#3  0x00007f351db45f3e in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /lib64/libQt5Core.so.5
#4  0x00007f351daeb40b in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /lib64/libQt5Core.so.5
#5  0x00007f351d90294e in QThread::exec() () from /lib64/libQt5Core.so.5
#6  0x00007f351e586257 in QDBusConnectionManager::run (this=0x7f351e5ff060 <(anonymous namespace)::Q_QGS__q_manager::innerFunction()::holder>) at qdbusconnection.cpp:179
#7  0x00007f351d903b7d in ?? () from /lib64/libQt5Core.so.5
#8  0x00007f351d292ab4 in start_thread () from /lib64/libc.so.6
#9  0x00007f351d319b60 in clone3 () from /lib64/libc.so.6

Thread 1 (Thread 0x7f351b35d980 (LWP 7182) "okular"):
#1  0x00007f351d295fca in pthread_mutex_lock@@GLIBC_2.2.5 () from /lib64/libc.so.6
#2  0x00007f34ddcfeb5e in Annot::invalidateAppearance() () from /lib64/libpoppler.so.128
#3  0x00007f34ddd11ffc in AnnotWidget::updateAppearanceStream() () from /lib64/libpoppler.so.128
#4  0x00007f34ddd30a82 in FormField::updateChildrenAppearance() () from /lib64/libpoppler.so.128
#5  0x00007f34ddffeb67 in Poppler::FormFieldText::setText (this=<optimized out>, text=...) at /usr/src/debug/poppler-23.05.0/qt5/src/poppler-form.cc:422
#6  0x00007f35101b99ed in Okular::EditFormTextCommand::redo (this=0x7f34ec01aaa0) at /usr/src/debug/okular-23.04.1/core/documentcommands.cpp:459
#7  0x00007f351eb44055 in QUndoStack::push (this=0x556009b231a0, cmd=<optimized out>) at util/qundostack.cpp:639
#8  0x00007f3510322582 in QtPrivate::FunctorCall<QtPrivate::IndexesList<0, 1, 2, 3, 4, 5>, QtPrivate::List<int, Okular::FormFieldText*, QString const&, int, int, int>, void, void (Okular::Document::*)(int, Okular::FormFieldText*, QString const&, int, int, int)>::call (arg=<optimized out>, o=<optimized out>, f=<optimized out>) at /usr/include/qt5/QtCore/qobjectdefs_impl.h:152
#9  QtPrivate::FunctionPointer<void (Okular::Document::*)(int, Okular::FormFieldText*, QString const&, int, int, int)>::call<QtPrivate::List<int, Okular::FormFieldText*, QString const&, int, int, int>, void> (arg=<optimized out>, o=<optimized out>, f=<optimized out>) at /usr/include/qt5/QtCore/qobjectdefs_impl.h:185
#10 QtPrivate::QSlotObject<void (Okular::Document::*)(int, Okular::FormFieldText*, QString const&, int, int, int), QtPrivate::List<int, Okular::FormFieldText*, QString const&, int, int, int>, void>::impl (which=<optimized out>, this_=<optimized out>, r=<optimized out>, a=<optimized out>, ret=<optimized out>) at /usr/include/qt5/QtCore/qobjectdefs_impl.h:418
#11 0x00007f351db25232 in ?? () from /lib64/libQt5Core.so.5
#12 0x00007f3510326889 in FormWidgetsController::formTextChangedByWidget (_t6=<optimized out>, _t5=<optimized out>, _t4=<optimized out>, _t3=..., _t2=0x55600a451390, _t1=<optimized out>, this=0x55600a4dba80) at /usr/src/debug/okular-23.04.1/build/okularpart_autogen/EAH7DXM7NH/moc_formwidgets.cpp:397
#13 FormLineEdit::slotChanged (this=0x55600a550050) at /usr/src/debug/okular-23.04.1/part/formwidgets.cpp:571
#14 0x00007f351db25232 in ?? () from /lib64/libQt5Core.so.5
#15 0x00007f351e8eaf05 in QLineEdit::textEdited (this=<optimized out>, _t1=...) at .moc/moc_qlineedit.cpp:454
#16 0x00007f351e8e8584 in QLineEditPrivate::_q_textEdited (this=0x55600a5500c0, text=...) at widgets/qlineedit_p.cpp:132
#17 0x00007f351db251d3 in ?? () from /lib64/libQt5Core.so.5
#18 0x00007f351e8f2595 in QWidgetLineControl::textEdited (this=this@entry=0x55600a550350, _t1=...) at .moc/moc_qwidgetlinecontrol_p.cpp:280
#19 0x00007f351e8f5c8b in QWidgetLineControl::finishChange (this=0x55600a550350, validateFromState=<optimized out>, update=<optimized out>, edited=<optimized out>) at widgets/qwidgetlinecontrol.cpp:735
#20 0x00007f351e8f897c in QWidgetLineControl::processKeyEvent (this=0x55600a550350, event=event@entry=0x7fffc750eb20) at widgets/qwidgetlinecontrol.cpp:1943
#21 0x00007f351e8eb08f in QLineEdit::keyPressEvent (this=0x55600a550050, event=0x7fffc750eb20) at widgets/qlineedit.cpp:1793
#22 0x00007f351e7e7ac5 in QWidget::event (this=0x55600a550050, event=0x7fffc750eb20) at kernel/qwidget.cpp:8704
#23 0x00007f351e7a51ae in QApplicationPrivate::notify_helper (this=this@entry=0x5560097c78c0, receiver=receiver@entry=0x55600a550050, e=e@entry=0x7fffc750eb20) at kernel/qapplication.cpp:3640
#24 0x00007f351e7ad0c8 in QApplication::notify (this=<optimized out>, receiver=0x55600a550050, e=0x7fffc750eb20) at kernel/qapplication.cpp:3002
#25 0x00007f351daec978 in QCoreApplication::notifyInternal2(QObject*, QEvent*) () from /lib64/libQt5Core.so.5
#26 0x00007f351e802d7a in QWidgetWindow::event (this=0x556009c90a50, event=0x7fffc750eb20) at kernel/qwidgetwindow.cpp:293
#27 0x00007f351e7a51ae in QApplicationPrivate::notify_helper (this=<optimized out>, receiver=0x556009c90a50, e=0x7fffc750eb20) at kernel/qapplication.cpp:3640
#28 0x00007f351daec978 in QCoreApplication::notifyInternal2(QObject*, QEvent*) () from /lib64/libQt5Core.so.5
#29 0x00007f351df786d9 in QGuiApplicationPrivate::processKeyEvent (e=0x55600a8312e0) at kernel/qguiapplication.cpp:2417
#30 0x00007f351df500fc in QWindowSystemInterface::sendWindowSystemEvents (flags=...) at kernel/qwindowsysteminterface.cpp:1169
#31 0x00007f351b961480 in userEventSourceDispatch (source=<optimized out>) at qeventdispatcher_glib.cpp:74
#32 0x00007f351c3168d8 in g_main_context_dispatch () from /lib64/libglib-2.0.so.0
#33 0x00007f351c316ce8 in ?? () from /lib64/libglib-2.0.so.0
#34 0x00007f351c316d7c in g_main_context_iteration () from /lib64/libglib-2.0.so.0
#35 0x00007f351db45f26 in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /lib64/libQt5Core.so.5
#36 0x00007f351daeb40b in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /lib64/libQt5Core.so.5
#37 0x00007f351daf38a0 in QCoreApplication::exec() () from /lib64/libQt5Core.so.5
#38 0x00007f351df6fe3c in QGuiApplication::exec () at kernel/qguiapplication.cpp:1870
#39 0x00007f351e7a5125 in QApplication::exec () at kernel/qapplication.cpp:2832
#40 0x0000556007d15ffe in main (argc=<optimized out>, argv=<optimized out>) at /usr/src/debug/okular-23.04.1/shell/main.cpp:109
[Inferior 1 (process 7182) detached]

The reporter indicates this bug may be a duplicate of or related to bug 167795.

Reported using DrKonqi
Comment 1 Sune Vuorela 2023-05-30 12:13:03 UTC
Can you provide the document ?
Comment 2 İsmail 2023-09-07 06:30:28 UTC
Created attachment 161485 [details]
the form

Hi Sune! Sorry for the late reply. This is because I didn't received notifications from the bugs.kde.org. Well I have attached the form in which I was getting crash. Please check it.