Summary: | Okular crashed while annotating document | ||
---|---|---|---|
Product: | [Applications] okular | Reporter: | info |
Component: | general | Assignee: | Okular developers <okular-devel> |
Status: | RESOLVED FIXED | ||
Severity: | crash | CC: | aacid, haxtibal, info, simgunz |
Priority: | NOR | Keywords: | drkonqi |
Version First Reported In: | 1.11.1 | ||
Target Milestone: | --- | ||
Platform: | openSUSE | ||
OS: | Linux | ||
Latest Commit: | Version Fixed In: | ||
Sentry Crash Report: | |||
Attachments: |
New crash information added by DrKonqi
New crash information added by DrKonqi Places to mark in the example document |
Description
info
2020-09-17 22:24:40 UTC
Created attachment 131734 [details]
New crash information added by DrKonqi
okular (1.11.1) using Qt 5.15.0
Happend again. Stack-trace for this time is attached.
-- Backtrace (Reduced):
#4 Okular::Page::rotation (this=0x561700000000) at /usr/src/debug/okular-20.08.1-1.1.x86_64/core/page.cpp:173
#5 0x00007fc59354fd28 in PageView::textSelectionForItem (this=0x561700bfe520, item=0x56170166fab0, startPoint=..., endPoint=...) at /usr/src/debug/okular-20.08.1-1.1.x86_64/ui/pageviewutils.cpp:50
#6 0x00007fc593533050 in TextSelectorEngine::event (this=0x5617015495e0, type=<optimized out>, button=<optimized out>, nX=<optimized out>, nY=<optimized out>, xScale=<optimized out>, yScale=<optimized out>) at /usr/src/debug/okular-20.08.1-1.1.x86_64/ui/annotationtools.h:75
#7 0x00007fc59353a8f4 in PageViewAnnotator::performRouteMouseOrTabletEvent (this=0x561700a0ec50, eventType=AnnotatorEngine::Move, button=AnnotatorEngine::Left, modifiers=..., pos=..., item=<optimized out>) at /usr/include/qt5/QtCore/qrect.h:269
#8 0x00007fc59f0b60de in QWidget::event (this=this@entry=0x561700bfe520, event=event@entry=0x7fff8a71f930) at kernel/qwidget.cpp:9027
I have found an anomaly. As far as I can see up till now, the highlighter tool only stops working after having switched to the next page. So, with the behavior that might be linked to the crash, I can not annotate the next page until I deactivate and activate the highlighter tool again. Though note, that this does not always occur! While trying to reproduce it, switching pages worked. Created attachment 131779 [details]
New crash information added by DrKonqi
okular (1.11.1) using Qt 5.15.0
Another crash stack for the same situation.
-- Backtrace (Reduced):
#4 QListData::isEmpty (this=<error reading variable: Cannot access memory at address 0xffffd7e8fd894855>) at /usr/include/qt5/QtCore/qlist.h:201
#5 QList<TinyTextEntity*>::isEmpty (this=<error reading variable: Cannot access memory at address 0xffffd7e8fd894855>) at /usr/include/qt5/QtCore/qlist.h:201
#6 Okular::TextPage::textArea (this=0xffffd7e8fd894855, sel=0x7ffeca49e540) at /usr/src/debug/okular-20.08.1-1.1.x86_64/core/textpage.cpp:327
#7 0x00007fc2c845bdcd in PageView::textSelectionForItem (this=<optimized out>, item=0x5632478c72f0, startPoint=..., endPoint=...) at /usr/src/debug/okular-20.08.1-1.1.x86_64/ui/pageview.cpp:3623
#8 0x00007fc2c843f050 in TextSelectorEngine::event (this=0x563247601530, type=<optimized out>, button=<optimized out>, nX=<optimized out>, nY=<optimized out>, xScale=<optimized out>, yScale=<optimized out>) at /usr/src/debug/okular-20.08.1-1.1.x86_64/ui/annotationtools.h:75
Can you provide a precise list of steps to reproduce this? Is 'continuous mode' for annotation active when you use the highlighter? From what I understand the steps are more or less these: 1. Continuous mode is active? 2. Click on highlighter action on the toolbar 3. Highlight some text 4. Scroll to next page (how? mouse or keyboard?) 5. Highlight some text 6. Crash happens Can you also attach a pdf where the crash happens (or does it happen in any pdf?) Please answer Simone's questions > Can you provide a precise list of steps to reproduce this? Not for the crash, because that simply happens after doing what I will describe below for a couple of minutes. (hint: I noticed that the crash happens more often on less potent hardware) However, I can now reliably reproduce the condition in that the 'continuous mode' fails. First, download https://www.ncbi.nlm.nih.gov/pmc/articles/PMC2631779/pdf/11384513.pdf and save it in /tmp/ (See attachment "11384513_ptm.pdf" for the exact places to mark) - Open the file in Okular. - Click "Highlighter" tool in ToolBar of Okular, to activate it - Scroll down - Mark "outbreak" in the paragraphs on the right - Doubleclick the new annotation, do not move the mouse now, directly type "asdf" - Hit escape - Scroll a bit up - Mark "information" on the right - Doubleclick the new annotation, do not move the mouse now, directly type "asdf" - Hit escape - Mark " parts of " on the right - Doubleclick the new annotation, do not move the mouse now, directly type "asdf" - Hit escape - Mark "Cen" on the right - Doubleclick the new annotation, do not move the mouse now, directly type "asdf" - Hit escape - Hit Ctrl + S - Scroll down until you see ~10% of the next page - Mark "The objectives of FoodNet were to accurately estimate the burden of foodborne disease in the United States, investigate the sources of infection in outbreaks and sporadic cases, and build public health infrastructure for dealing" on the right side. - Doubleclick the new annotation, do not move the mouse now, directly type "asdf" - Hit escape - Hit Ctrl + S - Scroll down - Try to mark first word on the next page (383) -> doesn't work Maybe that can provide you with a hint on what could cause the crash. Created attachment 132135 [details]
Places to mark in the example document
(I just randomly selected this document, this was not the document I was having the crashes with). I did not yet have the time to try to get Okular to crash with it.
ok, someone needs to try to reproduce. Maybe if you have time try running valgrind okular (be patient it will be slow) and see if you can make it crash, if so please attach the log here. I confirm the problem regarding not being able to highlight text, but not the crash. I have repeated all the steps as described. The problem appears also with this simplified list of steps: 1. Select a text tool annotation (e.g highlighter) 2. Select text on page 1 3. Double click the annotation 4a. Highlight text on page 2 Result: No text selected 4b. Highlight text on page 1 again 5b. Highlight text on page 2 Result: Text is correctly selected Possibly this and the crash are two separates bugs. (In reply to Simone Gaiarin from comment #9) > Possibly this and the crash are two separates bugs. Imo there's a good chance that https://invent.kde.org/graphics/okular/-/merge_requests/291 fixes both "text no longer selected" and "crash". Currently TextSelectorEngine holds a raw pointer to a PageViewItem owned by PageViewPrivate much longer than intended. Some unrelated PageView interaction can delete that PageViewItem in the meantime, leaving TextSelectorEngine::m_lockedItem dangling and causing crash on next access to m_lockedItem in TextSelectorEngine::event. The attached crash dump is in line with that guess, so it may be worth trying MR 291. Closing manually because bugzilla notifier did not trigger when MR 291 was merged. You can test by compiling git master, or wait for next release 20.08.3 which is currently scheduled for November 5, 2020. > bugzilla notifier did not trigger when MR 291 was merged
Because there is no bug number 446658 :)
|