Debian Bug report logs - #613221
libpixman-1-0: Breaks the GNUstep cairo backend (gnustep-back0.18-cairo)

version graph

Package: libgl1-mesa-glx; Maintainer for libgl1-mesa-glx is Debian X Strike Force <debian-x@lists.debian.org>; Source for libgl1-mesa-glx is src:mesa.

Reported by: Yavor Doganov <yavor@gnu.org>

Date: Sun, 13 Feb 2011 15:30:01 UTC

Severity: important

Tags: fixed-upstream

Found in version 7.9-1

Done: Julien Cristau <jcristau@debian.org>

Forwarded to https://bugs.freedesktop.org/show_bug.cgi?id=34335

Reply or subscribe to this bug.

Toggle useless messages

View this report as an mbox folder, status mbox, maintainer mbox


Report forwarded to debian-bugs-dist@lists.debian.org, yavor@gnu.org, Debian X Strike Force <debian-x@lists.debian.org>:
Bug#613221; Package libpixman-1-0. (Sun, 13 Feb 2011 15:30:04 GMT) Full text and rfc822 format available.

Acknowledgement sent to Yavor Doganov <yavor@gnu.org>:
New Bug report received and forwarded. Copy sent to yavor@gnu.org, Debian X Strike Force <debian-x@lists.debian.org>. (Sun, 13 Feb 2011 15:30:04 GMT) Full text and rfc822 format available.

Message #5 received at submit@bugs.debian.org (full text, mbox):

From: Yavor Doganov <yavor@gnu.org>
To: Debian Bug Tracking System <submit@bugs.debian.org>
Subject: libpixman-1-0: Breaks the GNUstep cairo backend (gnustep-back0.18-cairo)
Date: Sun, 13 Feb 2011 16:32:15 +0200
Package: libpixman-1-0
Version: 0.21.4-2
Severity: serious

I haven't investigated the real cause yet; I'm filing this bug as
preliminary measure to prevent migration to testing in case the bug
happens to be in pixman.  With this version installed, and
libgnustep-cairo set as the default backend, all GNUstep apps crash.  If
I downgrade to 0.16.4-1, there is no problem.

Here's an example backtrace:

Starting program: /usr/bin/Ink 
[Thread debugging using libthread_db enabled]

Program received signal SIGSEGV, Segmentation fault.
lookup_composite_function (op=PIXMAN_OP_SRC, src=0x83773c0, mask=0x0, dest=0x83685a0, src_x=0, src_y=0, mask_x=0, mask_y=0, dest_x=0, dest_y=0, width=64, height=64) at ../../pixman/pixman.c:378
378	../../pixman/pixman.c: Няма такъв файл или директория.
	in ../../pixman/pixman.c
#0  lookup_composite_function (op=PIXMAN_OP_SRC, src=0x83773c0, mask=0x0, dest=0x83685a0, src_x=0, src_y=0, mask_x=0, mask_y=0, dest_x=0, dest_y=0, width=64, height=64) at ../../pixman/pixman.c:378
        i = 0
#1  pixman_image_composite32 (op=PIXMAN_OP_SRC, src=0x83773c0, mask=0x0, dest=0x83685a0, src_x=0, src_y=0, mask_x=0, mask_y=0, dest_x=0, dest_y=0, width=64, height=64) at ../../pixman/pixman.c:767
        src_format = PIXMAN_x8r8g8b8
        mask_format = 0
        dest_format = PIXMAN_a8r8g8b8
        src_flags = 1010431
        mask_flags = 8192
        dest_flags = 936575
        region = {extents = {x1 = 0, y1 = 0, x2 = 64, y2 = 64}, data = 0x0}
        extents = <value optimized out>
        imp = <value optimized out>
        func = 0xf6aff
#2  0xb6f0513e in _composite_boxes (dst=<value optimized out>, op=<value optimized out>, src=0xbfffe828, boxes=0xbfffe324, antialias=CAIRO_ANTIALIAS_DEFAULT, extents=0xbfffe75c, clip=0x0) at /build/buildd-cairo_1.10.2-2-i386-cBabgG/cairo-1.10.2/src/cairo-image-surface.c:3008
        x1 = <value optimized out>
        y1 = <value optimized out>
        x2 = <value optimized out>
        y2 = <value optimized out>
        box = <value optimized out>
        mask = <value optimized out>
        src_x = 0
        mask_y = 0
        pixman_op = PIXMAN_OP_SRC
        src_y = 0
        mask_x = 0
        clip_region = 0x0
        need_clip_mask = <value optimized out>
        status = <value optimized out>
        chunk = 0xbfffe348
        i = 0
        pixel = <value optimized out>
#3  _clip_and_composite_boxes (dst=<value optimized out>, op=<value optimized out>, src=0xbfffe828, boxes=0xbfffe324, antialias=CAIRO_ANTIALIAS_DEFAULT, extents=0xbfffe75c, clip=0x0) at /build/buildd-cairo_1.10.2-2-i386-cBabgG/cairo-1.10.2/src/cairo-image-surface.c:3047
        traps = {status = 137731224, limits = 0x1d, num_limits = -1214602127, maybe_region = 0, has_intersections = 0, is_rectilinear = 0, is_rectangular = 0, num_traps = 137732128, traps_size = 39, traps = 0x3, traps_embedded = {{top = -1073749784, bottom = 0, left = {p1 = {x = 29, y = 96}, p2 = {x = -1073749840, y = -1212783064}}, right = {p1 = {x = 7648, y = -1214615216}, p2 = {x = -1073749908, y = -1073749912}}}, {top = -1215586917, bottom = -1213146216, left = {p1 = {x = -1213085328, y = -1073749904}, p2 = {x = -1073749904, y = -1215461455}}, right = {p1 = {x = 137731240, y = -1073747792}, p2 = {x = 5, y = 0}}}, {top = -1213088288, bottom = -1073747792, left = {p1 = {x = 5, y = -1213146216}, p2 = {x = 2048, y = -1212686816}}, right = {p1 = {x = -1073745720, y = -1215461863}, p2 = {x = -1213088288, y = -1213085280}}}, {top = -1073749840, bottom = -1215461863, left = {p1 = {x = -1213088288, y = -1213085280}, p2 = {x = -1073749840, y = 3}}, right = {p1 = {x = 2424878, y = 64}, p2 = {x = -1073749824, y = 8}}}, {top = 4194341, bottom = 7077934, left = {p1 = {x = 7471216, y = 6946927}, p2 = {x = 4194304, y = 7077934}}, right = {p1 = {x = 1920169263, y = 1651076143}, p2 = {x = 1431193391, y = 1885697139}}}, {top = 1953715456, bottom = 1912631397, left = {p1 = {x = 7959137, y = 136801280}, p2 = {x = -1217114996, y = -1217114996}}, right = {p1 = {x = 40, y = -1216248916}, p2 = {x = 3, y = -1225977964}}}, {top = 136815432, bottom = 137671480, left = {p1 = {x = -1073749656, y = -1226133318}, p2 = {x = 0, y = 20}}, right = {p1 = {x = -1073749576, y = -1216384307}, p2 = {x = 0, y = 0}}}, {top = 137671480, bottom = 256, left = {p1 = {x = 3, y = 256}, p2 = {x = 137808384, y = 192}}, right = {p1 = {x = 64, y = 64}, p2 = {x = -1073749592, y = -1227831786}}}, {top = 137792000, bottom = 64, left = {p1 = {x = 32, y = 0}, p2 = {x = 0, y = 64}}, right = {p1 = {x = -1, y = 0}, p2 = {x = -1216248928, y = 52480}}}, {top = 137671456, bottom = 136767808, left = {p1 = {x = 3, y = 136800744}, p2 = {x = -1217114996, y = -1227760340}}, right = {p1 = {x = -1073747988, y = 64}, p2 = {x = -1073749528, y = -1228117961}}}, {top = 136381336, bottom = 137792000, left = {p1 = {x = 64, y = 32}, p2 = {x = 0, y = 0}}, right = {p1 = {x = -1073749528, y = -1225640849}, p2 = {x = 137852016, y = -1073749432}}}, {top = 137671432, bottom = 136767808, left = {p1 = {x = 3, y = -1073747928}, p2 = {x = -1073749320, y = -1225699006}}, right = {p1 = {x = 137852016, y = -1073749432}, p2 = {x = 64, y = 32}}}, {top = 0, bottom = 0, left = {p1 = {x = 64, y = 64}, p2 = {x = 0, y = 20}}, right = {p1 = {x = -1073749336, y = -1216384307}, p2 = {x = -1216248928, y = -1225044548}}}, {top = -1073748632, bottom = -1225764976, left = {p1 = {x = 137792000, y = 64}, p2 = {x = 32, y = 0}}, right = {p1 = {x = 0, y = 64}, p2 = {x = 0, y = 0}}}, {top = 64, bottom = 64, left = {p1 = {x = -1073749336, y = -1226133318}, p2 = {x = 0, y = 20}}, right = {p1 = {x = -1073749256, y = 0}, p2 = {x = -1216248928, y = 52552}}}, {top = 0, bottom = 137822500, left = {p1 = {x = 137822384, y = -1073748100}, p2 = {x = -1073749288, y = -1225827318}}, right = {p1 = {x = -1073748644, y = -1073748100}, p2 = {x = 3, y = -1225745249}}}}}
        status = <value optimized out>
        info = {traps = 0x40, num_traps = 0, antialias = CAIRO_ANTIALIAS_DEFAULT}
#4  0xb6f0603d in _cairo_image_surface_paint (abstract_surface=0x836ca08, op=CAIRO_OPERATOR_SOURCE, source=0xbfffe828, clip=0x0) at /build/buildd-cairo_1.10.2-2-i386-cBabgG/cairo-1.10.2/src/cairo-image-surface.c:3301
        boxes = {status = CAIRO_STATUS_SUCCESS, limit = {p1 = {x = -1217114996, y = -1217114996}, p2 = {x = 40, y = -1216248916}}, limits = 0x3, num_limits = 0, num_boxes = 1, is_pixel_aligned = 1, chunks = {next = 0x0, base = 0xbfffe55c, count = 1, size = 1}, tail = 0xbfffe348, boxes_embedded = {{p1 = {x = -1216384307, y = -1216248928}, p2 = {x = 52624, y = 137671312}}, {p1 = {x = 136767808, y = 3}, p2 = {x = 136801168, y = -1217114996}}, {p1 = {x = -1217114996, y = 40}, p2 = {x = -1216248916, y = -1217140893}}, {p1 = {x = -1073747256, y = -1218138492}, p2 = {x = 31, y = -1073747596}}, {p1 = {x = 2, y = -1073747448}, p2 = {x = 2, y = -1216253964}}, {p1 = {x = -1073747596, y = -1218138450}, p2 = {x = -1073747640, y = -1217322318}}, {p1 = {x = -1073747596, y = -1218138450}, p2 = {x = 0, y = 0}}, {p1 = {x = -1217114996, y = 40}, p2 = {x = -1216248916, y = 3}}, {p1 = {x = 0, y = 136815540}, p2 = {x = 137671264, y = -1073748936}}, {p1 = {x = -1226133318, y = 0}, p2 = {x = 20, y = -1073748856}}, {p1 = {x = -1216384307, y = -1216248928}, p2 = {x = 52672, y = 137671264}}, {p1 = {x = 136767808, y = 3}, p2 = {x = 0, y = 0}}, {p1 = {x = -1217114996, y = -1}, p2 = {x = 0, y = 0}}, {p1 = {x = 0, y = 136815552}, p2 = {x = 0, y = 0}}, {p1 = {x = -1226133318, y = 48}, p2 = {x = 20, y = -1073748776}}, {p1 = {x = -1216384307, y = -1216248928}, p2 = {x = 0, y = 0}}, {p1 = {x = 0, y = -1073747808}, p2 = {x = 2, y = -1162}}, {p1 = {x = -1217114996, y = 16}, p2 = {x = -1073747810, y = -1073747810}}, {p1 = {x = -1225699971, y = 136815564}, p2 = {x = 1, y = -1217314798}}, {p1 = {x = 0, y = -1218138450}, p2 = {x = -1216255232, y = -1218138450}}, {p1 = {x = -1073747448, y = 2}, p2 = {x = -1218138461, y = 0}}, {p1 = {x = -1073747376, y = -1228214112}, p2 = {x = -1073748668, y = -1073748752}}, {p1 = {x = -1208042940, y = -5592406}, p2 = {x = -5592406, y = 3}}, {p1 = {x = 256, y = 136815576}, p2 = {x = 256, y = 137641208}}, {p1 = {x = 192, y = 64}, p2 = {x = 64, y = -1073748680}}, {p1 = {x = -1227831786, y = 137624824}, p2 = {x = 64, y = 32}}, {p1 = {x = 0, y = 0}, p2 = {x = 64, y = 0}}, {p1 = {x = 137819564, y = 137819448}, p2 = {x = -1073747444, y = -1073748632}}, {p1 = {x = -1225827318, y = -1073747988}, p2 = {x = -1073747444, y = -1073748616}}, {p1 = {x = -1225745249, y = 64}, p2 = {x = 0, y = 0}}, {p1 = {x = 0, y = -1073747476}, p2 = {x = -1073747988, y = -1073748632}}, {p1 = {x = 0, y = 0}, p2 = {x = 0, y = 16384}}}}
        extents = {source = {x = -8388608, y = -8388608, width = 16777215, height = 16777215}, mask = {x = 0, y = 0, width = 64, height = 64}, bounded = {x = 0, y = 0, width = 64, height = 64}, unbounded = {x = 0, y = 0, width = 64, height = 64}, is_bounded = 2}
        clip_path = <value optimized out>
        local_clip = {path = 0x836ca08, all_clipped = 137821772}
        have_clip = 0
        boxes_stack = {{p1 = {x = 0, y = 0}, p2 = {x = 16384, y = 16384}}, {p1 = {x = -1225760707, y = -1225152224}, p2 = {x = -1073748556, y = 0}}, {p1 = {x = -1073747476, y = 0}, p2 = {x = -1073747048, y = -1073748568}}, {p1 = {x = -1217114996, y = -1216769733}, p2 = {x = 1, y = -1073748440}}, {p1 = {x = -1228797696, y = 136421592}, p2 = {x = -1073748556, y = 0}}, {p1 = {x = -1073747476, y = 8}, p2 = {x = 0, y = 32}}, {p1 = {x = -1216384307, y = -1216248928}, p2 = {x = 136421592, y = -1217129194}}, {p1 = {x = 0, y = 1}, p2 = {x = 136425805, y = 0}}, {p1 = {x = -1073747988, y = 1}, p2 = {x = 1, y = -1073748520}}, {p1 = {x = 0, y = -1218613759}, p2 = {x = -1228797696, y = -1218608615}}, {p1 = {x = -1228863723, y = 207}, p2 = {x = 0, y = -1073748328}}, {p1 = {x = 4096, y = 136421680}, p2 = {x = -1216798925, y = -1073748328}}, {p1 = {x = -1227098881, y = 8}, p2 = {x = 136421680, y = 4096}}, {p1 = {x = -1228797696, y = -1228797696}, p2 = {x = 136421592, y = -1073748360}}, {p1 = {x = -1228856779, y = 136421628}, p2 = {x = 136425804, y = -1}}, {p1 = {x = 136425828, y = 136421628}, p2 = {x = -1228797696, y = 136421680}}, {p1 = {x = 136418608, y = -1218613721}, p2 = {x = -1073748256, y = -1218608615}}, {p1 = {x = -1216684010, y = 136421604}, p2 = {x = -1228797696, y = 31991}}, {p1 = {x = -1216253964, y = 136421592}, p2 = {x = 0, y = -1073748328}}, {p1 = {x = -1216684010, y = 136421604}, p2 = {x = -1228797696, y = -1217129194}}, {p1 = {x = -1228857242, y = 136421604}, p2 = {x = 136421604, y = -1073748244}}, {p1 = {x = -1073748304, y = 1}, p2 = {x = 0, y = -1}}, {p1 = {x = 136421604, y = 0}, p2 = {x = 0, y = 0}}, {p1 = {x = -1226179128, y = 136421008}, p2 = {x = 136418608, y = 41}}, {p1 = {x = -1227099030, y = -1216248928}, p2 = {x = -1216253964, y = -1216248928}}, {p1 = {x = 0, y = -1073748216}, p2 = {x = -1217115203, y = 136468721}}, {p1 = {x = -1226179128, y = -1226179128}, p2 = {x = 136418608, y = -1073748120}}, {p1 = {x = -1228139359, y = 137812520}, p2 = {x = 137812520, y = -1073748168}}, {p1 = {x = -1225640849, y = 137852016}, p2 = {x = -1073748112, y = 0}}, {p1 = {x = -1216383856, y = -1073748148}, p2 = {x = 137852312, y = -1073748072}}, {p1 = {x = -1225701142, y = 137852016}, p2 = {x = -1073748112, y = -1073748120}}, {p1 = {x = -1228138574, y = 137820976}, p2 = {x = 136516904, y = 0}}}
        clip_boxes = 0xbfffe55c
        num_boxes = 1
        status = <value optimized out>
#5  0xb6f26326 in _cairo_surface_paint (surface=0x836ca08, op=CAIRO_OPERATOR_SOURCE, source=0xbfffe828, clip=0xbfffe908) at /build/buildd-cairo_1.10.2-2-i386-cBabgG/cairo-1.10.2/src/cairo-surface.c:2022
        status = <value optimized out>
#6  0xb6efac24 in _cairo_gstate_paint (gstate=0x836fd40) at /build/buildd-cairo_1.10.2-2-i386-cBabgG/cairo-1.10.2/src/cairo-gstate.c:1049
        source_pattern = {type = CAIRO_PATTERN_TYPE_SURFACE, base = {type = CAIRO_PATTERN_TYPE_SURFACE, ref_count = {ref_count = 0}, status = CAIRO_STATUS_SUCCESS, user_data = {size = 0, num_elements = 0, element_size = 12, elements = 0x0, is_snapshot = 0}, matrix = {xx = 1, yx = 0, xy = 0, yy = 1, x0 = 0, y0 = 0}, filter = CAIRO_FILTER_GOOD, extend = CAIRO_EXTEND_PAD, has_component_alpha = 0}, solid = {base = {type = CAIRO_PATTERN_TYPE_SURFACE, ref_count = {ref_count = 0}, status = CAIRO_STATUS_SUCCESS, user_data = {size = 0, num_elements = 0, element_size = 12, elements = 0x0, is_snapshot = 0}, matrix = {xx = 1, yx = 0, xy = 0, yy = 1, x0 = 0, y0 = 0}, filter = CAIRO_FILTER_GOOD, extend = CAIRO_EXTEND_PAD, has_component_alpha = 0}, color = {red = 1.7044074273037736e-313, green = -1.9943466186523438, blue = 0, alpha = -2.3534379293677306e-185, red_short = 39321, green_short = 16313, blue_short = 59624, alpha_short = 49151}}, surface = {base = {type = CAIRO_PATTERN_TYPE_SURFACE, ref_count = {ref_count = 0}, status = CAIRO_STATUS_SUCCESS, user_data = {size = 0, num_elements = 0, element_size = 12, elements = 0x0, is_snapshot = 0}, matrix = {xx = 1, yx = 0, xy = 0, yy = 1, x0 = 0, y0 = 0}, filter = CAIRO_FILTER_GOOD, extend = CAIRO_EXTEND_PAD, has_component_alpha = 0}, surface = 0x8377470}, gradient = {base = {base = {type = CAIRO_PATTERN_TYPE_SURFACE, ref_count = {ref_count = 0}, status = CAIRO_STATUS_SUCCESS, user_data = {size = 0, num_elements = 0, element_size = 12, elements = 0x0, is_snapshot = 0}, matrix = {xx = 1, yx = 0, xy = 0, yy = 1, x0 = 0, y0 = 0}, filter = CAIRO_FILTER_GOOD, extend = CAIRO_EXTEND_PAD, has_component_alpha = 0}, n_stops = 137852016, stops_size = 8, stops = 0x0, stops_embedded = {{offset = 1.5914939144028057e-314, color = {red = 1.2731974745791634e-313, green = 0.10000000000000001, blue = 4.3526637388265413e-269, alpha = -1.9943771668330923, red_short = 0, green_short = 0, blue_short = 4, alpha_short = 0}}, {offset = 26388279066560, color = {red = -9.7538720695749828e-44, green = 4.4397269121059474e-269, blue = -4.4367439817500459e-44, alpha = -2.3534379293677286e-185, red_short = 39321, green_short = 16313, blue_short = 0, alpha_short = 0}}}}, linear = {base = {base = {type = CAIRO_PATTERN_TYPE_SURFACE, ref_count = {ref_count = 0}, status = CAIRO_STATUS_SUCCESS, user_data = {size = 0, num_elements = 0, element_size = 12, elements = 0x0, is_snapshot = 0}, matrix = {xx = 1, yx = 0, xy = 0, yy = 1, x0 = 0, y0 = 0}, filter = CAIRO_FILTER_GOOD, extend = CAIRO_EXTEND_PAD, has_component_alpha = 0}, n_stops = 137852016, stops_size = 8, stops = 0x0, stops_embedded = {{offset = 1.5914939144028057e-314, color = {red = 1.2731974745791634e-313, green = 0.10000000000000001, blue = 4.3526637388265413e-269, alpha = -1.9943771668330923, red_short = 0, green_short = 0, blue_short = 4, alpha_short = 0}}, {offset = 26388279066560, color = {red = -9.7538720695749828e-44, green = 4.4397269121059474e-269, blue = -4.4367439817500459e-44, alpha = -2.3534379293677286e-185, red_short = 39321, green_short = 16313, blue_short = 0, alpha_short = 0}}}}, p1 = {x = 1069128089, y = 0}, p2 = {x = 0, y = -1225722271}}, radial = {base = {base = {type = CAIRO_PATTERN_TYPE_SURFACE, ref_count = {ref_count = 0}, status = CAIRO_STATUS_SUCCESS, user_data = {size = 0, num_elements = 0, element_size = 12, elements = 0x0, is_snapshot = 0}, matrix = {xx = 1, yx = 0, xy = 0, yy = 1, x0 = 0, y0 = 0}, filter = CAIRO_FILTER_GOOD, extend = CAIRO_EXTEND_PAD, has_component_alpha = 0}, n_stops = 137852016, stops_size = 8, stops = 0x0, stops_embedded = {{offset = 1.5914939144028057e-314, color = {red = 1.2731974745791634e-313, green = 0.10000000000000001, blue = 4.3526637388265413e-269, alpha = -1.9943771668330923, red_short = 0, green_short = 0, blue_short = 4, alpha_short = 0}}, {offset = 26388279066560, color = {red = -9.7538720695749828e-44, green = 4.4397269121059474e-269, blue = -4.4367439817500459e-44, alpha = -2.3534379293677286e-185, red_short = 39321, green_short = 16313, blue_short = 0, alpha_short = 0}}}}, c1 = {x = 1069128089, y = 0}, r1 = 0, c2 = {x = -1225722271, y = 137821836}, r2 = 137852016}}}
        pattern = 0x20020888
        clip = {path = 0x83700b0, all_clipped = 0}
        status = <value optimized out>
        op = <value optimized out>
#7  0xb6ef10cc in cairo_paint (cr=0x836fbd8) at /build/buildd-cairo_1.10.2-2-i386-cBabgG/cairo-1.10.2/src/cairo.c:2228
        status = <value optimized out>
#8  0xb700622f in -[CairoGState DPSimage:::::::::::] (self=0x836fa08, _cmd=0xb701b3d0, matrix=0x8373390, pixelsWide=64, pixelsHigh=64, bitsPerSample=8, samplesPerPixel=3, bitsPerPixel=24, bytesPerRow=192, isPlanar=0 '\000', hasAlpha=0 '\000', colorSpaceName=0xb7f958b4, data=0xbfffeb8c) at CairoGState.m:1238
        format = <value optimized out>
        tstruct = {m11 = 1, m12 = 0, m21 = 0, m22 = 1, tX = 0, tY = 0}
        surface = 0x8377470
        tmp = 0x83733b8 "\377\377\377"
        i = -1073747464
        j = <value optimized out>
        index = 16384
        pixels = <value optimized out>
        rowData = <value optimized out>
        local_matrix = {xx = 1, yx = 0, xy = 0, yy = 1, x0 = 0, y0 = 0}
        status = <value optimized out>
#9  0xb6fcfc64 in -[GSContext(NSGraphics) NSDrawBitmap:::::::::::] (self=0x8368408, _cmd=0xb702aa70, rect=..., pixelsWide=64, pixelsHigh=64, bitsPerSample=8, samplesPerPixel=3, bitsPerPixel=24, bytesPerRow=192, isPlanar=<value optimized out>, hasAlpha=<value optimized out>, colorSpaceName=0xb7f958b4, data=0xbfffeb8c) at GSContext.m:884
        trans = 0x8373390
#10 0xb700774c in -[CairoContext(Ops) GSDrawImage::] (self=0x8368408, _cmd=0xb7eeed20, rect=..., imageref=0x835a760) at CairoContext.m:171
        data = {0x8370360 "\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377", 0x0, 0x0, 0x1f00 <Address 0x1f00 out of bounds>, 0xb7007440 "U\211\345WVS\350\\Y\374\377\201\303}", <incomplete sequence \362>}
        colorSpaceName = 0xb702aa70
#11 0xb7c79832 in -[NSBitmapImageRep draw] (self=0x835a760, _cmd=0xb7f291c8) at NSBitmapImageRep.m:1398
        irect = {origin = {x = 0, y = 0}, size = {width = 64, height = 64}}
        ctxt = 0x8368408
#12 0xb7d010ef in -[NSImageRep drawInRect:] (self=0x835a760, _cmd=0xb7f26e70, aRect=...) at NSImageRep.m:488
        ok = <value optimized out>
        ctxt = 0x8368408
        ctm = 0x836fac8
#13 0xb7cfce7d in -[NSImage drawRepresentation:inRect:] (self=0x835c510, _cmd=0xb7f26e10, imageRep=0x835a760, aRect=...) at NSImage.m:941
        r = <value optimized out>
#14 0xb7cfc723 in -[NSImage(Private) _doImageCache:] (self=0x835c510, _cmd=0xb7f26de8, rep=0x8366a40) at NSImage.m:1849
        repd = 0x836f868
#15 0xb7cfc896 in -[NSImage compositeToPoint:fromRect:operation:fraction:] (self=0x835c510, _cmd=0xb7f26dd8, aPoint=..., srcRect=..., op=NSCompositeSourceOver, delta=1) at NSImage.m:849
        rep = 0x835a760
        cache = <value optimized out>
#16 0xb7cf8511 in -[NSImage compositeToPoint:fromRect:operation:] (self=0x835c510, _cmd=0xb7f26dd0, aPoint=..., aRect=..., op=NSCompositeSourceOver) at NSImage.m:816
No locals.
#17 0xb7cf848f in -[NSImage compositeToPoint:operation:] (self=0x835c510, _cmd=0xb7efc9c0, aPoint=..., op=NSCompositeSourceOver) at NSImage.m:809
        rect = {origin = {x = 0, y = 0}, size = {width = 64, height = 64}}
#18 0xb7c99916 in -[NSCell drawInteriorWithFrame:inView:] (self=0x835c000, _cmd=0xb7efc9d0, cellFrame=..., controlView=0x835c040) at NSCell.m:2031
        position = {x = 1.10142511e-19, y = 1.40129846e-45}
        drawingRect = {origin = {x = 0, y = 0}, size = {width = 64, height = 64}}
#19 0xb7c99ab2 in -[NSCell drawWithFrame:inView:] (self=0x835c000, _cmd=0xb7ee7bc8, cellFrame=..., controlView=0x835c040) at NSCell.m:2055
No locals.
#20 0xb7c6133d in -[NSAppIconView drawRect:] (self=0x835c040, _cmd=0xb7f81560, rect=...) at NSApplication.m:522
No locals.
#21 0xb7dd1c91 in -[NSView displayRectIgnoringOpacity:inContext:] (self=0x835c040, _cmd=0xb7f81550, aRect=..., context=0x832f8d0) at NSView.m:2479
        wContext = 0x832f8d0
        flush = <value optimized out>
        subviewNeedsDisplay = 8 '\b'
#22 0xb7dd1f1a in -[NSView displayRectIgnoringOpacity:inContext:] (self=0x83296f0, _cmd=0xb7f81550, aRect=..., context=0x832f8d0) at NSView.m:2512
        subview = 0x835c040
        subviewFrame = {origin = {x = 0, y = 0}, size = {width = 64, height = 64}}
        isect = {origin = {x = 0, y = 0}, size = {width = 64, height = 64}}
        i = 0
        count = 1
        wContext = 0x832f8d0
        flush = <value optimized out>
        subviewNeedsDisplay = 0 '\000'
#23 0xb7dc403c in -[NSView displayRectIgnoringOpacity:] (self=0x83296f0, _cmd=0xb7f81540, aRect=...) at NSView.m:2425
No locals.
#24 0xb7dd1759 in -[NSView displayIfNeededInRectIgnoringOpacity:] (self=0x83296f0, _cmd=0xb7f81530, aRect=...) at NSView.m:2357
        rect = {origin = {x = 0, y = 0}, size = {width = 64, height = 64}}
#25 0xb7dc3e97 in -[NSView displayIfNeededInRect:] (self=0x83296f0, _cmd=0xb7f81528, aRect=...) at NSView.m:2335
No locals.
#26 0xb7dc3c9c in -[NSView displayIfNeeded] (self=0x83296f0, _cmd=0xb7f87d50) at NSView.m:2317
No locals.
#27 0xb7ddacbe in -[NSWindow orderWindow:relativeTo:] (self=0x83271c8, _cmd=0xb7f87d18, place=NSWindowAbove, otherWin=-1) at NSWindow.m:1725
        srv = 0x82170a0
        display = 8 '\b'
#28 0xb7dd66c8 in -[NSWindow orderFrontRegardless] (self=0x83271c8, _cmd=0xb7ee7c30) at NSWindow.m:1642
No locals.
#29 0xb7c66c39 in -[NSApplication(Private) _appIconInit] (self=0x82025d0, _cmd=0xb7ee7e08) at NSApplication.m:3720
        iconRect = {origin = {x = 0, y = 0}, size = {width = 64, height = 64}}
        suppress = 0 '\000'
#30 0xb7c6236a in -[NSApplication finishLaunching] (self=0x82025d0, _cmd=0xb7ee7fb8) at NSApplication.m:993
        mainBundle = <value optimized out>
        infoDict = 0x81fd550
        defs = 0x810c2a0
        filePath = <value optimized out>
        count = 3063881728
        i = <value optimized out>
        hadDuplicates = 183 '\267'
        didAutoreopen = 240 '\360'
        image = 0x83226e0
#31 0xb7c5ee6c in -[NSApplication run] (self=0x82025d0, _cmd=0xb7edde40) at NSApplication.m:1506
        e = <value optimized out>
        distantFuture = 0x82523c0
#32 0xb7c4577d in NSApplicationMain (argc=1, argv=0xbffff7a4) at Functions.m:74
        infoDict = <value optimized out>
        appClass = <value optimized out>
#33 0x08048c87 in main ()
No symbol table info available.
#0  lookup_composite_function (op=PIXMAN_OP_SRC, src=0x83773c0, mask=0x0, dest=0x83685a0, src_x=0, src_y=0, mask_x=0, mask_y=0, dest_x=0, dest_y=0, width=64, height=64) at ../../pixman/pixman.c:378
        i = 0
#1  pixman_image_composite32 (op=PIXMAN_OP_SRC, src=0x83773c0, mask=0x0, dest=0x83685a0, src_x=0, src_y=0, mask_x=0, mask_y=0, dest_x=0, dest_y=0, width=64, height=64) at ../../pixman/pixman.c:767
        src_format = PIXMAN_x8r8g8b8
        mask_format = 0
        dest_format = PIXMAN_a8r8g8b8
        src_flags = 1010431
        mask_flags = 8192
        dest_flags = 936575
        region = {extents = {x1 = 0, y1 = 0, x2 = 64, y2 = 64}, data = 0x0}
        extents = <value optimized out>
        imp = <value optimized out>
        func = 0xf6aff
#2  0xb6f0513e in _composite_boxes (dst=<value optimized out>, op=<value optimized out>, src=0xbfffe828, boxes=0xbfffe324, antialias=CAIRO_ANTIALIAS_DEFAULT, extents=0xbfffe75c, clip=0x0) at /build/buildd-cairo_1.10.2-2-i386-cBabgG/cairo-1.10.2/src/cairo-image-surface.c:3008
        x1 = <value optimized out>
        y1 = <value optimized out>
        x2 = <value optimized out>
        y2 = <value optimized out>
        box = <value optimized out>
        mask = <value optimized out>
        src_x = 0
        mask_y = 0
        pixman_op = PIXMAN_OP_SRC
        src_y = 0
        mask_x = 0
        clip_region = 0x0
        need_clip_mask = <value optimized out>
        status = <value optimized out>
        chunk = 0xbfffe348
        i = 0
        pixel = <value optimized out>
#3  _clip_and_composite_boxes (dst=<value optimized out>, op=<value optimized out>, src=0xbfffe828, boxes=0xbfffe324, antialias=CAIRO_ANTIALIAS_DEFAULT, extents=0xbfffe75c, clip=0x0) at /build/buildd-cairo_1.10.2-2-i386-cBabgG/cairo-1.10.2/src/cairo-image-surface.c:3047
        traps = {status = 137731224, limits = 0x1d, num_limits = -1214602127, maybe_region = 0, has_intersections = 0, is_rectilinear = 0, is_rectangular = 0, num_traps = 137732128, traps_size = 39, traps = 0x3, traps_embedded = {{top = -1073749784, bottom = 0, left = {p1 = {x = 29, y = 96}, p2 = {x = -1073749840, y = -1212783064}}, right = {p1 = {x = 7648, y = -1214615216}, p2 = {x = -1073749908, y = -1073749912}}}, {top = -1215586917, bottom = -1213146216, left = {p1 = {x = -1213085328, y = -1073749904}, p2 = {x = -1073749904, y = -1215461455}}, right = {p1 = {x = 137731240, y = -1073747792}, p2 = {x = 5, y = 0}}}, {top = -1213088288, bottom = -1073747792, left = {p1 = {x = 5, y = -1213146216}, p2 = {x = 2048, y = -1212686816}}, right = {p1 = {x = -1073745720, y = -1215461863}, p2 = {x = -1213088288, y = -1213085280}}}, {top = -1073749840, bottom = -1215461863, left = {p1 = {x = -1213088288, y = -1213085280}, p2 = {x = -1073749840, y = 3}}, right = {p1 = {x = 2424878, y = 64}, p2 = {x = -1073749824, y = 8}}}, {top = 4194341, bottom = 7077934, left = {p1 = {x = 7471216, y = 6946927}, p2 = {x = 4194304, y = 7077934}}, right = {p1 = {x = 1920169263, y = 1651076143}, p2 = {x = 1431193391, y = 1885697139}}}, {top = 1953715456, bottom = 1912631397, left = {p1 = {x = 7959137, y = 136801280}, p2 = {x = -1217114996, y = -1217114996}}, right = {p1 = {x = 40, y = -1216248916}, p2 = {x = 3, y = -1225977964}}}, {top = 136815432, bottom = 137671480, left = {p1 = {x = -1073749656, y = -1226133318}, p2 = {x = 0, y = 20}}, right = {p1 = {x = -1073749576, y = -1216384307}, p2 = {x = 0, y = 0}}}, {top = 137671480, bottom = 256, left = {p1 = {x = 3, y = 256}, p2 = {x = 137808384, y = 192}}, right = {p1 = {x = 64, y = 64}, p2 = {x = -1073749592, y = -1227831786}}}, {top = 137792000, bottom = 64, left = {p1 = {x = 32, y = 0}, p2 = {x = 0, y = 64}}, right = {p1 = {x = -1, y = 0}, p2 = {x = -1216248928, y = 52480}}}, {top = 137671456, bottom = 136767808, left = {p1 = {x = 3, y = 136800744}, p2 = {x = -1217114996, y = -1227760340}}, right = {p1 = {x = -1073747988, y = 64}, p2 = {x = -1073749528, y = -1228117961}}}, {top = 136381336, bottom = 137792000, left = {p1 = {x = 64, y = 32}, p2 = {x = 0, y = 0}}, right = {p1 = {x = -1073749528, y = -1225640849}, p2 = {x = 137852016, y = -1073749432}}}, {top = 137671432, bottom = 136767808, left = {p1 = {x = 3, y = -1073747928}, p2 = {x = -1073749320, y = -1225699006}}, right = {p1 = {x = 137852016, y = -1073749432}, p2 = {x = 64, y = 32}}}, {top = 0, bottom = 0, left = {p1 = {x = 64, y = 64}, p2 = {x = 0, y = 20}}, right = {p1 = {x = -1073749336, y = -1216384307}, p2 = {x = -1216248928, y = -1225044548}}}, {top = -1073748632, bottom = -1225764976, left = {p1 = {x = 137792000, y = 64}, p2 = {x = 32, y = 0}}, right = {p1 = {x = 0, y = 64}, p2 = {x = 0, y = 0}}}, {top = 64, bottom = 64, left = {p1 = {x = -1073749336, y = -1226133318}, p2 = {x = 0, y = 20}}, right = {p1 = {x = -1073749256, y = 0}, p2 = {x = -1216248928, y = 52552}}}, {top = 0, bottom = 137822500, left = {p1 = {x = 137822384, y = -1073748100}, p2 = {x = -1073749288, y = -1225827318}}, right = {p1 = {x = -1073748644, y = -1073748100}, p2 = {x = 3, y = -1225745249}}}}}
        status = <value optimized out>
        info = {traps = 0x40, num_traps = 0, antialias = CAIRO_ANTIALIAS_DEFAULT}
#4  0xb6f0603d in _cairo_image_surface_paint (abstract_surface=0x836ca08, op=CAIRO_OPERATOR_SOURCE, source=0xbfffe828, clip=0x0) at /build/buildd-cairo_1.10.2-2-i386-cBabgG/cairo-1.10.2/src/cairo-image-surface.c:3301
        boxes = {status = CAIRO_STATUS_SUCCESS, limit = {p1 = {x = -1217114996, y = -1217114996}, p2 = {x = 40, y = -1216248916}}, limits = 0x3, num_limits = 0, num_boxes = 1, is_pixel_aligned = 1, chunks = {next = 0x0, base = 0xbfffe55c, count = 1, size = 1}, tail = 0xbfffe348, boxes_embedded = {{p1 = {x = -1216384307, y = -1216248928}, p2 = {x = 52624, y = 137671312}}, {p1 = {x = 136767808, y = 3}, p2 = {x = 136801168, y = -1217114996}}, {p1 = {x = -1217114996, y = 40}, p2 = {x = -1216248916, y = -1217140893}}, {p1 = {x = -1073747256, y = -1218138492}, p2 = {x = 31, y = -1073747596}}, {p1 = {x = 2, y = -1073747448}, p2 = {x = 2, y = -1216253964}}, {p1 = {x = -1073747596, y = -1218138450}, p2 = {x = -1073747640, y = -1217322318}}, {p1 = {x = -1073747596, y = -1218138450}, p2 = {x = 0, y = 0}}, {p1 = {x = -1217114996, y = 40}, p2 = {x = -1216248916, y = 3}}, {p1 = {x = 0, y = 136815540}, p2 = {x = 137671264, y = -1073748936}}, {p1 = {x = -1226133318, y = 0}, p2 = {x = 20, y = -1073748856}}, {p1 = {x = -1216384307, y = -1216248928}, p2 = {x = 52672, y = 137671264}}, {p1 = {x = 136767808, y = 3}, p2 = {x = 0, y = 0}}, {p1 = {x = -1217114996, y = -1}, p2 = {x = 0, y = 0}}, {p1 = {x = 0, y = 136815552}, p2 = {x = 0, y = 0}}, {p1 = {x = -1226133318, y = 48}, p2 = {x = 20, y = -1073748776}}, {p1 = {x = -1216384307, y = -1216248928}, p2 = {x = 0, y = 0}}, {p1 = {x = 0, y = -1073747808}, p2 = {x = 2, y = -1162}}, {p1 = {x = -1217114996, y = 16}, p2 = {x = -1073747810, y = -1073747810}}, {p1 = {x = -1225699971, y = 136815564}, p2 = {x = 1, y = -1217314798}}, {p1 = {x = 0, y = -1218138450}, p2 = {x = -1216255232, y = -1218138450}}, {p1 = {x = -1073747448, y = 2}, p2 = {x = -1218138461, y = 0}}, {p1 = {x = -1073747376, y = -1228214112}, p2 = {x = -1073748668, y = -1073748752}}, {p1 = {x = -1208042940, y = -5592406}, p2 = {x = -5592406, y = 3}}, {p1 = {x = 256, y = 136815576}, p2 = {x = 256, y = 137641208}}, {p1 = {x = 192, y = 64}, p2 = {x = 64, y = -1073748680}}, {p1 = {x = -1227831786, y = 137624824}, p2 = {x = 64, y = 32}}, {p1 = {x = 0, y = 0}, p2 = {x = 64, y = 0}}, {p1 = {x = 137819564, y = 137819448}, p2 = {x = -1073747444, y = -1073748632}}, {p1 = {x = -1225827318, y = -1073747988}, p2 = {x = -1073747444, y = -1073748616}}, {p1 = {x = -1225745249, y = 64}, p2 = {x = 0, y = 0}}, {p1 = {x = 0, y = -1073747476}, p2 = {x = -1073747988, y = -1073748632}}, {p1 = {x = 0, y = 0}, p2 = {x = 0, y = 16384}}}}
        extents = {source = {x = -8388608, y = -8388608, width = 16777215, height = 16777215}, mask = {x = 0, y = 0, width = 64, height = 64}, bounded = {x = 0, y = 0, width = 64, height = 64}, unbounded = {x = 0, y = 0, width = 64, height = 64}, is_bounded = 2}
        clip_path = <value optimized out>
        local_clip = {path = 0x836ca08, all_clipped = 137821772}
        have_clip = 0
        boxes_stack = {{p1 = {x = 0, y = 0}, p2 = {x = 16384, y = 16384}}, {p1 = {x = -1225760707, y = -1225152224}, p2 = {x = -1073748556, y = 0}}, {p1 = {x = -1073747476, y = 0}, p2 = {x = -1073747048, y = -1073748568}}, {p1 = {x = -1217114996, y = -1216769733}, p2 = {x = 1, y = -1073748440}}, {p1 = {x = -1228797696, y = 136421592}, p2 = {x = -1073748556, y = 0}}, {p1 = {x = -1073747476, y = 8}, p2 = {x = 0, y = 32}}, {p1 = {x = -1216384307, y = -1216248928}, p2 = {x = 136421592, y = -1217129194}}, {p1 = {x = 0, y = 1}, p2 = {x = 136425805, y = 0}}, {p1 = {x = -1073747988, y = 1}, p2 = {x = 1, y = -1073748520}}, {p1 = {x = 0, y = -1218613759}, p2 = {x = -1228797696, y = -1218608615}}, {p1 = {x = -1228863723, y = 207}, p2 = {x = 0, y = -1073748328}}, {p1 = {x = 4096, y = 136421680}, p2 = {x = -1216798925, y = -1073748328}}, {p1 = {x = -1227098881, y = 8}, p2 = {x = 136421680, y = 4096}}, {p1 = {x = -1228797696, y = -1228797696}, p2 = {x = 136421592, y = -1073748360}}, {p1 = {x = -1228856779, y = 136421628}, p2 = {x = 136425804, y = -1}}, {p1 = {x = 136425828, y = 136421628}, p2 = {x = -1228797696, y = 136421680}}, {p1 = {x = 136418608, y = -1218613721}, p2 = {x = -1073748256, y = -1218608615}}, {p1 = {x = -1216684010, y = 136421604}, p2 = {x = -1228797696, y = 31991}}, {p1 = {x = -1216253964, y = 136421592}, p2 = {x = 0, y = -1073748328}}, {p1 = {x = -1216684010, y = 136421604}, p2 = {x = -1228797696, y = -1217129194}}, {p1 = {x = -1228857242, y = 136421604}, p2 = {x = 136421604, y = -1073748244}}, {p1 = {x = -1073748304, y = 1}, p2 = {x = 0, y = -1}}, {p1 = {x = 136421604, y = 0}, p2 = {x = 0, y = 0}}, {p1 = {x = -1226179128, y = 136421008}, p2 = {x = 136418608, y = 41}}, {p1 = {x = -1227099030, y = -1216248928}, p2 = {x = -1216253964, y = -1216248928}}, {p1 = {x = 0, y = -1073748216}, p2 = {x = -1217115203, y = 136468721}}, {p1 = {x = -1226179128, y = -1226179128}, p2 = {x = 136418608, y = -1073748120}}, {p1 = {x = -1228139359, y = 137812520}, p2 = {x = 137812520, y = -1073748168}}, {p1 = {x = -1225640849, y = 137852016}, p2 = {x = -1073748112, y = 0}}, {p1 = {x = -1216383856, y = -1073748148}, p2 = {x = 137852312, y = -1073748072}}, {p1 = {x = -1225701142, y = 137852016}, p2 = {x = -1073748112, y = -1073748120}}, {p1 = {x = -1228138574, y = 137820976}, p2 = {x = 136516904, y = 0}}}
        clip_boxes = 0xbfffe55c
        num_boxes = 1
        status = <value optimized out>
#5  0xb6f26326 in _cairo_surface_paint (surface=0x836ca08, op=CAIRO_OPERATOR_SOURCE, source=0xbfffe828, clip=0xbfffe908) at /build/buildd-cairo_1.10.2-2-i386-cBabgG/cairo-1.10.2/src/cairo-surface.c:2022
        status = <value optimized out>
#6  0xb6efac24 in _cairo_gstate_paint (gstate=0x836fd40) at /build/buildd-cairo_1.10.2-2-i386-cBabgG/cairo-1.10.2/src/cairo-gstate.c:1049
        source_pattern = {type = CAIRO_PATTERN_TYPE_SURFACE, base = {type = CAIRO_PATTERN_TYPE_SURFACE, ref_count = {ref_count = 0}, status = CAIRO_STATUS_SUCCESS, user_data = {size = 0, num_elements = 0, element_size = 12, elements = 0x0, is_snapshot = 0}, matrix = {xx = 1, yx = 0, xy = 0, yy = 1, x0 = 0, y0 = 0}, filter = CAIRO_FILTER_GOOD, extend = CAIRO_EXTEND_PAD, has_component_alpha = 0}, solid = {base = {type = CAIRO_PATTERN_TYPE_SURFACE, ref_count = {ref_count = 0}, status = CAIRO_STATUS_SUCCESS, user_data = {size = 0, num_elements = 0, element_size = 12, elements = 0x0, is_snapshot = 0}, matrix = {xx = 1, yx = 0, xy = 0, yy = 1, x0 = 0, y0 = 0}, filter = CAIRO_FILTER_GOOD, extend = CAIRO_EXTEND_PAD, has_component_alpha = 0}, color = {red = 1.7044074273037736e-313, green = -1.9943466186523438, blue = 0, alpha = -2.3534379293677306e-185, red_short = 39321, green_short = 16313, blue_short = 59624, alpha_short = 49151}}, surface = {base = {type = CAIRO_PATTERN_TYPE_SURFACE, ref_count = {ref_count = 0}, status = CAIRO_STATUS_SUCCESS, user_data = {size = 0, num_elements = 0, element_size = 12, elements = 0x0, is_snapshot = 0}, matrix = {xx = 1, yx = 0, xy = 0, yy = 1, x0 = 0, y0 = 0}, filter = CAIRO_FILTER_GOOD, extend = CAIRO_EXTEND_PAD, has_component_alpha = 0}, surface = 0x8377470}, gradient = {base = {base = {type = CAIRO_PATTERN_TYPE_SURFACE, ref_count = {ref_count = 0}, status = CAIRO_STATUS_SUCCESS, user_data = {size = 0, num_elements = 0, element_size = 12, elements = 0x0, is_snapshot = 0}, matrix = {xx = 1, yx = 0, xy = 0, yy = 1, x0 = 0, y0 = 0}, filter = CAIRO_FILTER_GOOD, extend = CAIRO_EXTEND_PAD, has_component_alpha = 0}, n_stops = 137852016, stops_size = 8, stops = 0x0, stops_embedded = {{offset = 1.5914939144028057e-314, color = {red = 1.2731974745791634e-313, green = 0.10000000000000001, blue = 4.3526637388265413e-269, alpha = -1.9943771668330923, red_short = 0, green_short = 0, blue_short = 4, alpha_short = 0}}, {offset = 26388279066560, color = {red = -9.7538720695749828e-44, green = 4.4397269121059474e-269, blue = -4.4367439817500459e-44, alpha = -2.3534379293677286e-185, red_short = 39321, green_short = 16313, blue_short = 0, alpha_short = 0}}}}, linear = {base = {base = {type = CAIRO_PATTERN_TYPE_SURFACE, ref_count = {ref_count = 0}, status = CAIRO_STATUS_SUCCESS, user_data = {size = 0, num_elements = 0, element_size = 12, elements = 0x0, is_snapshot = 0}, matrix = {xx = 1, yx = 0, xy = 0, yy = 1, x0 = 0, y0 = 0}, filter = CAIRO_FILTER_GOOD, extend = CAIRO_EXTEND_PAD, has_component_alpha = 0}, n_stops = 137852016, stops_size = 8, stops = 0x0, stops_embedded = {{offset = 1.5914939144028057e-314, color = {red = 1.2731974745791634e-313, green = 0.10000000000000001, blue = 4.3526637388265413e-269, alpha = -1.9943771668330923, red_short = 0, green_short = 0, blue_short = 4, alpha_short = 0}}, {offset = 26388279066560, color = {red = -9.7538720695749828e-44, green = 4.4397269121059474e-269, blue = -4.4367439817500459e-44, alpha = -2.3534379293677286e-185, red_short = 39321, green_short = 16313, blue_short = 0, alpha_short = 0}}}}, p1 = {x = 1069128089, y = 0}, p2 = {x = 0, y = -1225722271}}, radial = {base = {base = {type = CAIRO_PATTERN_TYPE_SURFACE, ref_count = {ref_count = 0}, status = CAIRO_STATUS_SUCCESS, user_data = {size = 0, num_elements = 0, element_size = 12, elements = 0x0, is_snapshot = 0}, matrix = {xx = 1, yx = 0, xy = 0, yy = 1, x0 = 0, y0 = 0}, filter = CAIRO_FILTER_GOOD, extend = CAIRO_EXTEND_PAD, has_component_alpha = 0}, n_stops = 137852016, stops_size = 8, stops = 0x0, stops_embedded = {{offset = 1.5914939144028057e-314, color = {red = 1.2731974745791634e-313, green = 0.10000000000000001, blue = 4.3526637388265413e-269, alpha = -1.9943771668330923, red_short = 0, green_short = 0, blue_short = 4, alpha_short = 0}}, {offset = 26388279066560, color = {red = -9.7538720695749828e-44, green = 4.4397269121059474e-269, blue = -4.4367439817500459e-44, alpha = -2.3534379293677286e-185, red_short = 39321, green_short = 16313, blue_short = 0, alpha_short = 0}}}}, c1 = {x = 1069128089, y = 0}, r1 = 0, c2 = {x = -1225722271, y = 137821836}, r2 = 137852016}}}
        pattern = 0x20020888
        clip = {path = 0x83700b0, all_clipped = 0}
        status = <value optimized out>
        op = <value optimized out>
#7  0xb6ef10cc in cairo_paint (cr=0x836fbd8) at /build/buildd-cairo_1.10.2-2-i386-cBabgG/cairo-1.10.2/src/cairo.c:2228
        status = <value optimized out>
#8  0xb700622f in -[CairoGState DPSimage:::::::::::] (self=0x836fa08, _cmd=0xb701b3d0, matrix=0x8373390, pixelsWide=64, pixelsHigh=64, bitsPerSample=8, samplesPerPixel=3, bitsPerPixel=24, bytesPerRow=192, isPlanar=0 '\000', hasAlpha=0 '\000', colorSpaceName=0xb7f958b4, data=0xbfffeb8c) at CairoGState.m:1238
        format = <value optimized out>
        tstruct = {m11 = 1, m12 = 0, m21 = 0, m22 = 1, tX = 0, tY = 0}
        surface = 0x8377470
        tmp = 0x83733b8 "\377\377\377"
        i = -1073747464
        j = <value optimized out>
        index = 16384
        pixels = <value optimized out>
        rowData = <value optimized out>
        local_matrix = {xx = 1, yx = 0, xy = 0, yy = 1, x0 = 0, y0 = 0}
        status = <value optimized out>
#9  0xb6fcfc64 in -[GSContext(NSGraphics) NSDrawBitmap:::::::::::] (self=0x8368408, _cmd=0xb702aa70, rect=..., pixelsWide=64, pixelsHigh=64, bitsPerSample=8, samplesPerPixel=3, bitsPerPixel=24, bytesPerRow=192, isPlanar=<value optimized out>, hasAlpha=<value optimized out>, colorSpaceName=0xb7f958b4, data=0xbfffeb8c) at GSContext.m:884
        trans = 0x8373390
#10 0xb700774c in -[CairoContext(Ops) GSDrawImage::] (self=0x8368408, _cmd=0xb7eeed20, rect=..., imageref=0x835a760) at CairoContext.m:171
        data = {0x8370360 "\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377", 0x0, 0x0, 0x1f00 <Address 0x1f00 out of bounds>, 0xb7007440 "U\211\345WVS\350\\Y\374\377\201\303}", <incomplete sequence \362>}
        colorSpaceName = 0xb702aa70
#11 0xb7c79832 in -[NSBitmapImageRep draw] (self=0x835a760, _cmd=0xb7f291c8) at NSBitmapImageRep.m:1398
        irect = {origin = {x = 0, y = 0}, size = {width = 64, height = 64}}
        ctxt = 0x8368408
#12 0xb7d010ef in -[NSImageRep drawInRect:] (self=0x835a760, _cmd=0xb7f26e70, aRect=...) at NSImageRep.m:488
        ok = <value optimized out>
        ctxt = 0x8368408
        ctm = 0x836fac8
#13 0xb7cfce7d in -[NSImage drawRepresentation:inRect:] (self=0x835c510, _cmd=0xb7f26e10, imageRep=0x835a760, aRect=...) at NSImage.m:941
        r = <value optimized out>
#14 0xb7cfc723 in -[NSImage(Private) _doImageCache:] (self=0x835c510, _cmd=0xb7f26de8, rep=0x8366a40) at NSImage.m:1849
        repd = 0x836f868
#15 0xb7cfc896 in -[NSImage compositeToPoint:fromRect:operation:fraction:] (self=0x835c510, _cmd=0xb7f26dd8, aPoint=..., srcRect=..., op=NSCompositeSourceOver, delta=1) at NSImage.m:849
        rep = 0x835a760
        cache = <value optimized out>
#16 0xb7cf8511 in -[NSImage compositeToPoint:fromRect:operation:] (self=0x835c510, _cmd=0xb7f26dd0, aPoint=..., aRect=..., op=NSCompositeSourceOver) at NSImage.m:816
No locals.
#17 0xb7cf848f in -[NSImage compositeToPoint:operation:] (self=0x835c510, _cmd=0xb7efc9c0, aPoint=..., op=NSCompositeSourceOver) at NSImage.m:809
        rect = {origin = {x = 0, y = 0}, size = {width = 64, height = 64}}
#18 0xb7c99916 in -[NSCell drawInteriorWithFrame:inView:] (self=0x835c000, _cmd=0xb7efc9d0, cellFrame=..., controlView=0x835c040) at NSCell.m:2031
        position = {x = 1.10142511e-19, y = 1.40129846e-45}
        drawingRect = {origin = {x = 0, y = 0}, size = {width = 64, height = 64}}
#19 0xb7c99ab2 in -[NSCell drawWithFrame:inView:] (self=0x835c000, _cmd=0xb7ee7bc8, cellFrame=..., controlView=0x835c040) at NSCell.m:2055
No locals.
#20 0xb7c6133d in -[NSAppIconView drawRect:] (self=0x835c040, _cmd=0xb7f81560, rect=...) at NSApplication.m:522
No locals.
#21 0xb7dd1c91 in -[NSView displayRectIgnoringOpacity:inContext:] (self=0x835c040, _cmd=0xb7f81550, aRect=..., context=0x832f8d0) at NSView.m:2479
        wContext = 0x832f8d0
        flush = <value optimized out>
        subviewNeedsDisplay = 8 '\b'
#22 0xb7dd1f1a in -[NSView displayRectIgnoringOpacity:inContext:] (self=0x83296f0, _cmd=0xb7f81550, aRect=..., context=0x832f8d0) at NSView.m:2512
        subview = 0x835c040
        subviewFrame = {origin = {x = 0, y = 0}, size = {width = 64, height = 64}}
        isect = {origin = {x = 0, y = 0}, size = {width = 64, height = 64}}
        i = 0
        count = 1
        wContext = 0x832f8d0
        flush = <value optimized out>
        subviewNeedsDisplay = 0 '\000'
#23 0xb7dc403c in -[NSView displayRectIgnoringOpacity:] (self=0x83296f0, _cmd=0xb7f81540, aRect=...) at NSView.m:2425
No locals.
#24 0xb7dd1759 in -[NSView displayIfNeededInRectIgnoringOpacity:] (self=0x83296f0, _cmd=0xb7f81530, aRect=...) at NSView.m:2357
        rect = {origin = {x = 0, y = 0}, size = {width = 64, height = 64}}
#25 0xb7dc3e97 in -[NSView displayIfNeededInRect:] (self=0x83296f0, _cmd=0xb7f81528, aRect=...) at NSView.m:2335
No locals.
#26 0xb7dc3c9c in -[NSView displayIfNeeded] (self=0x83296f0, _cmd=0xb7f87d50) at NSView.m:2317
No locals.
#27 0xb7ddacbe in -[NSWindow orderWindow:relativeTo:] (self=0x83271c8, _cmd=0xb7f87d18, place=NSWindowAbove, otherWin=-1) at NSWindow.m:1725
        srv = 0x82170a0
        display = 8 '\b'
#28 0xb7dd66c8 in -[NSWindow orderFrontRegardless] (self=0x83271c8, _cmd=0xb7ee7c30) at NSWindow.m:1642
No locals.
#29 0xb7c66c39 in -[NSApplication(Private) _appIconInit] (self=0x82025d0, _cmd=0xb7ee7e08) at NSApplication.m:3720
        iconRect = {origin = {x = 0, y = 0}, size = {width = 64, height = 64}}
        suppress = 0 '\000'
#30 0xb7c6236a in -[NSApplication finishLaunching] (self=0x82025d0, _cmd=0xb7ee7fb8) at NSApplication.m:993
        mainBundle = <value optimized out>
        infoDict = 0x81fd550
        defs = 0x810c2a0
        filePath = <value optimized out>
        count = 3063881728
        i = <value optimized out>
        hadDuplicates = 183 '\267'
        didAutoreopen = 240 '\360'
        image = 0x83226e0
#31 0xb7c5ee6c in -[NSApplication run] (self=0x82025d0, _cmd=0xb7edde40) at NSApplication.m:1506
        e = <value optimized out>
        distantFuture = 0x82523c0
#32 0xb7c4577d in NSApplicationMain (argc=1, argv=0xbffff7a4) at Functions.m:74
        infoDict = <value optimized out>
        appClass = <value optimized out>
#33 0x08048c87 in main ()
No symbol table info available.
#0  lookup_composite_function (op=PIXMAN_OP_SRC, src=0x83773c0, mask=0x0, dest=0x83685a0, src_x=0, src_y=0, mask_x=0, mask_y=0, dest_x=0, dest_y=0, width=64, height=64) at ../../pixman/pixman.c:378
        i = 0
#1  pixman_image_composite32 (op=PIXMAN_OP_SRC, src=0x83773c0, mask=0x0, dest=0x83685a0, src_x=0, src_y=0, mask_x=0, mask_y=0, dest_x=0, dest_y=0, width=64, height=64) at ../../pixman/pixman.c:767
        src_format = PIXMAN_x8r8g8b8
        mask_format = 0
        dest_format = PIXMAN_a8r8g8b8
        src_flags = 1010431
        mask_flags = 8192
        dest_flags = 936575
        region = {extents = {x1 = 0, y1 = 0, x2 = 64, y2 = 64}, data = 0x0}
        extents = <value optimized out>
        imp = <value optimized out>
        func = 0xf6aff
#2  0xb6f0513e in _composite_boxes (dst=<value optimized out>, op=<value optimized out>, src=0xbfffe828, boxes=0xbfffe324, antialias=CAIRO_ANTIALIAS_DEFAULT, extents=0xbfffe75c, clip=0x0) at /build/buildd-cairo_1.10.2-2-i386-cBabgG/cairo-1.10.2/src/cairo-image-surface.c:3008
        x1 = <value optimized out>
        y1 = <value optimized out>
        x2 = <value optimized out>
        y2 = <value optimized out>
        box = <value optimized out>
        mask = <value optimized out>
        src_x = 0
        mask_y = 0
        pixman_op = PIXMAN_OP_SRC
        src_y = 0
        mask_x = 0
        clip_region = 0x0
        need_clip_mask = <value optimized out>
        status = <value optimized out>
        chunk = 0xbfffe348
        i = 0
        pixel = <value optimized out>
#3  _clip_and_composite_boxes (dst=<value optimized out>, op=<value optimized out>, src=0xbfffe828, boxes=0xbfffe324, antialias=CAIRO_ANTIALIAS_DEFAULT, extents=0xbfffe75c, clip=0x0) at /build/buildd-cairo_1.10.2-2-i386-cBabgG/cairo-1.10.2/src/cairo-image-surface.c:3047
        traps = {status = 137731224, limits = 0x1d, num_limits = -1214602127, maybe_region = 0, has_intersections = 0, is_rectilinear = 0, is_rectangular = 0, num_traps = 137732128, traps_size = 39, traps = 0x3, traps_embedded = {{top = -1073749784, bottom = 0, left = {p1 = {x = 29, y = 96}, p2 = {x = -1073749840, y = -1212783064}}, right = {p1 = {x = 7648, y = -1214615216}, p2 = {x = -1073749908, y = -1073749912}}}, {top = -1215586917, bottom = -1213146216, left = {p1 = {x = -1213085328, y = -1073749904}, p2 = {x = -1073749904, y = -1215461455}}, right = {p1 = {x = 137731240, y = -1073747792}, p2 = {x = 5, y = 0}}}, {top = -1213088288, bottom = -1073747792, left = {p1 = {x = 5, y = -1213146216}, p2 = {x = 2048, y = -1212686816}}, right = {p1 = {x = -1073745720, y = -1215461863}, p2 = {x = -1213088288, y = -1213085280}}}, {top = -1073749840, bottom = -1215461863, left = {p1 = {x = -1213088288, y = -1213085280}, p2 = {x = -1073749840, y = 3}}, right = {p1 = {x = 2424878, y = 64}, p2 = {x = -1073749824, y = 8}}}, {top = 4194341, bottom = 7077934, left = {p1 = {x = 7471216, y = 6946927}, p2 = {x = 4194304, y = 7077934}}, right = {p1 = {x = 1920169263, y = 1651076143}, p2 = {x = 1431193391, y = 1885697139}}}, {top = 1953715456, bottom = 1912631397, left = {p1 = {x = 7959137, y = 136801280}, p2 = {x = -1217114996, y = -1217114996}}, right = {p1 = {x = 40, y = -1216248916}, p2 = {x = 3, y = -1225977964}}}, {top = 136815432, bottom = 137671480, left = {p1 = {x = -1073749656, y = -1226133318}, p2 = {x = 0, y = 20}}, right = {p1 = {x = -1073749576, y = -1216384307}, p2 = {x = 0, y = 0}}}, {top = 137671480, bottom = 256, left = {p1 = {x = 3, y = 256}, p2 = {x = 137808384, y = 192}}, right = {p1 = {x = 64, y = 64}, p2 = {x = -1073749592, y = -1227831786}}}, {top = 137792000, bottom = 64, left = {p1 = {x = 32, y = 0}, p2 = {x = 0, y = 64}}, right = {p1 = {x = -1, y = 0}, p2 = {x = -1216248928, y = 52480}}}, {top = 137671456, bottom = 136767808, left = {p1 = {x = 3, y = 136800744}, p2 = {x = -1217114996, y = -1227760340}}, right = {p1 = {x = -1073747988, y = 64}, p2 = {x = -1073749528, y = -1228117961}}}, {top = 136381336, bottom = 137792000, left = {p1 = {x = 64, y = 32}, p2 = {x = 0, y = 0}}, right = {p1 = {x = -1073749528, y = -1225640849}, p2 = {x = 137852016, y = -1073749432}}}, {top = 137671432, bottom = 136767808, left = {p1 = {x = 3, y = -1073747928}, p2 = {x = -1073749320, y = -1225699006}}, right = {p1 = {x = 137852016, y = -1073749432}, p2 = {x = 64, y = 32}}}, {top = 0, bottom = 0, left = {p1 = {x = 64, y = 64}, p2 = {x = 0, y = 20}}, right = {p1 = {x = -1073749336, y = -1216384307}, p2 = {x = -1216248928, y = -1225044548}}}, {top = -1073748632, bottom = -1225764976, left = {p1 = {x = 137792000, y = 64}, p2 = {x = 32, y = 0}}, right = {p1 = {x = 0, y = 64}, p2 = {x = 0, y = 0}}}, {top = 64, bottom = 64, left = {p1 = {x = -1073749336, y = -1226133318}, p2 = {x = 0, y = 20}}, right = {p1 = {x = -1073749256, y = 0}, p2 = {x = -1216248928, y = 52552}}}, {top = 0, bottom = 137822500, left = {p1 = {x = 137822384, y = -1073748100}, p2 = {x = -1073749288, y = -1225827318}}, right = {p1 = {x = -1073748644, y = -1073748100}, p2 = {x = 3, y = -1225745249}}}}}
        status = <value optimized out>
        info = {traps = 0x40, num_traps = 0, antialias = CAIRO_ANTIALIAS_DEFAULT}
#4  0xb6f0603d in _cairo_image_surface_paint (abstract_surface=0x836ca08, op=CAIRO_OPERATOR_SOURCE, source=0xbfffe828, clip=0x0) at /build/buildd-cairo_1.10.2-2-i386-cBabgG/cairo-1.10.2/src/cairo-image-surface.c:3301
        boxes = {status = CAIRO_STATUS_SUCCESS, limit = {p1 = {x = -1217114996, y = -1217114996}, p2 = {x = 40, y = -1216248916}}, limits = 0x3, num_limits = 0, num_boxes = 1, is_pixel_aligned = 1, chunks = {next = 0x0, base = 0xbfffe55c, count = 1, size = 1}, tail = 0xbfffe348, boxes_embedded = {{p1 = {x = -1216384307, y = -1216248928}, p2 = {x = 52624, y = 137671312}}, {p1 = {x = 136767808, y = 3}, p2 = {x = 136801168, y = -1217114996}}, {p1 = {x = -1217114996, y = 40}, p2 = {x = -1216248916, y = -1217140893}}, {p1 = {x = -1073747256, y = -1218138492}, p2 = {x = 31, y = -1073747596}}, {p1 = {x = 2, y = -1073747448}, p2 = {x = 2, y = -1216253964}}, {p1 = {x = -1073747596, y = -1218138450}, p2 = {x = -1073747640, y = -1217322318}}, {p1 = {x = -1073747596, y = -1218138450}, p2 = {x = 0, y = 0}}, {p1 = {x = -1217114996, y = 40}, p2 = {x = -1216248916, y = 3}}, {p1 = {x = 0, y = 136815540}, p2 = {x = 137671264, y = -1073748936}}, {p1 = {x = -1226133318, y = 0}, p2 = {x = 20, y = -1073748856}}, {p1 = {x = -1216384307, y = -1216248928}, p2 = {x = 52672, y = 137671264}}, {p1 = {x = 136767808, y = 3}, p2 = {x = 0, y = 0}}, {p1 = {x = -1217114996, y = -1}, p2 = {x = 0, y = 0}}, {p1 = {x = 0, y = 136815552}, p2 = {x = 0, y = 0}}, {p1 = {x = -1226133318, y = 48}, p2 = {x = 20, y = -1073748776}}, {p1 = {x = -1216384307, y = -1216248928}, p2 = {x = 0, y = 0}}, {p1 = {x = 0, y = -1073747808}, p2 = {x = 2, y = -1162}}, {p1 = {x = -1217114996, y = 16}, p2 = {x = -1073747810, y = -1073747810}}, {p1 = {x = -1225699971, y = 136815564}, p2 = {x = 1, y = -1217314798}}, {p1 = {x = 0, y = -1218138450}, p2 = {x = -1216255232, y = -1218138450}}, {p1 = {x = -1073747448, y = 2}, p2 = {x = -1218138461, y = 0}}, {p1 = {x = -1073747376, y = -1228214112}, p2 = {x = -1073748668, y = -1073748752}}, {p1 = {x = -1208042940, y = -5592406}, p2 = {x = -5592406, y = 3}}, {p1 = {x = 256, y = 136815576}, p2 = {x = 256, y = 137641208}}, {p1 = {x = 192, y = 64}, p2 = {x = 64, y = -1073748680}}, {p1 = {x = -1227831786, y = 137624824}, p2 = {x = 64, y = 32}}, {p1 = {x = 0, y = 0}, p2 = {x = 64, y = 0}}, {p1 = {x = 137819564, y = 137819448}, p2 = {x = -1073747444, y = -1073748632}}, {p1 = {x = -1225827318, y = -1073747988}, p2 = {x = -1073747444, y = -1073748616}}, {p1 = {x = -1225745249, y = 64}, p2 = {x = 0, y = 0}}, {p1 = {x = 0, y = -1073747476}, p2 = {x = -1073747988, y = -1073748632}}, {p1 = {x = 0, y = 0}, p2 = {x = 0, y = 16384}}}}
        extents = {source = {x = -8388608, y = -8388608, width = 16777215, height = 16777215}, mask = {x = 0, y = 0, width = 64, height = 64}, bounded = {x = 0, y = 0, width = 64, height = 64}, unbounded = {x = 0, y = 0, width = 64, height = 64}, is_bounded = 2}
        clip_path = <value optimized out>
        local_clip = {path = 0x836ca08, all_clipped = 137821772}
        have_clip = 0
        boxes_stack = {{p1 = {x = 0, y = 0}, p2 = {x = 16384, y = 16384}}, {p1 = {x = -1225760707, y = -1225152224}, p2 = {x = -1073748556, y = 0}}, {p1 = {x = -1073747476, y = 0}, p2 = {x = -1073747048, y = -1073748568}}, {p1 = {x = -1217114996, y = -1216769733}, p2 = {x = 1, y = -1073748440}}, {p1 = {x = -1228797696, y = 136421592}, p2 = {x = -1073748556, y = 0}}, {p1 = {x = -1073747476, y = 8}, p2 = {x = 0, y = 32}}, {p1 = {x = -1216384307, y = -1216248928}, p2 = {x = 136421592, y = -1217129194}}, {p1 = {x = 0, y = 1}, p2 = {x = 136425805, y = 0}}, {p1 = {x = -1073747988, y = 1}, p2 = {x = 1, y = -1073748520}}, {p1 = {x = 0, y = -1218613759}, p2 = {x = -1228797696, y = -1218608615}}, {p1 = {x = -1228863723, y = 207}, p2 = {x = 0, y = -1073748328}}, {p1 = {x = 4096, y = 136421680}, p2 = {x = -1216798925, y = -1073748328}}, {p1 = {x = -1227098881, y = 8}, p2 = {x = 136421680, y = 4096}}, {p1 = {x = -1228797696, y = -1228797696}, p2 = {x = 136421592, y = -1073748360}}, {p1 = {x = -1228856779, y = 136421628}, p2 = {x = 136425804, y = -1}}, {p1 = {x = 136425828, y = 136421628}, p2 = {x = -1228797696, y = 136421680}}, {p1 = {x = 136418608, y = -1218613721}, p2 = {x = -1073748256, y = -1218608615}}, {p1 = {x = -1216684010, y = 136421604}, p2 = {x = -1228797696, y = 31991}}, {p1 = {x = -1216253964, y = 136421592}, p2 = {x = 0, y = -1073748328}}, {p1 = {x = -1216684010, y = 136421604}, p2 = {x = -1228797696, y = -1217129194}}, {p1 = {x = -1228857242, y = 136421604}, p2 = {x = 136421604, y = -1073748244}}, {p1 = {x = -1073748304, y = 1}, p2 = {x = 0, y = -1}}, {p1 = {x = 136421604, y = 0}, p2 = {x = 0, y = 0}}, {p1 = {x = -1226179128, y = 136421008}, p2 = {x = 136418608, y = 41}}, {p1 = {x = -1227099030, y = -1216248928}, p2 = {x = -1216253964, y = -1216248928}}, {p1 = {x = 0, y = -1073748216}, p2 = {x = -1217115203, y = 136468721}}, {p1 = {x = -1226179128, y = -1226179128}, p2 = {x = 136418608, y = -1073748120}}, {p1 = {x = -1228139359, y = 137812520}, p2 = {x = 137812520, y = -1073748168}}, {p1 = {x = -1225640849, y = 137852016}, p2 = {x = -1073748112, y = 0}}, {p1 = {x = -1216383856, y = -1073748148}, p2 = {x = 137852312, y = -1073748072}}, {p1 = {x = -1225701142, y = 137852016}, p2 = {x = -1073748112, y = -1073748120}}, {p1 = {x = -1228138574, y = 137820976}, p2 = {x = 136516904, y = 0}}}
        clip_boxes = 0xbfffe55c
        num_boxes = 1
        status = <value optimized out>
#5  0xb6f26326 in _cairo_surface_paint (surface=0x836ca08, op=CAIRO_OPERATOR_SOURCE, source=0xbfffe828, clip=0xbfffe908) at /build/buildd-cairo_1.10.2-2-i386-cBabgG/cairo-1.10.2/src/cairo-surface.c:2022
        status = <value optimized out>
#6  0xb6efac24 in _cairo_gstate_paint (gstate=0x836fd40) at /build/buildd-cairo_1.10.2-2-i386-cBabgG/cairo-1.10.2/src/cairo-gstate.c:1049
        source_pattern = {type = CAIRO_PATTERN_TYPE_SURFACE, base = {type = CAIRO_PATTERN_TYPE_SURFACE, ref_count = {ref_count = 0}, status = CAIRO_STATUS_SUCCESS, user_data = {size = 0, num_elements = 0, element_size = 12, elements = 0x0, is_snapshot = 0}, matrix = {xx = 1, yx = 0, xy = 0, yy = 1, x0 = 0, y0 = 0}, filter = CAIRO_FILTER_GOOD, extend = CAIRO_EXTEND_PAD, has_component_alpha = 0}, solid = {base = {type = CAIRO_PATTERN_TYPE_SURFACE, ref_count = {ref_count = 0}, status = CAIRO_STATUS_SUCCESS, user_data = {size = 0, num_elements = 0, element_size = 12, elements = 0x0, is_snapshot = 0}, matrix = {xx = 1, yx = 0, xy = 0, yy = 1, x0 = 0, y0 = 0}, filter = CAIRO_FILTER_GOOD, extend = CAIRO_EXTEND_PAD, has_component_alpha = 0}, color = {red = 1.7044074273037736e-313, green = -1.9943466186523438, blue = 0, alpha = -2.3534379293677306e-185, red_short = 39321, green_short = 16313, blue_short = 59624, alpha_short = 49151}}, surface = {base = {type = CAIRO_PATTERN_TYPE_SURFACE, ref_count = {ref_count = 0}, status = CAIRO_STATUS_SUCCESS, user_data = {size = 0, num_elements = 0, element_size = 12, elements = 0x0, is_snapshot = 0}, matrix = {xx = 1, yx = 0, xy = 0, yy = 1, x0 = 0, y0 = 0}, filter = CAIRO_FILTER_GOOD, extend = CAIRO_EXTEND_PAD, has_component_alpha = 0}, surface = 0x8377470}, gradient = {base = {base = {type = CAIRO_PATTERN_TYPE_SURFACE, ref_count = {ref_count = 0}, status = CAIRO_STATUS_SUCCESS, user_data = {size = 0, num_elements = 0, element_size = 12, elements = 0x0, is_snapshot = 0}, matrix = {xx = 1, yx = 0, xy = 0, yy = 1, x0 = 0, y0 = 0}, filter = CAIRO_FILTER_GOOD, extend = CAIRO_EXTEND_PAD, has_component_alpha = 0}, n_stops = 137852016, stops_size = 8, stops = 0x0, stops_embedded = {{offset = 1.5914939144028057e-314, color = {red = 1.2731974745791634e-313, green = 0.10000000000000001, blue = 4.3526637388265413e-269, alpha = -1.9943771668330923, red_short = 0, green_short = 0, blue_short = 4, alpha_short = 0}}, {offset = 26388279066560, color = {red = -9.7538720695749828e-44, green = 4.4397269121059474e-269, blue = -4.4367439817500459e-44, alpha = -2.3534379293677286e-185, red_short = 39321, green_short = 16313, blue_short = 0, alpha_short = 0}}}}, linear = {base = {base = {type = CAIRO_PATTERN_TYPE_SURFACE, ref_count = {ref_count = 0}, status = CAIRO_STATUS_SUCCESS, user_data = {size = 0, num_elements = 0, element_size = 12, elements = 0x0, is_snapshot = 0}, matrix = {xx = 1, yx = 0, xy = 0, yy = 1, x0 = 0, y0 = 0}, filter = CAIRO_FILTER_GOOD, extend = CAIRO_EXTEND_PAD, has_component_alpha = 0}, n_stops = 137852016, stops_size = 8, stops = 0x0, stops_embedded = {{offset = 1.5914939144028057e-314, color = {red = 1.2731974745791634e-313, green = 0.10000000000000001, blue = 4.3526637388265413e-269, alpha = -1.9943771668330923, red_short = 0, green_short = 0, blue_short = 4, alpha_short = 0}}, {offset = 26388279066560, color = {red = -9.7538720695749828e-44, green = 4.4397269121059474e-269, blue = -4.4367439817500459e-44, alpha = -2.3534379293677286e-185, red_short = 39321, green_short = 16313, blue_short = 0, alpha_short = 0}}}}, p1 = {x = 1069128089, y = 0}, p2 = {x = 0, y = -1225722271}}, radial = {base = {base = {type = CAIRO_PATTERN_TYPE_SURFACE, ref_count = {ref_count = 0}, status = CAIRO_STATUS_SUCCESS, user_data = {size = 0, num_elements = 0, element_size = 12, elements = 0x0, is_snapshot = 0}, matrix = {xx = 1, yx = 0, xy = 0, yy = 1, x0 = 0, y0 = 0}, filter = CAIRO_FILTER_GOOD, extend = CAIRO_EXTEND_PAD, has_component_alpha = 0}, n_stops = 137852016, stops_size = 8, stops = 0x0, stops_embedded = {{offset = 1.5914939144028057e-314, color = {red = 1.2731974745791634e-313, green = 0.10000000000000001, blue = 4.3526637388265413e-269, alpha = -1.9943771668330923, red_short = 0, green_short = 0, blue_short = 4, alpha_short = 0}}, {offset = 26388279066560, color = {red = -9.7538720695749828e-44, green = 4.4397269121059474e-269, blue = -4.4367439817500459e-44, alpha = -2.3534379293677286e-185, red_short = 39321, green_short = 16313, blue_short = 0, alpha_short = 0}}}}, c1 = {x = 1069128089, y = 0}, r1 = 0, c2 = {x = -1225722271, y = 137821836}, r2 = 137852016}}}
        pattern = 0x20020888
        clip = {path = 0x83700b0, all_clipped = 0}
        status = <value optimized out>
        op = <value optimized out>
#7  0xb6ef10cc in cairo_paint (cr=0x836fbd8) at /build/buildd-cairo_1.10.2-2-i386-cBabgG/cairo-1.10.2/src/cairo.c:2228
        status = <value optimized out>
#8  0xb700622f in -[CairoGState DPSimage:::::::::::] (self=0x836fa08, _cmd=0xb701b3d0, matrix=0x8373390, pixelsWide=64, pixelsHigh=64, bitsPerSample=8, samplesPerPixel=3, bitsPerPixel=24, bytesPerRow=192, isPlanar=0 '\000', hasAlpha=0 '\000', colorSpaceName=0xb7f958b4, data=0xbfffeb8c) at CairoGState.m:1238
        format = <value optimized out>
        tstruct = {m11 = 1, m12 = 0, m21 = 0, m22 = 1, tX = 0, tY = 0}
        surface = 0x8377470
        tmp = 0x83733b8 "\377\377\377"
        i = -1073747464
        j = <value optimized out>
        index = 16384
        pixels = <value optimized out>
        rowData = <value optimized out>
        local_matrix = {xx = 1, yx = 0, xy = 0, yy = 1, x0 = 0, y0 = 0}
        status = <value optimized out>
#9  0xb6fcfc64 in -[GSContext(NSGraphics) NSDrawBitmap:::::::::::] (self=0x8368408, _cmd=0xb702aa70, rect=..., pixelsWide=64, pixelsHigh=64, bitsPerSample=8, samplesPerPixel=3, bitsPerPixel=24, bytesPerRow=192, isPlanar=<value optimized out>, hasAlpha=<value optimized out>, colorSpaceName=0xb7f958b4, data=0xbfffeb8c) at GSContext.m:884
        trans = 0x8373390
#10 0xb700774c in -[CairoContext(Ops) GSDrawImage::] (self=0x8368408, _cmd=0xb7eeed20, rect=..., imageref=0x835a760) at CairoContext.m:171
        data = {0x8370360 "\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377", 0x0, 0x0, 0x1f00 <Address 0x1f00 out of bounds>, 0xb7007440 "U\211\345WVS\350\\Y\374\377\201\303}", <incomplete sequence \362>}
        colorSpaceName = 0xb702aa70
#11 0xb7c79832 in -[NSBitmapImageRep draw] (self=0x835a760, _cmd=0xb7f291c8) at NSBitmapImageRep.m:1398
        irect = {origin = {x = 0, y = 0}, size = {width = 64, height = 64}}
        ctxt = 0x8368408
#12 0xb7d010ef in -[NSImageRep drawInRect:] (self=0x835a760, _cmd=0xb7f26e70, aRect=...) at NSImageRep.m:488
        ok = <value optimized out>
        ctxt = 0x8368408
        ctm = 0x836fac8
#13 0xb7cfce7d in -[NSImage drawRepresentation:inRect:] (self=0x835c510, _cmd=0xb7f26e10, imageRep=0x835a760, aRect=...) at NSImage.m:941
        r = <value optimized out>
#14 0xb7cfc723 in -[NSImage(Private) _doImageCache:] (self=0x835c510, _cmd=0xb7f26de8, rep=0x8366a40) at NSImage.m:1849
        repd = 0x836f868
#15 0xb7cfc896 in -[NSImage compositeToPoint:fromRect:operation:fraction:] (self=0x835c510, _cmd=0xb7f26dd8, aPoint=..., srcRect=..., op=NSCompositeSourceOver, delta=1) at NSImage.m:849
        rep = 0x835a760
        cache = <value optimized out>
#16 0xb7cf8511 in -[NSImage compositeToPoint:fromRect:operation:] (self=0x835c510, _cmd=0xb7f26dd0, aPoint=..., aRect=..., op=NSCompositeSourceOver) at NSImage.m:816
No locals.
#17 0xb7cf848f in -[NSImage compositeToPoint:operation:] (self=0x835c510, _cmd=0xb7efc9c0, aPoint=..., op=NSCompositeSourceOver) at NSImage.m:809
        rect = {origin = {x = 0, y = 0}, size = {width = 64, height = 64}}
#18 0xb7c99916 in -[NSCell drawInteriorWithFrame:inView:] (self=0x835c000, _cmd=0xb7efc9d0, cellFrame=..., controlView=0x835c040) at NSCell.m:2031
        position = {x = 1.10142511e-19, y = 1.40129846e-45}
        drawingRect = {origin = {x = 0, y = 0}, size = {width = 64, height = 64}}
#19 0xb7c99ab2 in -[NSCell drawWithFrame:inView:] (self=0x835c000, _cmd=0xb7ee7bc8, cellFrame=..., controlView=0x835c040) at NSCell.m:2055
No locals.
#20 0xb7c6133d in -[NSAppIconView drawRect:] (self=0x835c040, _cmd=0xb7f81560, rect=...) at NSApplication.m:522
No locals.
#21 0xb7dd1c91 in -[NSView displayRectIgnoringOpacity:inContext:] (self=0x835c040, _cmd=0xb7f81550, aRect=..., context=0x832f8d0) at NSView.m:2479
        wContext = 0x832f8d0
        flush = <value optimized out>
        subviewNeedsDisplay = 8 '\b'
#22 0xb7dd1f1a in -[NSView displayRectIgnoringOpacity:inContext:] (self=0x83296f0, _cmd=0xb7f81550, aRect=..., context=0x832f8d0) at NSView.m:2512
        subview = 0x835c040
        subviewFrame = {origin = {x = 0, y = 0}, size = {width = 64, height = 64}}
        isect = {origin = {x = 0, y = 0}, size = {width = 64, height = 64}}
        i = 0
        count = 1
        wContext = 0x832f8d0
        flush = <value optimized out>
        subviewNeedsDisplay = 0 '\000'
#23 0xb7dc403c in -[NSView displayRectIgnoringOpacity:] (self=0x83296f0, _cmd=0xb7f81540, aRect=...) at NSView.m:2425
No locals.
#24 0xb7dd1759 in -[NSView displayIfNeededInRectIgnoringOpacity:] (self=0x83296f0, _cmd=0xb7f81530, aRect=...) at NSView.m:2357
        rect = {origin = {x = 0, y = 0}, size = {width = 64, height = 64}}
#25 0xb7dc3e97 in -[NSView displayIfNeededInRect:] (self=0x83296f0, _cmd=0xb7f81528, aRect=...) at NSView.m:2335
No locals.
#26 0xb7dc3c9c in -[NSView displayIfNeeded] (self=0x83296f0, _cmd=0xb7f87d50) at NSView.m:2317
No locals.
#27 0xb7ddacbe in -[NSWindow orderWindow:relativeTo:] (self=0x83271c8, _cmd=0xb7f87d18, place=NSWindowAbove, otherWin=-1) at NSWindow.m:1725
        srv = 0x82170a0
        display = 8 '\b'
#28 0xb7dd66c8 in -[NSWindow orderFrontRegardless] (self=0x83271c8, _cmd=0xb7ee7c30) at NSWindow.m:1642
No locals.
#29 0xb7c66c39 in -[NSApplication(Private) _appIconInit] (self=0x82025d0, _cmd=0xb7ee7e08) at NSApplication.m:3720
        iconRect = {origin = {x = 0, y = 0}, size = {width = 64, height = 64}}
        suppress = 0 '\000'
#30 0xb7c6236a in -[NSApplication finishLaunching] (self=0x82025d0, _cmd=0xb7ee7fb8) at NSApplication.m:993
        mainBundle = <value optimized out>
        infoDict = 0x81fd550
        defs = 0x810c2a0
        filePath = <value optimized out>
        count = 3063881728
        i = <value optimized out>
        hadDuplicates = 183 '\267'
        didAutoreopen = 240 '\360'
        image = 0x83226e0
#31 0xb7c5ee6c in -[NSApplication run] (self=0x82025d0, _cmd=0xb7edde40) at NSApplication.m:1506
        e = <value optimized out>
        distantFuture = 0x82523c0
#32 0xb7c4577d in NSApplicationMain (argc=1, argv=0xbffff7a4) at Functions.m:74
        infoDict = <value optimized out>
        appClass = <value optimized out>
#33 0x08048c87 in main ()


-- System Information:
Debian Release: wheezy/sid
  APT prefers unstable
  APT policy: (500, 'unstable')
Architecture: i386 (i686)

Kernel: Linux 2.6.32-5-686 (SMP w/1 CPU core)
Locale: LANG=bg_BG.UTF-8, LC_CTYPE=bg_BG.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash

Versions of packages libpixman-1-0 depends on:
ii  libc6                         2.11.2-11  Embedded GNU C Library: Shared lib

libpixman-1-0 recommends no packages.

libpixman-1-0 suggests no packages.

-- no debconf information




Information forwarded to debian-bugs-dist@lists.debian.org, Debian X Strike Force <debian-x@lists.debian.org>:
Bug#613221; Package libpixman-1-0. (Sun, 13 Feb 2011 16:00:04 GMT) Full text and rfc822 format available.

Acknowledgement sent to Cyril Brulebois <kibi@debian.org>:
Extra info received and forwarded to list. Copy sent to Debian X Strike Force <debian-x@lists.debian.org>. (Sun, 13 Feb 2011 16:00:04 GMT) Full text and rfc822 format available.

Message #10 received at 613221@bugs.debian.org (full text, mbox):

From: Cyril Brulebois <kibi@debian.org>
To: Yavor Doganov <yavor@gnu.org>, 613221@bugs.debian.org
Subject: Re: Bug#613221: libpixman-1-0: Breaks the GNUstep cairo backend (gnustep-back0.18-cairo)
Date: Sun, 13 Feb 2011 16:56:36 +0100
[Message part 1 (text/plain, inline)]
Hi,

Yavor Doganov <yavor@gnu.org> (13/02/2011):
> I haven't investigated the real cause yet; I'm filing this bug as
> preliminary measure to prevent migration to testing in case the bug
> happens to be in pixman.  With this version installed, and
> libgnustep-cairo set as the default backend, all GNUstep apps crash.
> If I downgrade to 0.16.4-1, there is no problem.

could you please try and figure out which versions are affected?
  http://snapshot.debian.org/package/pixman/

I'll try and reproduce this bug later.

KiBi.
[signature.asc (application/pgp-signature, inline)]

Information forwarded to debian-bugs-dist@lists.debian.org, Debian X Strike Force <debian-x@lists.debian.org>:
Bug#613221; Package libpixman-1-0. (Sun, 13 Feb 2011 19:27:05 GMT) Full text and rfc822 format available.

Acknowledgement sent to Yavor Doganov <yavor@gnu.org>:
Extra info received and forwarded to list. Copy sent to Debian X Strike Force <debian-x@lists.debian.org>. (Sun, 13 Feb 2011 19:27:05 GMT) Full text and rfc822 format available.

Message #15 received at 613221@bugs.debian.org (full text, mbox):

From: Yavor Doganov <yavor@gnu.org>
To: Cyril Brulebois <kibi@debian.org>
Cc: Yavor Doganov <yavor@gnu.org>, 613221@bugs.debian.org
Subject: Re: Bug#613221: libpixman-1-0: Breaks the GNUstep cairo backend (gnustep-back0.18-cairo)
Date: Sun, 13 Feb 2011 20:54:46 +0200
Cyril Brulebois wrote:
> could you please try and figure out which versions are affected?
>   http://snapshot.debian.org/package/pixman/

The first "bad" is 0.18.0-1.  With 0.16.4-1 (installed on an
up-to-date sid system) I get

Ink: symbol lookup error: /usr/lib/libcairo.so.2: undefined symbol:
pixman_image_composite32

but if I downgrade libcairo2 to 1.8.10-6, I can't reproduce (i.e., all
GNUstep apps work as expected).




Information forwarded to debian-bugs-dist@lists.debian.org, Debian X Strike Force <debian-x@lists.debian.org>:
Bug#613221; Package libpixman-1-0. (Sun, 13 Feb 2011 20:30:10 GMT) Full text and rfc822 format available.

Acknowledgement sent to Julien Cristau <jcristau@debian.org>:
Extra info received and forwarded to list. Copy sent to Debian X Strike Force <debian-x@lists.debian.org>. (Sun, 13 Feb 2011 20:30:10 GMT) Full text and rfc822 format available.

Message #20 received at 613221@bugs.debian.org (full text, mbox):

From: Julien Cristau <jcristau@debian.org>
To: Cyril Brulebois <kibi@debian.org>, 613221@bugs.debian.org, Yavor Doganov <yavor@gnu.org>
Subject: Re: Bug#613221: libpixman-1-0: Breaks the GNUstep cairo backend (gnustep-back0.18-cairo)
Date: Sun, 13 Feb 2011 21:27:09 +0100
[Message part 1 (text/plain, inline)]
On Sun, Feb 13, 2011 at 20:54:46 +0200, Yavor Doganov wrote:

> Cyril Brulebois wrote:
> > could you please try and figure out which versions are affected?
> >   http://snapshot.debian.org/package/pixman/
> 
> The first "bad" is 0.18.0-1.  With 0.16.4-1 (installed on an
> up-to-date sid system) I get
> 
> Ink: symbol lookup error: /usr/lib/libcairo.so.2: undefined symbol:
> pixman_image_composite32
> 
> but if I downgrade libcairo2 to 1.8.10-6, I can't reproduce (i.e., all
> GNUstep apps work as expected).
> 
Thanks.  Please report this to pixman@lists.freedesktop.org or
https://bugs.freedesktop.org/enter_bug.cgi?product=pixman

Cheers,
Julien
[signature.asc (application/pgp-signature, inline)]

Information forwarded to debian-bugs-dist@lists.debian.org, Debian X Strike Force <debian-x@lists.debian.org>:
Bug#613221; Package libpixman-1-0. (Mon, 14 Feb 2011 22:09:02 GMT) Full text and rfc822 format available.

Acknowledgement sent to Eric Wasylishen <ewasylishen@gmail.com>:
Extra info received and forwarded to list. Copy sent to Debian X Strike Force <debian-x@lists.debian.org>. (Mon, 14 Feb 2011 22:09:02 GMT) Full text and rfc822 format available.

Message #25 received at 613221@bugs.debian.org (full text, mbox):

From: Eric Wasylishen <ewasylishen@gmail.com>
To: 613221@bugs.debian.org
Subject: This is related to __thread
Date: Mon, 14 Feb 2011 15:05:49 -0700
Hi, I am experiencing this on Ubuntu 10.10.

I am using GNUstep from trunk and cairo 1.10.2 and pixman 0.20.2 built from source.

It's caused by the thread-local fast_path_cache variable in pixman.c. If you make that non-thread-local (a normal static variable) the problem will go away.

The root problem here is interaction between thread local storage and dlopen, because the gnustep-back bundle, which dynamically links to libpixman, is dlopened by gnustep-gui. However, I'm not sure how to properly fix it other than building pixman without TLS.

Cheers,
Eric



Set Bug forwarded-to-address to 'https://bugs.freedesktop.org/show_bug.cgi?id=34335'. Request was from Yavor Doganov <yavor@gnu.org> to control@bugs.debian.org. (Wed, 16 Feb 2011 13:18:04 GMT) Full text and rfc822 format available.

Information forwarded to debian-bugs-dist@lists.debian.org, Debian X Strike Force <debian-x@lists.debian.org>:
Bug#613221; Package libpixman-1-0. (Fri, 11 Mar 2011 19:54:03 GMT) Full text and rfc822 format available.

Acknowledgement sent to Yavor Doganov <yavor@gnu.org>:
Extra info received and forwarded to list. Copy sent to Debian X Strike Force <debian-x@lists.debian.org>. (Fri, 11 Mar 2011 19:54:03 GMT) Full text and rfc822 format available.

Message #32 received at 613221@bugs.debian.org (full text, mbox):

From: Yavor Doganov <yavor@gnu.org>
To: Eric Wasylishen <ewasylishen@gmail.com>, 613221@bugs.debian.org
Subject: Re: Bug#613221: This is related to __thread
Date: Fri, 11 Mar 2011 21:25:05 +0200
Hi Eric,

On Mon, Feb 14, 2011 at 03:05:49PM -0700, Eric Wasylishen wrote:
> It's caused by the thread-local fast_path_cache variable in pixman.c. 
> If you make that non-thread-local (a normal static variable) the 
> problem will go away.

Yep, or if you set the tls_model to *-exec.  But IMO this shouldn't be 
required: "global-dynamic" appears to be the right TLS model for shared 
libraries.  IMVHO, if something was seriously broken with pixman's (new) 
TLS support, the whole world would be crashing, not only GNUstep.

> The root problem here is interaction between thread local storage and 
> dlopen, because the gnustep-back bundle, which dynamically links to 
> libpixman, is dlopened by gnustep-gui.

Could you please explain more about this interaction (CCing 
613221@bugs.debian.org if possible)?  According to pixman's upstream 
maintainer, and my humble reading about the TLS documentation in GCC, 
there should be no problem at all.

Can you reproduce if you configure gnustep-back with --disable-glx?  I 
can't, which leads me to the clue that the real culprit is mesa, which 
uses __attribute__ ((tls_model ("initial-exec"))) for the thread-local 
variables in libGL.so, and that's apparently incompatible.

> However, I'm not sure how to properly fix it other than building 
> pixman without TLS.

Well, we have to find where the bug really lies and fix it there.  I'm 
afraid building pixman without TLS support is the wrong course of action 
from wherever you look at it; I doubt that pixman's maintainers would be 
keen on such move (and rightfully so).




Added indication that 613221 affects gnustep-back0.18-cairo Request was from Yavor Doganov <yavor@gnu.org> to control@bugs.debian.org. (Fri, 11 Mar 2011 20:03:08 GMT) Full text and rfc822 format available.

Information forwarded to debian-bugs-dist@lists.debian.org, Debian X Strike Force <debian-x@lists.debian.org>:
Bug#613221; Package libpixman-1-0. (Sat, 12 Mar 2011 00:33:07 GMT) Full text and rfc822 format available.

Acknowledgement sent to Eric Wasylishen <ewasylishen@gmail.com>:
Extra info received and forwarded to list. Copy sent to Debian X Strike Force <debian-x@lists.debian.org>. (Sat, 12 Mar 2011 00:33:07 GMT) Full text and rfc822 format available.

Message #39 received at 613221@bugs.debian.org (full text, mbox):

From: Eric Wasylishen <ewasylishen@gmail.com>
To: Yavor Doganov <yavor@gnu.org>
Cc: 613221@bugs.debian.org
Subject: Re: Bug#613221: This is related to __thread
Date: Fri, 11 Mar 2011 17:30:06 -0700
[Message part 1 (text/plain, inline)]
Hi Yavor,

On 2011-03-11, at 12:25 PM, Yavor Doganov wrote:

> Hi Eric,
> 
> On Mon, Feb 14, 2011 at 03:05:49PM -0700, Eric Wasylishen wrote:
>> It's caused by the thread-local fast_path_cache variable in pixman.c. 
>> If you make that non-thread-local (a normal static variable) the 
>> problem will go away.
> 
> Yep, or if you set the tls_model to *-exec.  But IMO this shouldn't be 
> required: "global-dynamic" appears to be the right TLS model for shared 
> libraries.  IMVHO, if something was seriously broken with pixman's (new) 
> TLS support, the whole world would be crashing, not only GNUstep.

Right. As far as I remember, I looked at the disassembled code for this variable in Ubuntu's pixman package, and it was using the "global-dynamic" model, which is the correct model to use in shared libraries. So it doesn't look like pixman is doing anything wrong.

>> The root problem here is interaction between thread local storage and 
>> dlopen, because the gnustep-back bundle, which dynamically links to 
>> libpixman, is dlopened by gnustep-gui.
> 
> Could you please explain more about this interaction (CCing 
> 613221@bugs.debian.org if possible)?  According to pixman's upstream 
> maintainer, and my humble reading about the TLS documentation in GCC, 
> there should be no problem at all.
> 
I think what led me to say this was, I found that modifying GNUstep-gui so it links directly to cairo and pixman made the crash disappear. So it was more or less just a guess that dlopen was somehow involved.

However, after doing a bit more research I agree there should be no problem with dlopen and TLS, assuming the shared library uses the correct TLS model, which pixman does. 

Further supporting this, I tried to write a simple test case with a layout similar to GNUstep:

1. executable, dynamically linked to:
2. shared library, which dlopens:
3. shared library, which uses TLS

and I was unable to get a crash to happen. 

> Can you reproduce if you configure gnustep-back with --disable-glx?  I 
> can't, which leads me to the clue that the real culprit is mesa, which 
> uses __attribute__ ((tls_model ("initial-exec"))) for the thread-local 
> variables in libGL.so, and that's apparently incompatible.

Hm, that's interesting! It sounds like a convincing hypothesis.

I can test that, but it will take me a few days because I have to set up this virtual machine again.

BTW, I switched from 32-bit Ubuntu 10.10 (where I was observing the bug) to amd64 Ubuntu 10.10, and found that this bug doesn't occur on amd64. Are you also observing it on 32-bit only?

>> However, I'm not sure how to properly fix it other than building 
>> pixman without TLS.
> 
> Well, we have to find where the bug really lies and fix it there.  I'm 
> afraid building pixman without TLS support is the wrong course of action 
> from wherever you look at it; I doubt that pixman's maintainers would be 
> keen on such move (and rightfully so).

I agree, it seems like the fact that disabling TLS in pixman makes the bug symptoms disappear is more or less a coincidence.

Hopefully we are close to tracking down this really strange bug :-)

Cheers,
Eric
[Message part 2 (text/html, inline)]

Information forwarded to debian-bugs-dist@lists.debian.org, Debian X Strike Force <debian-x@lists.debian.org>:
Bug#613221; Package libpixman-1-0. (Sat, 12 Mar 2011 09:21:03 GMT) Full text and rfc822 format available.

Acknowledgement sent to Yavor Doganov <yavor@gnu.org>:
Extra info received and forwarded to list. Copy sent to Debian X Strike Force <debian-x@lists.debian.org>. (Sat, 12 Mar 2011 09:21:03 GMT) Full text and rfc822 format available.

Message #44 received at 613221@bugs.debian.org (full text, mbox):

From: Yavor Doganov <yavor@gnu.org>
To: Eric Wasylishen <ewasylishen@gmail.com>
Cc: Yavor Doganov <yavor@gnu.org>, 613221@bugs.debian.org
Subject: Re: Bug#613221: This is related to __thread
Date: Sat, 12 Mar 2011 11:18:22 +0200
Eric Wasylishen wrote:
> I think what led me to say this was, I found that modifying
> GNUstep-gui so it links directly to cairo and pixman made the crash
> disappear.

Interesting.  But that's only a workaround, and not really an option
because gnustep-gui is configured with --as-needed in Debian (so
linking with unneded libraries doesn't happen), unless we deliberately
use cairo and pixman symbols.  Which looks way too hackish to me.

> Further supporting this, I tried to write a simple test case with a
> layout similar to GNUstep:
> 
> 1. executable, dynamically linked to:
> 2. shared library, which dlopens:
> 3. shared library, which uses TLS
> 
> and I was unable to get a crash to happen. 

I've done that too, both with a plain C and Objective-C program (to
see if the ObjC runtime is somehow involved).  No crash.

> Are you also observing it on 32-bit only?

Yes.  (I don't have a 64-bit machine to verify, though.)




Bug reassigned from package 'libpixman-1-0' to 'libgl1-mesa-glx'. Request was from Julien Cristau <jcristau@debian.org> to control@bugs.debian.org. (Wed, 30 Mar 2011 12:39:02 GMT) Full text and rfc822 format available.

Bug No longer marked as found in versions pixman/0.21.4-2. Request was from Julien Cristau <jcristau@debian.org> to control@bugs.debian.org. (Wed, 30 Mar 2011 12:39:03 GMT) Full text and rfc822 format available.

Bug Marked as found in versions 7.9-1. Request was from Julien Cristau <jcristau@debian.org> to control@bugs.debian.org. (Wed, 30 Mar 2011 12:39:04 GMT) Full text and rfc822 format available.

Added tag(s) fixed-upstream. Request was from bts-link-upstream@lists.alioth.debian.org to control@bugs.debian.org. (Thu, 07 Apr 2011 19:00:57 GMT) Full text and rfc822 format available.

Information forwarded to debian-bugs-dist@lists.debian.org, Debian X Strike Force <debian-x@lists.debian.org>:
Bug#613221; Package libgl1-mesa-glx. (Fri, 08 Apr 2011 15:54:23 GMT) Full text and rfc822 format available.

Acknowledgement sent to Cyril Brulebois <kibi@debian.org>:
Extra info received and forwarded to list. Copy sent to Debian X Strike Force <debian-x@lists.debian.org>. (Fri, 08 Apr 2011 15:54:24 GMT) Full text and rfc822 format available.

Message #57 received at 613221@bugs.debian.org (full text, mbox):

From: Cyril Brulebois <kibi@debian.org>
To: 613221@bugs.debian.org
Subject: Re: Processed: reassign 613221 to libgl1-mesa-glx
Date: Fri, 8 Apr 2011 17:53:04 +0200
[Message part 1 (text/plain, inline)]
severity 613221 important
thanks

Debian Bug Tracking System <owner@bugs.debian.org> (30/03/2011):
> > reassign 613221 libgl1-mesa-glx 7.9-1
> […]

And now that the kernel+X stack are almost ready, lower to important
since breaking gnustep is now worth it (sorry about that though…).
Hopefully final patches are coming up upstream.

KiBi.
[signature.asc (application/pgp-signature, inline)]

Severity set to 'important' from 'serious' Request was from Cyril Brulebois <kibi@debian.org> to control@bugs.debian.org. (Fri, 08 Apr 2011 15:54:28 GMT) Full text and rfc822 format available.

Reply sent to Julien Cristau <jcristau@debian.org>:
You have taken responsibility. (Mon, 14 Apr 2014 17:57:10 GMT) Full text and rfc822 format available.

Notification sent to Yavor Doganov <yavor@gnu.org>:
Bug acknowledged by developer. (Mon, 14 Apr 2014 17:57:10 GMT) Full text and rfc822 format available.

Message #64 received at 613221-done@bugs.debian.org (full text, mbox):

From: Julien Cristau <jcristau@debian.org>
To: Eric Wasylishen <ewasylishen@gmail.com>, 613221-done@bugs.debian.org
Subject: Re: Bug#613221: This is related to __thread
Date: Mon, 14 Apr 2014 19:53:26 +0200
[Message part 1 (text/plain, inline)]
On Mon, Feb 14, 2011 at 15:05:49 -0700, Eric Wasylishen wrote:

> Hi, I am experiencing this on Ubuntu 10.10.
> 
> I am using GNUstep from trunk and cairo 1.10.2 and pixman 0.20.2 built from source.
> 
> It's caused by the thread-local fast_path_cache variable in pixman.c. If you make that non-thread-local (a normal static variable) the problem will go away.
> 
> The root problem here is interaction between thread local storage and dlopen, because the gnustep-back bundle, which dynamically links to libpixman, is dlopened by gnustep-gui. However, I'm not sure how to properly fix it other than building pixman without TLS.
> 
This was probably a dupe of #637239, which was fixed in glibc a while
back.  Closing.

Cheers,
Julien
[signature.asc (application/pgp-signature, inline)]

Send a report that this bug log contains spam.


Debian bug tracking system administrator <owner@bugs.debian.org>. Last modified: Sun Apr 20 00:07:32 2014; Machine Name: beach.debian.org

Debian Bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.