After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 738846 - Crashed while opening PDF document
Crashed while opening PDF document
Status: RESOLVED NOTGNOME
Product: evince
Classification: Core
Component: PDF
3.14.x
Other Linux
: Normal critical
: ---
Assigned To: Evince Maintainers
Evince Maintainers
: 739103 739315 763053 (view as bug list)
Depends on:
Blocks:
 
 
Reported: 2014-10-20 07:51 UTC by guittet.thibault
Modified: 2016-03-03 19:39 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
evince gdb backtrace (6.97 KB, text/plain)
2014-10-20 07:51 UTC, guittet.thibault
Details
pdftocairo gdb backtrace (5.23 KB, text/plain)
2014-10-28 23:01 UTC, guittet.thibault
Details

Description guittet.thibault 2014-10-20 07:51:53 UTC
Created attachment 288887 [details]
evince gdb backtrace

I open the PDF it displays correctly the 3-4 first pages then crash. You don't even have to scroll to make it crash, just wait for it.
I trust the document is correct: it's from my university professor.

I run under ArchLinux, with the default evince (3.14.1-1) package, and I get the gdb backtrace with the following options for configure:
--prefix=/usr           --sysconfdir=/etc \
--localstatedir=/var    --libexecdir=/usr/lib/evince \
--disable-static        --enable-nautilus \
--enable-pdf            --enable-tiff \
--enable-djvu           --enable-dvi \
--enable-t1lib          --enable-comics \
--disable-scrollkeeper  --disable-schemas-compile \
--enable-introspection  --enable-debug \
CFLAGS="-g -O"          CXXFLAGS="-g"

You can find the PDF there: https://drive.google.com/file/d/0Bzn74X0uGlc4MzltWUpzeFh5MUE/view?usp=sharing

Regards,
Thibault
Comment 1 José Aliste 2014-10-20 14:24:09 UTC
$ gdb evince
GNU gdb (GDB) 7.8
Copyright (C) 2014 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.  Type "show copying"
and "show warranty" for details.
This GDB was configured as "x86_64-unknown-linux-gnu".
Type "show configuration" for configuration details.
For bug reporting instructions, please see:
<http://www.gnu.org/software/gdb/bugs/>.
Find the GDB manual and other documentation resources online at:
<http://www.gnu.org/software/gdb/documentation/>.
For help, type "help".
Type "apropos word" to search for commands related to "word"...
Reading symbols from evince...done.
(gdb) r
Starting program: /usr/bin/evince 
Got object file from memory but can't read symbols: File truncated.
warning: Could not load shared library symbols for linux-vdso.so.1.
Do you need "set solib-search-path" or "set sysroot"?
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/usr/lib/libthread_db.so.1".
[New Thread 0x7fffec12e700 (LWP 16509)]
[New Thread 0x7fffeb92d700 (LWP 16510)]
[New Thread 0x7fffeb12c700 (LWP 16511)]
[New Thread 0x7fffea63d700 (LWP 16512)]
[New Thread 0x7fffe9dbc700 (LWP 16513)]
[New Thread 0x7fffe8ac6700 (LWP 16514)]
[New Thread 0x7fffd3fff700 (LWP 16515)]
[New Thread 0x7fffd37fe700 (LWP 16516)]
[New Thread 0x7fffd2ffd700 (LWP 16517)]
[New Thread 0x7fffd27fc700 (LWP 16518)]
[New Thread 0x7fffd1ffb700 (LWP 16519)]
[New Thread 0x7fffd17fa700 (LWP 16520)]
[New Thread 0x7fffd0ff9700 (LWP 16521)]
[New Thread 0x7fffb7fff700 (LWP 16522)]

(evince:16505): GLib-GObject-WARNING **: The property GtkSettings:gtk-menu-images is deprecated and shouldn't be used anymore. It will be removed in a future version.
[Thread 0x7fffd3fff700 (LWP 16515) exited]
[Thread 0x7fffeb92d700 (LWP 16510) exited]
[Thread 0x7fffe9dbc700 (LWP 16513) exited]
[Thread 0x7fffd1ffb700 (LWP 16519) exited]
[Thread 0x7fffd17fa700 (LWP 16520) exited]
[Thread 0x7fffd27fc700 (LWP 16518) exited]
[Thread 0x7fffd37fe700 (LWP 16516) exited]
[Thread 0x7fffd0ff9700 (LWP 16521) exited]
[Thread 0x7fffd2ffd700 (LWP 16517) exited]
[New Thread 0x7fffd2ffd700 (LWP 16526)]
[New Thread 0x7fffd0ff9700 (LWP 16527)]
[New Thread 0x7fffd37fe700 (LWP 16528)]

Program received signal SIGSEGV, Segmentation fault.

Thread 140736280393472 (LWP 16522)

  • #0 _fill_xrgb32_lerp_opaque_spans
    at cairo-image-compositor.c line 2249
  • #1 blit_a8
    at cairo-tor-scan-converter.c line 1635
  • #2 glitter_scan_converter_render
    at cairo-tor-scan-converter.c line 1786
  • #3 _cairo_tor_scan_converter_generate
    at cairo-tor-scan-converter.c line 1849
  • #4 composite_polygon
    at cairo-spans-compositor.c line 801
  • #5 clip_and_composite_polygon
    at cairo-spans-compositor.c line 967
  • #6 _cairo_spans_compositor_stroke
    at cairo-spans-compositor.c line 1083
  • #7 _cairo_compositor_stroke
    at cairo-compositor.c line 157
  • #8 _cairo_image_surface_stroke
    at cairo-image-surface.c line 964
  • #9 _cairo_surface_stroke
    at cairo-surface.c line 2270
  • #10 _cairo_gstate_stroke
    at cairo-gstate.c line 1194
  • #11 _cairo_default_context_stroke
    at cairo-default-context.c line 1010
  • #12 INT_cairo_stroke
    at cairo.c line 2150
  • #13 CairoOutputDev::stroke(GfxState*)
    from /usr/lib/libpoppler-glib.so.8
  • #14 Gfx::opStroke(Object*, int)
    from /usr/lib/libpoppler.so.46
  • #15 Gfx::go(bool)
    from /usr/lib/libpoppler.so.46
  • #16 Gfx::display(Object*, bool)
    from /usr/lib/libpoppler.so.46
  • #17 Page::displaySlice(OutputDev*, double, double, int, bool, bool, int, int, int, int, bool, bool (*)(void*), void*, bool (*)(Annot*, void*), void*, bool)
    from /usr/lib/libpoppler.so.46
  • #18 ??
    from /usr/lib/libpoppler-glib.so.8
  • #19 pdf_page_render
    at ev-poppler.cc line 415
  • #20 pdf_document_render
    at ev-poppler.cc line 442
  • #21 ev_document_render
    at ev-document.c line 688
  • #22 ev_job_render_run
    at ev-jobs.c line 638
  • #23 ev_job_run
    at ev-jobs.c line 215
  • #24 ev_job_thread
    at ev-job-scheduler.c line 184
  • #25 ev_job_thread_proxy
    at ev-job-scheduler.c line 217
  • #26 ??
    from /usr/lib/libglib-2.0.so.0
  • #27 start_thread
    from /usr/lib/libpthread.so.0
  • #28 clone
    from /usr/lib/libc.so.6

Comment 2 Florian K. 2014-10-28 18:01:07 UTC
I have the same issue, even with different PDF files. Also using evince 3.14.1-1 on Arch.
Comment 3 Germán Poo-Caamaño 2014-10-28 18:26:39 UTC
*** Bug 739103 has been marked as a duplicate of this bug. ***
Comment 4 fractophil+bugzilla 2014-10-28 20:54:04 UTC
This is another PDF that produces the same backtrace with Evince 3.14.1-2 on Arch (copied from duplicate Bug 739103):
http://cp.literature.agilent.com/litweb/pdf/34401-90004.pdf
The segfault occurs on page 21.
Comment 5 José Aliste 2014-10-28 20:59:14 UTC
This crash seems to be either a cairo bug or a poppler bug. 
Please file the bug in the corresponding bugzilla (bugs.freedesktop.org)

Germán did you test with poppler-glib-demo?
Comment 6 Germán Poo-Caamaño 2014-10-28 21:07:18 UTC
José, I cannot reproduce it. Otherwise I would have chimed in with that.
I think this bug is narrowed to Arch Linux users.

Arch Linux folks: can you reproduce the bug if you try with pdftocairo?
Comment 7 Germán Poo-Caamaño 2014-10-28 21:10:21 UTC
I would try something like (taking as example the document in #c4 :

$ pdftocairo -png <problematic-file>

You can narrow the pages using the options -f and -l (first/initial page, and last page).
Comment 8 guittet.thibault 2014-10-28 23:01:54 UTC
Created attachment 289555 [details]
pdftocairo gdb backtrace

Hi,

Good news: both of the pdf don't crash evince anymore! It is worth noting that a new build of evince is available: 3.14.1-2. Although I doubt this modification did the tric: https://projects.archlinux.org/svntogit/packages.git/commit/trunk?h=packages/evince&id=fea980ecf689e4a182e56c92b1da5b49d1e03022

(Less) good news: both pdf crash pdftocairo. The pdf from the #c4 seems to crash on page 11, whereas my pdf crash on page 52. The backtrace is similar in both cases, see "pdftocairo gdb backtrace" attachment.
Comment 9 José Aliste 2014-10-28 23:06:25 UTC
Please file a new bug in bugs.freedesktop.org on poppler product. If it's a cairo problem, it can be reassigned. Also add to the bug information on poppler version and cairo version.
Comment 10 Germán Poo-Caamaño 2014-10-29 16:38:43 UTC
*** Bug 739315 has been marked as a duplicate of this bug. ***
Comment 11 guittet.thibault 2014-10-29 17:07:07 UTC
It turns out the problem came from cairo and was fixed upstream. The Archlinux maintainer of the cairo package included the upstream patch and now everything works well.

For curious:
bug report on poppler: https://bugs.freedesktop.org/show_bug.cgi?id=85151
patch on cairo: http://cgit.freedesktop.org/cairo/commit/?id=2de69581c28bf115852037ca41eba13cb7335976
Comment 12 info.kalsan 2014-10-29 17:32:16 UTC
Thank you. I confirm that the bug has magically disappeared from my system after the latest update.
Comment 13 Germán Poo-Caamaño 2016-03-03 19:39:21 UTC
*** Bug 763053 has been marked as a duplicate of this bug. ***