FS#57867 - [cairo] segmentation faults in zathura, i3lock

Attached to Project: Arch Linux
Opened by Jeb Rosen (jebrosen) - Friday, 16 March 2018, 20:14 GMT
Last edited by Andreas Radke (AndyRTR) - Saturday, 17 March 2018, 14:11 GMT
Task Type Bug Report
Category Upstream Bugs
Status Closed
Assigned To Jan de Groot (JGC)
Andreas Radke (AndyRTR)
Laurent Carlier (lordheavy)
Architecture All
Severity Medium
Priority Normal
Reported Version
Due in Version Undecided
Due Date Undecided
Percent Complete 100%
Votes 0
Private No

Details

Description:
A bug in the selected commit for testing/cairo (cairo-1.15.10+50+g14404ada8-1) causes frequent crashes in zathura and renders i3lock completely useless, as any key press crashes i3lock effectively unlocking the screen.

Example stack trace (cairo recompiled with debug symbols):

Program terminated with signal SIGSEGV, Segmentation fault.
#0 0x00007f0ccf799901 in free () from /usr/lib/libc.so.6
(gdb) bt
#0 0x00007f0ccf799901 in free () from /usr/lib/libc.so.6
#1 0x00007f0cd0fbf32a in _cairo_font_options_fini (options=<optimized out>)
at cairo-font-options.c:160
#2 0x00007f0cd10540ec in _cairo_ft_options_fini (options=0x56315fd6a358)
at cairo-ft-font.c:206
#3 _cairo_ft_font_face_destroy (abstract_face=0x56315fd6a320) at cairo-ft-font.c:3163
#4 0x00007f0cd0fbf006 in INT_cairo_font_face_destroy (font_face=0x56315fd6a320)
at cairo-font-face.c:186
#5 0x00007f0cd10133f4 in _cairo_toy_font_face_destroy (abstract_face=0x56315fd6d160)
at cairo-toy-font-face.c:371
#6 0x00007f0cd0fbf006 in INT_cairo_font_face_destroy (font_face=0x56315fd6d160)
at cairo-font-face.c:186
#7 0x00007f0cd0fc10da in _cairo_gstate_fini (gstate=0x56315fd799d0) at cairo-gstate.c:197
#8 0x00007f0cd0fbd116 in _cairo_default_context_fini (cr=0x56315fd799a0)
at cairo-default-context.c:75
#9 0x00007f0cd0fbd189 in _cairo_default_context_destroy (abstract_cr=0x56315fd799a0)
at cairo-default-context.c:93
#10 0x000056315f54ba21 in ?? ()
#11 0x000056315f54c2a8 in ?? ()
#12 0x000056315f54b6d0 in ?? ()
#13 0x00007f0ccfce04e3 in ev_invoke_pending () from /usr/lib/libev.so.4
#14 0x00007f0ccfce3ad6 in ev_run () from /usr/lib/libev.so.4
#15 0x000056315f548fd1 in ?? ()
#16 0x00007f0ccf737f4a in __libc_start_main () from /usr/lib/libc.so.6
#17 0x000056315f5493ca in ?? ()

The bug has been reported and resolved upstream: https://bugs.freedesktop.org/show_bug.cgi?id=105084

The commit that fixes the issue immediately follows the commit that testing/cairo is currently built from, and I have verified that using a more recent commit does fix zathura and i3lock.
This task depends upon

Closed by  Andreas Radke (AndyRTR)
Saturday, 17 March 2018, 14:11 GMT
Reason for closing:  Fixed
Comment by Andreas Radke (AndyRTR) - Saturday, 17 March 2018, 08:33 GMT
Please test new version in testing.
Comment by Florian Pritz (bluewind) - Saturday, 17 March 2018, 13:40 GMT
Works with cairo 1.15.10+54+g1ed124ace-1

Loading...