Bug#696312: evince: print PDF ends in segfault and no printing
Ryan Kavanagh
rak at debian.org
Mon Jan 14 14:23:33 UTC 2013
Dear Maintainer,
I can confirm this bug on a system with the following packages (see
below). I've attached a backtrace for your convenience.
An interesting detail is that this crash did not occur when I tried to
print the PS version of a given PDF, i.e.:
evince foo.pdf
<print from within evince>
<sigsegv>
but
pdf2ps foo.pdf
evince foo.ps
<print from within evince>
<success>
Best wishes,
Ryan
-- System Information:
Debian Release: 7.0
APT prefers unstable
APT policy: (500, 'unstable'), (1, 'experimental')
Architecture: amd64 (x86_64)
Foreign Architectures: i386
Kernel: Linux 3.2.0-4-amd64 (SMP w/4 CPU cores)
Locale: LANG=en_CA.UTF-8, LC_CTYPE=en_CA.UTF-8 (charmap=UTF-8) (ignored: LC_ALL set to en_CA.UTF-8)
Shell: /bin/sh linked to /bin/dash
Versions of packages evince depends on:
ii evince-common 3.4.0-3.1
ii gnome-icon-theme 3.4.0-2
ii libatk1.0-0 2.4.0-2
ii libc6 2.13-38
ii libcairo-gobject2 1.12.2-2
ii libcairo2 1.12.2-2
ii libevdocument3-4 3.4.0-3.1
ii libevview3-3 3.4.0-3.1
ii libgail-3-0 3.4.2-5
ii libgdk-pixbuf2.0-0 2.26.1-1
ii libglib2.0-0 2.33.12+really2.32.4-5
ii libgnome-keyring0 3.4.1-1
ii libgtk-3-0 3.4.2-5
ii libice6 2:1.0.8-2
ii libnautilus-extension1a 3.4.2-1+build1
ii libpango1.0-0 1.30.0-1
ii libsm6 2:1.2.1-2
ii libx11-6 2:1.5.0-1
ii libxml2 2.8.0+dfsg1-7
ii shared-mime-info 1.0-1+b1
ii zlib1g 1:1.2.7.dfsg-13
Versions of packages evince recommends:
ii dbus-x11 1.6.8-1
ii gvfs 1.12.3-3
Versions of packages evince suggests:
pn nautilus <none>
ii poppler-data 0.4.6-2
pn unrar <none>
-- no debconf information
--
|_)|_/ Ryan Kavanagh | GnuPG key
| \| \ http://ryanak.ca/ | 4A11C97A
-------------- next part --------------
GNU gdb (GDB) 7.4.1-debian
Copyright (C) 2012 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-linux-gnu".
For bug reporting instructions, please see:
<http://www.gnu.org/software/gdb/bugs/>...
Reading symbols from /usr/bin/evince...Reading symbols from /usr/lib/debug/usr/bin/evince...done.
done.
(gdb) handle SIG33 pass nostop noprint
Signal Stop Print Pass to program Description
SIG33 No No Yes Real-time event 33
(gdb) set pagination 0
(gdb) run /tmp/w.pdf
Starting program: /usr/bin/evince /tmp/w.pdf
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1".
[New Thread 0x7fffee83d700 (LWP 26646)]
[New Thread 0x7fffee03c700 (LWP 26647)]
[New Thread 0x7fffec9f9700 (LWP 26648)]
[New Thread 0x7fffe44f7700 (LWP 26649)]
Program received signal SIGSEGV, Segmentation fault.
decode_integer (p=0x0, integer=integer at entry=0x7fffffffd760) at /tmp/buildd/cairo-1.12.2/src/cairo-cff-subset.c:241
241 /tmp/buildd/cairo-1.12.2/src/cairo-cff-subset.c: No such file or directory.
(gdb) backtrace full
#0 decode_integer (p=0x0, integer=integer at entry=0x7fffffffd760) at /tmp/buildd/cairo-1.12.2/src/cairo-cff-subset.c:241
No locals.
#1 0x00007ffff57a2bfa in cairo_cff_font_read_top_dict (font=0x555555dfb1b0) at /tmp/buildd/cairo-1.12.2/src/cairo-cff-subset.c:1185
index = {size = 1, num_elements = 1, element_size = 24, elements = 0x555555cf66e0 ""}
element = <optimized out>
buf = "`\216\346\363\377\177\000\000\017\000\000\000\000\000\000\000\t`\350U"
operand = <optimized out>
status = CAIRO_INT_STATUS_SUCCESS
p = 0x555555e8a3eb "{\233\371F\233\373\200\225\367\177\213\006\367\246\223\367\022\223\375\036\213\a\251\n\343\v\370\210\024\367\371\025\363\377\177"
size = <optimized out>
offset = 211
#2 0x00007ffff57a42f2 in cairo_cff_font_read_font (font=0x555555dfb1b0) at /tmp/buildd/cairo-1.12.2/src/cairo-cff-subset.c:1321
i = <optimized out>
status = <optimized out>
#3 cairo_cff_font_generate (length=<synthetic pointer>, data=<synthetic pointer>, font=0x555555dfb1b0) at /tmp/buildd/cairo-1.12.2/src/cairo-cff-subset.c:2545
status = <optimized out>
#4 _cairo_cff_subset_init (cff_subset=cff_subset at entry=0x7fffffffda10, subset_name=subset_name at entry=0x7fffffffda80 "CairoFont-0-0", font_subset=font_subset at entry=0x7fffffffdb80) at /tmp/buildd/cairo-1.12.2/src/cairo-cff-subset.c:2928
font = <optimized out>
status = <optimized out>
data = 0x0
length = 0
i = <optimized out>
#5 0x00007ffff57dfba2 in _cairo_pdf_surface_emit_cff_font_subset (font_subset=0x7fffffffdb80, surface=0x555555f23800) at /tmp/buildd/cairo-1.12.2/src/cairo-pdf-surface.c:4884
status = <optimized out>
subset = {family_name_utf8 = 0x7fffe8042068 "", ps_name = 0x555555db8e30 "", widths = 0x7ffff3e68e60, x_min = 1.0118464426828729e-320, y_min = 0, x_max = 4.6355709264358823e-310, y_max = 0, ascent = 6.9533456206260859e-310, descent = 6.9533470611853447e-310, data = 0x7fffffffdbf0 "", data_length = 2064}
name = "CairoFont-0-0\000\000\000\060\b\000\000\000\000\000\000\375\331x\366\201\000\000\000\340\363r\365\377\177\000\000\060\216\333UUU\000\000`\216\346\363\377\177\000\000\000\b\000\000\000\000\000"
#6 _cairo_pdf_surface_emit_unscaled_font_subset (font_subset=0x7fffffffdb80, closure=0x555555f23800) at /tmp/buildd/cairo-1.12.2/src/cairo-pdf-surface.c:5596
surface = 0x555555f23800
status = CAIRO_INT_STATUS_SUCCESS
#7 0x00007ffff57a59de in _cairo_sub_font_collect (closure=0x7fffffffdb30, entry=0x555555dc6920) at /tmp/buildd/cairo-1.12.2/src/cairo-scaled-font-subsets.c:751
sub_font = 0x555555dc6920
collection = 0x7fffffffdb30
subset = {scaled_font = 0x555555f0f450, font_id = 0, subset_id = 0, glyphs = 0x555555cd1de0, utf8 = 0x555555cd2060, glyph_names = 0x0, to_latin_char = 0x555555db8e30, latin_to_subset_glyph_index = 0x555555e46bf0, num_glyphs = 79, is_composite = 1, is_scaled = 0, is_latin = 1}
i = <optimized out>
j = <optimized out>
#8 _cairo_scaled_font_subsets_foreach_internal (font_subsets=<optimized out>, font_subset_callback=font_subset_callback at entry=0x7ffff57dfb20 <_cairo_pdf_surface_emit_unscaled_font_subset>, closure=closure at entry=0x555555f23800, type=type at entry=CAIRO_SUBSETS_FOREACH_UNSCALED) at /tmp/buildd/cairo-1.12.2/src/cairo-scaled-font-subsets.c:1072
collection = {glyphs = 0x555555cd1de0, utf8 = 0x555555cd2060, glyphs_size = 79, to_latin_char = 0x555555db8e30, latin_to_subset_glyph_index = 0x555555e46bf0, max_glyph = 78, num_glyphs = 79, subset_id = 0, status = CAIRO_STATUS_SUCCESS, font_subset_callback = 0x7ffff57dfb20 <_cairo_pdf_surface_emit_unscaled_font_subset>, font_subset_callback_closure = 0x555555f23800}
sub_font = 0x555555dc6920
is_scaled = <optimized out>
is_user = 0
#9 0x00007ffff57a6bb7 in _cairo_scaled_font_subsets_foreach_unscaled (font_subsets=<optimized out>, font_subset_callback=font_subset_callback at entry=0x7ffff57dfb20 <_cairo_pdf_surface_emit_unscaled_font_subset>, closure=closure at entry=0x555555f23800) at /tmp/buildd/cairo-1.12.2/src/cairo-scaled-font-subsets.c:1100
No locals.
#10 0x00007ffff57dd652 in _cairo_pdf_surface_emit_font_subsets (surface=0x555555f23800) at /tmp/buildd/cairo-1.12.2/src/cairo-pdf-surface.c:5646
status = CAIRO_STATUS_SUCCESS
#11 _cairo_pdf_surface_finish (abstract_surface=0x555555f23800) at /tmp/buildd/cairo-1.12.2/src/cairo-pdf-surface.c:1959
surface = 0x555555f23800
offset = 5
info = <optimized out>
catalog = <optimized out>
status = <optimized out>
status2 = <optimized out>
#12 0x00007ffff578b68c in _cairo_surface_finish (surface=surface at entry=0x555555f23800) at /tmp/buildd/cairo-1.12.2/src/cairo-surface.c:919
status = <optimized out>
__PRETTY_FUNCTION__ = "_cairo_surface_finish"
#13 0x00007ffff578bacd in INT_cairo_surface_finish (surface=0x555555f23800) at /tmp/buildd/cairo-1.12.2/src/cairo-surface.c:963
No locals.
#14 0x00007ffff5766ad4 in _cairo_paginated_surface_finish (abstract_surface=0x555555f25070) at /tmp/buildd/cairo-1.12.2/src/cairo-paginated-surface.c:213
surface = 0x555555f25070
status = CAIRO_STATUS_SUCCESS
#15 0x00007ffff578b68c in _cairo_surface_finish (surface=surface at entry=0x555555f25070) at /tmp/buildd/cairo-1.12.2/src/cairo-surface.c:919
status = <optimized out>
__PRETTY_FUNCTION__ = "_cairo_surface_finish"
#16 0x00007ffff578bacd in INT_cairo_surface_finish (surface=0x555555f25070) at /tmp/buildd/cairo-1.12.2/src/cairo-surface.c:963
No locals.
#17 0x00007ffff6a21725 in ?? () from /usr/lib/x86_64-linux-gnu/libgtk-3.so.0
No symbol table info available.
#18 0x00007ffff690be33 in ?? () from /usr/lib/x86_64-linux-gnu/libgtk-3.so.0
No symbol table info available.
#19 0x00007ffff64e3980 in ?? () from /usr/lib/x86_64-linux-gnu/libgdk-3.so.0
No symbol table info available.
#20 0x00007ffff456c355 in g_main_context_dispatch () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
No symbol table info available.
#21 0x00007ffff456c688 in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
No symbol table info available.
#22 0x00007ffff456ca82 in g_main_loop_run () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
No symbol table info available.
#23 0x00007ffff68c83b5 in gtk_main () from /usr/lib/x86_64-linux-gnu/libgtk-3.so.0
No symbol table info available.
#24 0x00005555555761e5 in main (argc=1, argv=0x7fffffffdfb8) at /tmp/buildd/evince-3.4.0/./shell/main.c:329
context = <optimized out>
error = 0x0
(gdb) info registers
rax 0x0 0
rbx 0x555555dfb1b0 93825001304496
rcx 0x555555d3d550 93825000527184
rdx 0xf 15
rsi 0x7fffffffd760 140737488344928
rdi 0x0 0
rbp 0x0 0x0
rsp 0x7fffffffd728 0x7fffffffd728
r8 0x555555d6d5f0 93825000723952
r9 0x0 0
r10 0x0 0
r11 0x555555e8a3e3 93825001890787
r12 0x555555dfb220 93825001304608
r13 0x555555e8a40b 93825001890827
r14 0x7fffffffdb80 140737488345984
r15 0x7fffffffda10 140737488345616
rip 0x7ffff57a0640 0x7ffff57a0640 <decode_integer>
eflags 0x10246 [ PF ZF IF RF ]
cs 0x33 51
ss 0x2b 43
ds 0x0 0
es 0x0 0
fs 0x0 0
gs 0x0 0
(gdb) x/16i $pc
=> 0x7ffff57a0640 <decode_integer>: movzbl (%rdi),%edx
0x7ffff57a0643 <decode_integer+3>: cmp $0x1c,%dl
0x7ffff57a0646 <decode_integer+6>: je 0x7ffff57a06a0 <decode_integer+96>
0x7ffff57a0648 <decode_integer+8>: cmp $0x1d,%dl
0x7ffff57a064b <decode_integer+11>: je 0x7ffff57a06b8 <decode_integer+120>
0x7ffff57a064d <decode_integer+13>: lea -0x20(%rdx),%eax
0x7ffff57a0650 <decode_integer+16>: cmp $0xd6,%al
0x7ffff57a0652 <decode_integer+18>: jbe 0x7ffff57a0680 <decode_integer+64>
0x7ffff57a0654 <decode_integer+20>: cmp $0xfa,%dl
0x7ffff57a0657 <decode_integer+23>: jbe 0x7ffff57a06e0 <decode_integer+160>
0x7ffff57a065d <decode_integer+29>: cmp $0xff,%dl
0x7ffff57a0660 <decode_integer+32>: je 0x7ffff57a0690 <decode_integer+80>
0x7ffff57a0662 <decode_integer+34>: mov $0xfb,%eax
0x7ffff57a0667 <decode_integer+39>: sub %edx,%eax
0x7ffff57a0669 <decode_integer+41>: movzbl 0x1(%rdi),%edx
0x7ffff57a066d <decode_integer+45>: shl $0x8,%eax
(gdb) thread apply all backtrace
Thread 5 (Thread 0x7fffe44f7700 (LWP 26649)):
#0 pthread_cond_wait@@GLIBC_2.3.2 () at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:162
#1 0x00007ffff45a869f in g_cond_wait () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#2 0x00007ffff755b22f in ev_job_thread_proxy (data=<optimized out>) at /tmp/buildd/evince-3.4.0/./libview/ev-job-scheduler.c:231
#3 0x00007ffff458ef45 in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#4 0x00007ffff3e73b50 in start_thread (arg=<optimized out>) at pthread_create.c:304
#5 0x00007ffff3bbda7d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112
#6 0x0000000000000000 in ?? ()
Thread 4 (Thread 0x7fffec9f9700 (LWP 26648)):
#0 0x00007ffff3bb2e33 in *__GI___poll (fds=<optimized out>, nfds=<optimized out>, timeout=-1) at ../sysdeps/unix/sysv/linux/poll.c:87
#1 0x00007ffff456c624 in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#2 0x00007ffff456ca82 in g_main_loop_run () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#3 0x00007fffec9feefb in ?? () from /usr/lib/x86_64-linux-gnu/gio/modules/libdconfsettings.so
#4 0x00007ffff458ef45 in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#5 0x00007ffff3e73b50 in start_thread (arg=<optimized out>) at pthread_create.c:304
#6 0x00007ffff3bbda7d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112
#7 0x0000000000000000 in ?? ()
Thread 3 (Thread 0x7fffee03c700 (LWP 26647)):
#0 pthread_cond_timedwait@@GLIBC_2.3.2 () at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_timedwait.S:216
#1 0x00007ffff45a8795 in g_cond_wait_until () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#2 0x00007ffff4542f51 in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#3 0x00007ffff454359a in g_async_queue_timeout_pop () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#4 0x00007ffff458f702 in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#5 0x00007ffff458ef45 in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#6 0x00007ffff3e73b50 in start_thread (arg=<optimized out>) at pthread_create.c:304
#7 0x00007ffff3bbda7d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112
#8 0x0000000000000000 in ?? ()
Thread 2 (Thread 0x7fffee83d700 (LWP 26646)):
#0 0x00007ffff3bb2e33 in *__GI___poll (fds=<optimized out>, nfds=<optimized out>, timeout=-1) at ../sysdeps/unix/sysv/linux/poll.c:87
#1 0x00007ffff456c624 in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#2 0x00007ffff456ca82 in g_main_loop_run () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#3 0x00007ffff54a1a86 in ?? () from /usr/lib/x86_64-linux-gnu/libgio-2.0.so.0
#4 0x00007ffff458ef45 in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#5 0x00007ffff3e73b50 in start_thread (arg=<optimized out>) at pthread_create.c:304
#6 0x00007ffff3bbda7d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112
#7 0x0000000000000000 in ?? ()
Thread 1 (Thread 0x7ffff7fc3960 (LWP 26643)):
#0 decode_integer (p=0x0, integer=integer at entry=0x7fffffffd760) at /tmp/buildd/cairo-1.12.2/src/cairo-cff-subset.c:241
#1 0x00007ffff57a2bfa in cairo_cff_font_read_top_dict (font=0x555555dfb1b0) at /tmp/buildd/cairo-1.12.2/src/cairo-cff-subset.c:1185
#2 0x00007ffff57a42f2 in cairo_cff_font_read_font (font=0x555555dfb1b0) at /tmp/buildd/cairo-1.12.2/src/cairo-cff-subset.c:1321
#3 cairo_cff_font_generate (length=<synthetic pointer>, data=<synthetic pointer>, font=0x555555dfb1b0) at /tmp/buildd/cairo-1.12.2/src/cairo-cff-subset.c:2545
#4 _cairo_cff_subset_init (cff_subset=cff_subset at entry=0x7fffffffda10, subset_name=subset_name at entry=0x7fffffffda80 "CairoFont-0-0", font_subset=font_subset at entry=0x7fffffffdb80) at /tmp/buildd/cairo-1.12.2/src/cairo-cff-subset.c:2928
#5 0x00007ffff57dfba2 in _cairo_pdf_surface_emit_cff_font_subset (font_subset=0x7fffffffdb80, surface=0x555555f23800) at /tmp/buildd/cairo-1.12.2/src/cairo-pdf-surface.c:4884
#6 _cairo_pdf_surface_emit_unscaled_font_subset (font_subset=0x7fffffffdb80, closure=0x555555f23800) at /tmp/buildd/cairo-1.12.2/src/cairo-pdf-surface.c:5596
#7 0x00007ffff57a59de in _cairo_sub_font_collect (closure=0x7fffffffdb30, entry=0x555555dc6920) at /tmp/buildd/cairo-1.12.2/src/cairo-scaled-font-subsets.c:751
#8 _cairo_scaled_font_subsets_foreach_internal (font_subsets=<optimized out>, font_subset_callback=font_subset_callback at entry=0x7ffff57dfb20 <_cairo_pdf_surface_emit_unscaled_font_subset>, closure=closure at entry=0x555555f23800, type=type at entry=CAIRO_SUBSETS_FOREACH_UNSCALED) at /tmp/buildd/cairo-1.12.2/src/cairo-scaled-font-subsets.c:1072
#9 0x00007ffff57a6bb7 in _cairo_scaled_font_subsets_foreach_unscaled (font_subsets=<optimized out>, font_subset_callback=font_subset_callback at entry=0x7ffff57dfb20 <_cairo_pdf_surface_emit_unscaled_font_subset>, closure=closure at entry=0x555555f23800) at /tmp/buildd/cairo-1.12.2/src/cairo-scaled-font-subsets.c:1100
#10 0x00007ffff57dd652 in _cairo_pdf_surface_emit_font_subsets (surface=0x555555f23800) at /tmp/buildd/cairo-1.12.2/src/cairo-pdf-surface.c:5646
#11 _cairo_pdf_surface_finish (abstract_surface=0x555555f23800) at /tmp/buildd/cairo-1.12.2/src/cairo-pdf-surface.c:1959
#12 0x00007ffff578b68c in _cairo_surface_finish (surface=surface at entry=0x555555f23800) at /tmp/buildd/cairo-1.12.2/src/cairo-surface.c:919
#13 0x00007ffff578bacd in INT_cairo_surface_finish (surface=0x555555f23800) at /tmp/buildd/cairo-1.12.2/src/cairo-surface.c:963
#14 0x00007ffff5766ad4 in _cairo_paginated_surface_finish (abstract_surface=0x555555f25070) at /tmp/buildd/cairo-1.12.2/src/cairo-paginated-surface.c:213
#15 0x00007ffff578b68c in _cairo_surface_finish (surface=surface at entry=0x555555f25070) at /tmp/buildd/cairo-1.12.2/src/cairo-surface.c:919
#16 0x00007ffff578bacd in INT_cairo_surface_finish (surface=0x555555f25070) at /tmp/buildd/cairo-1.12.2/src/cairo-surface.c:963
#17 0x00007ffff6a21725 in ?? () from /usr/lib/x86_64-linux-gnu/libgtk-3.so.0
#18 0x00007ffff690be33 in ?? () from /usr/lib/x86_64-linux-gnu/libgtk-3.so.0
#19 0x00007ffff64e3980 in ?? () from /usr/lib/x86_64-linux-gnu/libgdk-3.so.0
#20 0x00007ffff456c355 in g_main_context_dispatch () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#21 0x00007ffff456c688 in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#22 0x00007ffff456ca82 in g_main_loop_run () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#23 0x00007ffff68c83b5 in gtk_main () from /usr/lib/x86_64-linux-gnu/libgtk-3.so.0
#24 0x00005555555761e5 in main (argc=1, argv=0x7fffffffdfb8) at /tmp/buildd/evince-3.4.0/./shell/main.c:329
(gdb) quit
A debugging session is active.
Inferior 1 [process 26643] will be killed.
Quit anyway? (y or n)
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 1876 bytes
Desc: Digital signature
URL: <http://lists.alioth.debian.org/pipermail/pkg-gnome-maintainers/attachments/20130114/f4510a6e/attachment.pgp>
More information about the pkg-gnome-maintainers
mailing list