/usr/bin/evince:11:strstr:TextSelectionPainter::hasGlyphLessFont:TextSelectionPainter::endPage:TextPage::drawSelection:poppler_page_render_selection

Bug #1849773 reported by errors.ubuntu.com bug bridge
42
This bug affects 4 people
Affects Status Importance Assigned to Milestone
poppler (Ubuntu)
Fix Released
High
Julian Andres Klode
Eoan
Fix Released
High
Julian Andres Klode

Bug Description

[Impact]
Selecting text in evince crashes for some files in eoan

[Test case]

Open the pdf in bug 1855596 and select some text.

[Regression potential]
This adds a check for a null pointer before using the pointer; it's limited to a small function checking if a font is glyphless so there is basically no risk for regressio

[Error tracker]
The Ubuntu Error Tracker has been receiving reports about a problem regarding evince. This problem was most recently seen with package version 3.34.1-1, the problem page at https://errors.ubuntu.com/problem/da5fffc9beac869c0cf863d931ef170c60bb7d93 contains more details, including versions of packages affected, stacktrace or traceback, and individual crash reports.
If you do not have access to the Ubuntu Error Tracker and are a software developer, you can request it at http://forms.canonical.com/reports/.

tags: added: rls-ff-incoming
Revision history for this message
Launchpad Janitor (janitor) wrote :

Status changed to 'Confirmed' because the bug affects multiple users.

Changed in evince (Ubuntu):
status: New → Confirmed
Changed in evince (Ubuntu):
importance: Undecided → High
description: updated
Revision history for this message
Sebastien Bacher (seb128) wrote :

While the bug would be good to fix it's a bit too specific to qualify as a release issue, tagging rls-ff-notfixing

tags: added: rls-ff-notfixing
removed: rls-ff-incoming
Revision history for this message
Sebastien Bacher (seb128) wrote :

The segfault is in the code of the patch added by Julian to fix bug #1830473

Julian, could you have a look to this regression?

tags: added: lts-desktop-wishlist
Changed in evince (Ubuntu):
assignee: nobody → Julian Andres Klode (juliank)
Revision history for this message
Sebastien Bacher (seb128) wrote :

Looking to the backtrace of the other report
        font_name = <error reading variable font_name (Cannot access memory at address 0x0)>

Looks like font_name can be null but the code doesn't handle that case

Revision history for this message
Sebastien Bacher (seb128) wrote :

Julian, could you also add one of those OCR generated PDF that created the initial issue to launchpad? would make easier to test the patch in newer versions

Revision history for this message
Julian Andres Klode (juliank) wrote :

The patch I sent upstream in

https://gitlab.freedesktop.org/poppler/poppler/merge_requests/280

does not look at the font name, so should not be affected by the issue.

affects: evince (Ubuntu) → poppler (Ubuntu)
Changed in poppler (Ubuntu):
status: Confirmed → In Progress
Revision history for this message
Julian Andres Klode (juliank) wrote :
Revision history for this message
Julian Andres Klode (juliank) wrote :

Attached a test file, created by taking a screenshot, printing the screenshot to PDF, and running the PDF through ocrmypdf.

Revision history for this message
Julian Andres Klode (juliank) wrote :

That file was for reproducing the original bug fixed by the patch; bug 1855596 contains a file for reproducing this crash.

Changed in poppler (Ubuntu):
status: In Progress → Fix Committed
Changed in poppler (Ubuntu Eoan):
importance: Undecided → High
description: updated
Changed in poppler (Ubuntu Eoan):
status: New → In Progress
Revision history for this message
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package poppler - 0.80.0-0ubuntu4

---------------
poppler (0.80.0-0ubuntu4) focal; urgency=medium

  * debian/patches/glyphless-font.patch:
    - Detect glyphless font instead of hardcoding name, also fixes segmentation
      fault because name was nullptr (LP: #1849773)

 -- Julian Andres Klode <email address hidden> Mon, 16 Dec 2019 21:17:56 +0100

Changed in poppler (Ubuntu):
status: Fix Committed → Fix Released
Changed in poppler (Ubuntu Eoan):
assignee: nobody → Julian Andres Klode (juliank)
Revision history for this message
Mue Fom (2a4b172045b63c84177f9ffd0b6a8939) wrote :

Is there a chance that this will be fixed in Ubuntu Eoan?

Revision history for this message
Timo Aaltonen (tjaalton) wrote : Please test proposed package

Hello errors.ubuntu.com, or anyone else affected,

Accepted poppler into eoan-proposed. The package will build now and be available at https://launchpad.net/ubuntu/+source/poppler/0.80.0-0ubuntu1.1 in a few hours, and then in the -proposed repository.

Please help us by testing this new package. See https://wiki.ubuntu.com/Testing/EnableProposed for documentation on how to enable and use -proposed. Your feedback will aid us getting this update out to other Ubuntu users.

If this package fixes the bug for you, please add a comment to this bug, mentioning the version of the package you tested and change the tag from verification-needed-eoan to verification-done-eoan. If it does not fix the bug for you, please add a comment stating that, and change the tag to verification-failed-eoan. In either case, without details of your testing we will not be able to proceed.

Further information regarding the verification process can be found at https://wiki.ubuntu.com/QATeam/PerformingSRUVerification . Thank you in advance for helping!

N.B. The updated package will be released to -updates after the bug(s) fixed by this package have been verified and the package has been in -proposed for a minimum of 7 days.

Changed in poppler (Ubuntu Eoan):
status: In Progress → Fix Committed
tags: added: verification-needed verification-needed-eoan
Revision history for this message
Ubuntu SRU Bot (ubuntu-sru-bot) wrote : Autopkgtest regression report (poppler/0.80.0-0ubuntu1.1)

All autopkgtests for the newly accepted poppler (0.80.0-0ubuntu1.1) for eoan have finished running.
The following regressions have been reported in tests triggered by the package:

kopanocore/unknown (armhf)

Please visit the excuses page listed below and investigate the failures, proceeding afterwards as per the StableReleaseUpdates policy regarding autopkgtest regressions [1].

https://people.canonical.com/~ubuntu-archive/proposed-migration/eoan/update_excuses.html#poppler

[1] https://wiki.ubuntu.com/StableReleaseUpdates#Autopkgtest_Regressions

Thank you!

Revision history for this message
Mue Fom (2a4b172045b63c84177f9ffd0b6a8939) wrote :

The cause for regression seems to be a technical issue not related to poppler:

"Could not connect to ftpmaster.internal:80 (91.189.89.99), connection timed out"

Revision history for this message
Enrik Berkhan (enrikb) wrote :

The fix works for me (libpoppler90 0.80.0-0ubuntu1.1), I can't see the crash anymore.

Thanks!

Revision history for this message
Mue Fom (2a4b172045b63c84177f9ffd0b6a8939) wrote :

The fix works for me, too (libpoppler90:amd64 0.80.0-0ubuntu1.1).
No crash in evince or atril.

Thanks.

Revision history for this message
pcworld (pcworld) wrote :

I updated libpoppler90 and related packages to 0.80.0-0ubuntu1.1, the crash is now fixed for me.

tags: added: verification-done-eoan
removed: verification-needed-eoan
Revision history for this message
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package poppler - 0.80.0-0ubuntu1.1

---------------
poppler (0.80.0-0ubuntu1.1) eoan; urgency=medium

  * Fix null pointer dereference when checking for glyphless font,
    thanks to Enrik Berkhan (LP: #1849773)

 -- Julian Andres Klode <email address hidden> Mon, 16 Dec 2019 21:41:17 +0100

Changed in poppler (Ubuntu Eoan):
status: Fix Committed → Fix Released
Revision history for this message
Brian Murray (brian-murray) wrote : Update Released

The verification of the Stable Release Update for poppler has completed successfully and the package is now being released to -updates. Subsequently, the Ubuntu Stable Release Updates Team is being unsubscribed and will not receive messages about this bug report. In the event that you encounter a regression using the package from -updates please report a new bug using ubuntu-bug and tag the bug report regression-update so we can easily find any regressions.

To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Duplicates of this bug

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.