[cairo] pixman 0.18 MinGW SSE2 error
Sven Goericke
sgoericke at vandalay.org
Sat Apr 10 04:37:17 PDT 2010
Ok, i tried with optimization disabled, still no luck. You'll find logs
from configure, make and gdb attached to this mail.
I also tried to remove the block from "configure.ac" After running
autoreconf i need to modify the configure script because i got an error
related to PKG_PROG_PKG_CONF. I simply removed that part (it did the
check for GTK). As i don't need GTK i simply let
HAVE_GTK_TRUE='#'
HAVE_GTK_FALSE=
in the configure script. However, it doesn't compile:
make all-recursive
make[1]: Entering directory `/home/Sven/pixman-0.19.1'
Making all in pixman
make[2]: Entering directory `/home/Sven/pixman-0.19.1/pixman'
make all-am
make[3]: Entering directory `/home/Sven/pixman-0.19.1/pixman'
CC pixman-access.lo
In file included from pixman-private.h:17,
from pixman-access.c:35:
pixman-compiler.h:129:6: error: #error "Unknown thread local support for
this system"
make[3]: *** [pixman-access.lo] Error 1
make[3]: Leaving directory `/home/Sven/pixman-0.19.1/pixman'
make[2]: *** [all] Error 2
make[2]: Leaving directory `/home/Sven/pixman-0.19.1/pixman'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/home/Sven/pixman-0.19.1'
make: *** [all] Error 2
Sven
Soeren Sandmann wrote:
> Can you try compiling it without optimization, and then if it still
> crashes try printing out the mask_image->component_alpha?
>
> Also, try deleting this block in configure.ac:
>
> support_for__thread=no
>
> AC_MSG_CHECKING(for __thread)
> AC_COMPILE_IFELSE([
> __thread int x ;
> int main () { return 0; }
> ], support_for__thread=yes)
>
> if test $support_for__thread = yes; then
> AC_DEFINE([TOOLCHAIN_SUPPORTS__THREAD],[],[Whether the tool chain
> supports _
> _thread])
> fi
>
> AC_MSG_RESULT($support_for__thread)
>
> and then run autoreconf and configure again.
>
> Finally, please keep the discussion on the list so that other people
> can help out.
>
>
> Thanks,
> Soren
>
> Sven Goericke <sgoericke at vandalay.org> writes:
>
>> Hi,
>>
>> i tried the pixman-0.19.1 lib you provided the link for. However, not
>> that good news from here. Every time i built pixman i also rebuilt
>> cairo and cairomm:
>>
>> cairo: "./configure --prefix=/mingw LIBS=lpthread"
>> cairomm: "./configure --prefix=/mingw"
>>
>> As i said yesterday, it runs fine with pixman 0.17.10 and MinGW. On
>> Linux (Archlinux, i686) and MacOS (10.5.8) it runs also fine. Windows
>> version is Vista Business 64bit. Output from g++ -v is
>>
>> Using built-in specs.
>> Target: mingw32
>> Configured with: ../gcc-4.4.0/configure
>> --enable-languages=c,ada,c++,fortran,java,objc,obj-c++
>> --disable-sjlj-exceptions --enable-shared --enable-libgcj
>> --enable-libgomp --with-dwarf2 --disable-win32-registry
>> --enable-libstdcxx-debug --enable-version-specific-runtime-libs
>> --prefix=/mingw --with-gmp=/mingw/src/gmp/root
>> --with-mpfr=/mingw/src/mpfr/root --build=mingw32
>> Thread model: win32
>> gcc version 4.4.0 (GCC)
>>
>> I uploaded two images showing the problem, the first one with pixman
>> 0.17.10 which works fine, second with pixman 0.19.1:
>>
>> http://sven.xpjets.com/images/xpj777_pixman_ok.png
>> http://sven.xpjets.com/images/xpj777_pixman_fail.png
>>
>> Debug results:
>>
>> building pixman-0.19.1 with "./configure --prefix=/mingw"
>>
>> Program received signal SIGSEGV, Segmentation fault.
>> [Switching to Thread 4552.0x3cc]
>> sse2_composite_add_n_8888_8888_ca (imp=0x2b375da8, op=PIXMAN_OP_OVER,
>> src_image=0x2b3786d0, mask_image=0x3c015dc8, dst_image=0x3012c9d8,
>> src_x=153, src_y=316, mask_x=0, mask_y=0, dest_x=153, dest_y=316,
>> width=34, height=22) at pixman-sse2.c:3241
>> 3241 m = *pm++;
>> (gdb) p mask_image->common.component_alpha
>> $1 = 0
>> (gdb)
>> (gdb) bt
>> #0 sse2_composite_add_n_8888_8888_ca (imp=0x2b375da8, op=PIXMAN_OP_OVER,
>> src_image=0x2b3786d0, mask_image=0x3c015dc8, dst_image=0x3012c9d8,
>> src_x=153, src_y=316, mask_x=0, mask_y=0, dest_x=153, dest_y=316,
>> width=34, height=22) at pixman-sse2.c:3241
>> #1 0x65336f8a in walk_region_internal (op=PIXMAN_OP_OVER, src=0x2b3786d0,
>> mask=0x3c015dc8, dest=0x3012c9d8, src_x=153, src_y=316, mask_x=0,
>> mask_y=0, dest_x=153, dest_y=316, width=34, height=22) at pixman.c:397
>> #2 do_composite (op=PIXMAN_OP_OVER, src=0x2b3786d0, mask=0x3c015dc8,
>> dest=0x3012c9d8, src_x=153, src_y=316, mask_x=0, mask_y=0, dest_x=153,
>> dest_y=316, width=34, height=22) at pixman.c:720
>> #3 pixman_image_composite32 (op=PIXMAN_OP_OVER, src=0x2b3786d0,
>> mask=0x3c015dc8, dest=0x3012c9d8, src_x=153, src_y=316, mask_x=0,
>> mask_y=0, dest_x=153, dest_y=316, width=34, height=22) at pixman.c:819
>> #4 0x68dce0f6 in _cairo_image_surface_composite_trapezoids (
>> op=CAIRO_OPERATOR_OVER, pattern=0x30224aa0, abstract_dst=0x3012cab0,
>> antialias=CAIRO_ANTIALIAS_DEFAULT, src_x=153, src_y=316,
>> dst_x=<value optimized out>, dst_y=<value optimized out>,
>> width=<value optimized out>, height=<value optimized out>,
>> traps=0x3c015fa0, num_traps=5) at cairo-image-surface.c:1189
>> #5 0x68de03ec in _cairo_surface_composite_trapezoids (
>> op=CAIRO_OPERATOR_OVER, pattern=0x30224aa0, dst=0x3012cab0,
>> antialias=CAIRO_ANTIALIAS_DEFAULT, src_x=153, src_y=316, dst_x=153,
>> dst_y=316, width=34, height=22, traps=0x3c015fa0, num_traps=5)
>> at cairo-surface.c:1732
>> #6 0x68de36f2 in _composite_traps_draw_func (closure=0x3ee3f4c8,
>> op=CAIRO_OPERATOR_OVER, src=0x30224aa0, dst=0x3012cab0, dst_x=0,
>> dst_y=0,
>> extents=0x3ee3f4b8) at cairo-surface-fallback.c:501
>> #7 0x68de2883 in _clip_and_composite (clip=0x0, op=CAIRO_OPERATOR_OVER,
>> src=<value optimized out>,
>> draw_func=0x68de362c <_composite_traps_draw_func>,
>> draw_closure=0x3ee3f4c8, dst=0x3012cab0, extents=0x3ee3f4b8)
>> at cairo-surface-fallback.c:395
>> #8 0x68de3072 in _clip_and_composite_trapezoids (src=<value optimized
>> out>,
>> op=CAIRO_OPERATOR_OVER, dst=0x3012cab0, traps=0x3ee3f524, clip=0x0,
>> antialias=CAIRO_ANTIALIAS_DEFAULT) at cairo-surface-fallback.c:660
>> #9 0x68de3871 in _cairo_surface_fallback_stroke (surface=0x3012cab0,
>> op=CAIRO_OPERATOR_OVER, source=0x30224aa0, path=0x302152a4,
>> stroke_style=0x3c014fc0, ctm=0x3ee3f858, ctm_inverse=0x3ee3f828,
>> tolerance=0.10000000000000001, antialias=CAIRO_ANTIALIAS_DEFAULT)
>> at cairo-surface-fallback.c:839
>> #10 0x68de06eb in _cairo_surface_stroke (surface=0x3012cab0,
>> op=CAIRO_OPERATOR_OVER, source=0x3ee3f8e0, path=0x302152a4,
>> stroke_style=0x3c014fc0, ctm=<value optimized out>,
>> ctm_inverse=0x3c0150e0, tolerance=0.10000000000000001,
>> antialias=CAIRO_ANTIALIAS_DEFAULT) at cairo-surface.c:1649
>> #11 0x68dcbb21 in _cairo_gstate_stroke (gstate=0x3c014fa8, path=0x302152a4)
>> at cairo-gstate.c:945
>> #12 0x68dc61f1 in cairo_stroke_preserve (cr=0x30215110) at cairo.c:2136
>> #13 0x68dc6216 in cairo_stroke (cr=0x30215110) at cairo.c:2109
>> #14 0x621423a1 in Cairo::Context::stroke (this=0x2846edf8) at context.cc:356
>> #15 0x6d4b2859 in NavigationDisplay::DrawExpandedDisplay (this=0x3012c800)
>> at expanded_display.cpp:97
>> #16 0x6d4c10f9 in NavigationDisplay::DoDraw (this=0x3012c800)
>> at navigation_display.cpp:197
>> #17 0x6d4e15d6 in XPJDisplay::DrawingThread::Run (this=0x3012c768)
>> at xpjdisplay.cpp:29
>> #18 0x6d4d65fe in Thread::thread_func (args=0x3012c768) at
>> sg_threads.cpp:100
>> #19 0x101c5121 in ptw32_threadStart at 4 () from d:\X-Plane\libpthread-2.dll
>> #20 0x75632599 in wcstombs () from C:\Windows\syswow64\msvcrt.dll
>> #21 0x756326b3 in msvcrt!_beginthreadex () from
>> C:\Windows\syswow64\msvcrt.dll
>> #22 0x7589eccb in UnhandledExceptionFilter ()
>> from C:\Windows\syswow64\kernel32.dll
>> #23 0x3c013b10 in ?? ()
>> #24 0x7764d24d in ntdll!RtlWow64CallFunction64 ()
>> from C:\Windows\system32\ntdll.dll
>> #25 0x3c013b10 in ?? ()
>> #26 0x7764d45f in ntdll!RtlCloneMemoryStream ()
>> from C:\Windows\system32\ntdll.dll
>> #27 0x75632670 in msvcrt!_beginthreadex () from
>> C:\Windows\syswow64\msvcrt.dll
>> #28 0x00000000 in ?? ()
>> (gdb) kill
>>
>> building pixman-0.19.1 with "./configure --prefix=/mingw --disable-sse2"
>>
>> Program received signal SIGSEGV, Segmentation fault.
>> [Switching to Thread 4840.0x920]
>> mmx_composite_over_n_8888_8888_ca (imp=0x2ad75760, op=PIXMAN_OP_OVER,
>> src_image=0x2f70d170, mask_image=0x0, dst_image=0x2f70d368, src_x=0,
>> src_y=0, mask_x=0, mask_y=0, dest_x=0, dest_y=0, width=330, height=330)
>> at pixman-mmx.c:1285
>> 1285 PIXMAN_IMAGE_GET_LINE (mask_image, mask_x, mask_y,
>> uint32_t, mask_stride, mask_line, 1);
>> (gdb) bt
>> #0 mmx_composite_over_n_8888_8888_ca (imp=0x2ad75760, op=PIXMAN_OP_OVER,
>> src_image=0x2f70d170, mask_image=0x0, dst_image=0x2f70d368, src_x=0,
>> src_y=0, mask_x=0, mask_y=0, dest_x=0, dest_y=0, width=330, height=330)
>> at pixman-mmx.c:1285
>> #1 0x65336d3f in walk_region_internal (op=PIXMAN_OP_OVER, src=0x2f70d170,
>> mask=0x0, dest=0x2f70d368, src_x=0, src_y=0, mask_x=0, mask_y=0,
>> dest_x=0, dest_y=0, width=330, height=330) at pixman.c:397
>> #2 do_composite (op=PIXMAN_OP_OVER, src=0x2f70d170, mask=0x0,
>> dest=0x2f70d368, src_x=0, src_y=0, mask_x=0, mask_y=0, dest_x=0,
>> dest_y=0, width=330, height=330) at pixman.c:720
>> #3 pixman_image_composite32 (op=PIXMAN_OP_OVER, src=0x2f70d170, mask=0x0,
>> dest=0x2f70d368, src_x=0, src_y=0, mask_x=0, mask_y=0, dest_x=0,
>> dest_y=0, width=330, height=330) at pixman.c:819
>> #4 0x68dce770 in _cairo_image_surface_composite (op=CAIRO_OPERATOR_OVER,
>> src_pattern=0x2f945b00, mask_pattern=0x0, abstract_dst=0x2f62be18,
>> src_x=0, src_y=0, mask_x=0, mask_y=0, dst_x=<value optimized out>,
>> dst_y=<value optimized out>, width=<value optimized out>,
>> height=<value optimized out>) at cairo-image-surface.c:994
>> #5 0x68de1230 in _cairo_surface_composite (op=CAIRO_OPERATOR_OVER,
>> src=0x2f945b00, mask=0x0, dst=0x2f62be18, src_x=0, src_y=0, mask_x=0,
>> mask_y=0, dst_x=0, dst_y=0, width=330, height=330) at
>> cairo-surface.c:1295
>> #6 0x68de3302 in _composite_trap_region (src=<value optimized out>,
>> op=CAIRO_OPERATOR_OVER, dst=0x2f62be18, traps=0x364dfb04, clip=0x0,
>> antialias=CAIRO_ANTIALIAS_NONE) at cairo-surface-fallback.c:449
>> #7 _clip_and_composite_trapezoids (src=<value optimized out>,
>> op=CAIRO_OPERATOR_OVER, dst=0x2f62be18, traps=0x364dfb04, clip=0x0,
>> antialias=CAIRO_ANTIALIAS_NONE) at cairo-surface-fallback.c:644
>> #8 0x68de394b in _cairo_surface_fallback_paint (surface=0x2f62be18,
>> op=CAIRO_OPERATOR_OVER, source=0x2f945b00) at
>> cairo-surface-fallback.c:705
>> #9 0x68de0a9f in _cairo_surface_paint (surface=0x2f62be18,
>> op=CAIRO_OPERATOR_OVER, source=0x364dfc10) at cairo-surface.c:1500
>> #10 0x68dcbc92 in _cairo_gstate_paint (gstate=0x2f62bf58)
>> at cairo-gstate.c:878
>> #11 0x68dc6313 in cairo_paint (cr=0x2f62bf38) at cairo.c:1959
>> #12 0x68dc63fe in cairo_paint_with_alpha (cr=0x2f62bf38, alpha=1)
>> at cairo.c:1987
>> #13 0x6214244f in Cairo::Context::paint_with_alpha (this=0x285e7878,
>> alpha=1)
>> at context.cc:338
>> #14 0x6d4bfc9e in MfdDisplay::DrawFinalBuffer (this=0x2f70cff8)
>> at mfd_display.cpp:285
>> #15 0x6d4bfb1b in MfdDisplay::DoDraw (this=0x2f70cff8) at
>> mfd_display.cpp:275
>> #16 0x6d4e15d6 in XPJDisplay::DrawingThread::Run (this=0x2f62c7f0)
>> at xpjdisplay.cpp:29
>> #17 0x6d4d65fe in Thread::thread_func (args=0x2f62c7f0) at
>> sg_threads.cpp:100
>> #18 0x124c5121 in ptw32_threadStart at 4 () from d:\X-Plane\libpthread-2.dll
>> #19 0x75632599 in wcstombs () from C:\Windows\syswow64\msvcrt.dll
>> #20 0x756326b3 in msvcrt!_beginthreadex () from
>> C:\Windows\syswow64\msvcrt.dll
>> #21 0x7589eccb in UnhandledExceptionFilter ()
>> from C:\Windows\syswow64\kernel32.dll
>> #22 0x2f62cbb0 in ?? ()
>> #23 0x7764d24d in ntdll!RtlWow64CallFunction64 ()
>> from C:\Windows\system32\ntdll.dll
>> #24 0x2f62cbb0 in ?? ()
>> #25 0x7764d45f in ntdll!RtlCloneMemoryStream ()
>> from C:\Windows\system32\ntdll.dll
>> #26 0x75632670 in msvcrt!_beginthreadex () from
>> C:\Windows\syswow64\msvcrt.dll
>> #27 0x00000000 in ?? ()
>> (gdb) kill
>>
>> I didn't "p mask_image->common.component_alpha" because "mask_image=0x0"
>>
>> next try:
>>
>> building pixman-0.19.1 with "./configure --prefix=/mingw
>> --disable-sse2 --disable-mmx"
>>
>> Program received signal SIGTRAP, Trace/breakpoint trap.
>> [Switching to Thread 4692.0x12b4]
>> 0x775e0005 in ntdll!RtlTraceDatabaseLock () from
>> C:\Windows\system32\ntdll.dll
>> (gdb) warning: HEAP[X-Plane.exe]:
>> warning: Heap block at 3BC750B0 modified at 3BC750DC past requested
>> size of 24
>>
>>
>> (gdb) bt
>> #0 0x775e0005 in ntdll!RtlTraceDatabaseLock ()
>> from C:\Windows\system32\ntdll.dll
>> #1 0x7767cad0 in ntdll!LdrAccessResource ()
>> from C:\Windows\system32\ntdll.dll
>> #2 0x3a90ef80 in ?? ()
>> #3 0x77658fbf in ntdll!RtlQueryInterfaceMemoryStream ()
>> from C:\Windows\system32\ntdll.dll
>> #4 0x3bc750b0 in ?? ()
>> #5 0x77637a24 in ntdll!RtlBarrier () from C:\Windows\system32\ntdll.dll
>> #6 0x00000000 in ?? ()
>> (gdb) c
>> Continuing.
>>
>> Program received signal SIGTRAP, Trace/breakpoint trap.
>> 0x775e0005 in ntdll!RtlTraceDatabaseLock () from
>> C:\Windows\system32\ntdll.dll
>> (gdb) warning: HEAP[X-Plane.exe]:
>> warning: Invalid address specified to RtlFreeHeap( 04970000, 3BC750B8 )
>>
>>
>> Continuing.
>>
>> Program received signal SIGTRAP, Trace/breakpoint trap.
>> 0x775e0005 in ntdll!RtlTraceDatabaseLock () from
>> C:\Windows\system32\ntdll.dll
>> (gdb) warning: HEAP[X-Plane.exe]:
>> warning: Heap block at 3BCB0AE0 modified at 3BCB0B0C past requested
>> size of 24
>>
>>
>> Continuing.
>>
>> Program received signal SIGTRAP, Trace/breakpoint trap.
>> 0x775e0005 in ntdll!RtlTraceDatabaseLock () from
>> C:\Windows\system32\ntdll.dll
>> (gdb) warning: HEAP[X-Plane.exe]:
>> warning: Invalid address specified to RtlFreeHeap( 04970000, 3BCB0AE8 )
>>
>>
>> Continuing.
>>
>> Program received signal SIGTRAP, Trace/breakpoint trap.
>> [Switching to Thread 4692.0xe10]
>> 0x775e0005 in ntdll!RtlTraceDatabaseLock () from
>> C:\Windows\system32\ntdll.dll
>> (gdb) warning: HEAP[X-Plane.exe]:
>> warning: Heap block at 3BCB7770 modified at 3BCBA13C past requested
>> size of 29c4
>>
>> (gdb) Quit (expect signal SIGINT when the program is resumed)
>>
>> Thereafter i rebuild pixman, cairo (1.8.10) and cairomm (1.8.4) once
>> again and tried it again:
>>
>> Program received signal SIGSEGV, Segmentation fault.
>> [Switching to Thread 5072.0x133c]
>> fast_composite_add_n_8888_8888_ca (imp=0x2ae85340, op=PIXMAN_OP_OVER,
>> src_image=0x2aff51d8, mask_image=0x2f8f34b8, dst_image=0x2f7fe748,
>> src_x=2, src_y=26, mask_x=0, mask_y=0, dest_x=2, dest_y=26, width=178,
>> height=0) at pixman-fast-path.c:391
>> 391 ma = *mask++;
>> (gdb) p mask_image->common.component_alpha
>> $1 = 0
>> (gdb) bt
>> #0 fast_composite_add_n_8888_8888_ca (imp=0x2ae85340, op=PIXMAN_OP_OVER,
>> src_image=0x2aff51d8, mask_image=0x2f8f34b8, dst_image=0x2f7fe748,
>> src_x=2, src_y=26, mask_x=0, mask_y=0, dest_x=2, dest_y=26, width=178,
>> height=0) at pixman-fast-path.c:391
>> #1 0x65336c0b in walk_region_internal (op=PIXMAN_OP_OVER, src=0x2aff51d8,
>> mask=0x2f8f34b8, dest=0x2f7fe748, src_x=2, src_y=26, mask_x=0,
>> mask_y=0,
>> dest_x=2, dest_y=26, width=178, height=1) at pixman.c:397
>> #2 do_composite (op=PIXMAN_OP_OVER, src=0x2aff51d8, mask=0x2f8f34b8,
>> dest=0x2f7fe748, src_x=2, src_y=26, mask_x=0, mask_y=0, dest_x=2,
>> dest_y=26, width=178, height=1) at pixman.c:720
>> #3 pixman_image_composite32 (op=PIXMAN_OP_OVER, src=0x2aff51d8,
>> mask=0x2f8f34b8, dest=0x2f7fe748, src_x=2, src_y=26, mask_x=0,
>> mask_y=0,
>> dest_x=2, dest_y=26, width=178, height=1) at pixman.c:819
>> #4 0x68dce0f6 in _cairo_image_surface_composite_trapezoids (
>> op=CAIRO_OPERATOR_OVER, pattern=0x2f8f4a18, abstract_dst=0x2f7fea78,
>> antialias=CAIRO_ANTIALIAS_DEFAULT, src_x=2, src_y=26,
>> dst_x=<value optimized out>, dst_y=<value optimized out>,
>> width=<value optimized out>, height=<value optimized out>,
>> traps=0x2fae7fe8, num_traps=26) at cairo-image-surface.c:1189
>> #5 0x68de03ec in _cairo_surface_composite_trapezoids (
>> op=CAIRO_OPERATOR_OVER, pattern=0x2f8f4a18, dst=0x2f7fea78,
>> antialias=CAIRO_ANTIALIAS_DEFAULT, src_x=2, src_y=26, dst_x=2,
>> dst_y=26,
>> width=178, height=1, traps=0x2fae7fe8, num_traps=26)
>> at cairo-surface.c:1732
>> #6 0x68de36f2 in _composite_traps_draw_func (closure=0x386af688,
>> op=CAIRO_OPERATOR_OVER, src=0x2f8f4a18, dst=0x2f7fea78, dst_x=0,
>> dst_y=0,
>> extents=0x386af678) at cairo-surface-fallback.c:501
>> #7 0x68de2883 in _clip_and_composite (clip=0x0, op=CAIRO_OPERATOR_OVER,
>> src=<value optimized out>,
>> draw_func=0x68de362c <_composite_traps_draw_func>,
>> draw_closure=0x386af688, dst=0x2f7fea78, extents=0x386af678)
>> at cairo-surface-fallback.c:395
>> #8 0x68de3072 in _clip_and_composite_trapezoids (src=<value optimized
>> out>,
>> op=CAIRO_OPERATOR_OVER, dst=0x2f7fea78, traps=0x386af6e4, clip=0x0,
>> antialias=CAIRO_ANTIALIAS_DEFAULT) at cairo-surface-fallback.c:660
>> #9 0x68de3871 in _cairo_surface_fallback_stroke (surface=0x2f7fea78,
>> op=CAIRO_OPERATOR_OVER, source=0x2f8f4a18, path=0x2fa045ac,
>> stroke_style=0x2fa04450, ctm=0x386afa18, ctm_inverse=0x386af9e8,
>> tolerance=0.10000000000000001, antialias=CAIRO_ANTIALIAS_DEFAULT)
>> at cairo-surface-fallback.c:839
>> #10 0x68de06eb in _cairo_surface_stroke (surface=0x2f7fea78,
>> op=CAIRO_OPERATOR_OVER, source=0x386afaa0, path=0x2fa045ac,
>> stroke_style=0x2fa04450, ctm=<value optimized out>,
>> ctm_inverse=0x2fa04570, tolerance=0.10000000000000001,
>> antialias=CAIRO_ANTIALIAS_DEFAULT) at cairo-surface.c:1649
>> #11 0x68dcbb21 in _cairo_gstate_stroke (gstate=0x2fa04438, path=0x2fa045ac)
>> at cairo-gstate.c:945
>> #12 0x68dc61f1 in cairo_stroke_preserve (cr=0x2fa04418) at cairo.c:2136
>> #13 0x68dc6216 in cairo_stroke (cr=0x2fa04418) at cairo.c:2109
>> #14 0x621423a1 in Cairo::Context::stroke (this=0x2f7fc270) at context.cc:356
>> #15 0x6d49e9f7 in CduDisplay::DrawIdentPage (this=0x2f7fe638)
>> at cdu_display.cpp:227
>> #16 0x6d49d43b in CduDisplay::DoDraw (this=0x2f7fe638) at cdu_display.cpp:68
>> #17 0x6d4e15d6 in XPJDisplay::DrawingThread::Run (this=0x2f7fbfb0)
>> at xpjdisplay.cpp:29
>> #18 0x6d4d65fe in Thread::thread_func (args=0x2f7fbfb0) at
>> sg_threads.cpp:100
>> #19 0x12bf5121 in ptw32_threadStart at 4 () from d:\X-Plane\libpthread-2.dll
>> #20 0x75632599 in wcstombs () from C:\Windows\syswow64\msvcrt.dll
>> #21 0x756326b3 in msvcrt!_beginthreadex () from
>> C:\Windows\syswow64\msvcrt.dll
>> #22 0x7589eccb in UnhandledExceptionFilter ()
>> from C:\Windows\syswow64\kernel32.dll
>> #23 0x2f801a38 in ?? ()
>> #24 0x7764d24d in ntdll!RtlWow64CallFunction64 ()
>> from C:\Windows\system32\ntdll.dll
>> #25 0x2f801a38 in ?? ()
>> #26 0x7764d45f in ntdll!RtlCloneMemoryStream ()
>> from C:\Windows\system32\ntdll.dll
>> #27 0x75632670 in msvcrt!_beginthreadex () from
>> C:\Windows\syswow64\msvcrt.dll
>> #28 0x00000000 in ?? ()
>> (gdb) k
>> Kill the program being debugged? (y or n)
>> (gdb) q
>>
>> Soeren Sandmann wrote:
>>> Hi,
>>> Thanks for the bug report.
>>> It's entirely possible that this is caused by the TLS issues that Tor
>>> pointed out. If so, they may be fixed in the tls-fixes branch of this
>>> repository:
>>> git://anongit.freedesktop.org/~sandmann/pixman
>>> There is a tarball with the fixes applied here:
>>> http://www.daimi.au.dk/~sandmann/pixman-0.19.1.tar.gz
>>> If that doesn't fix the problem, here are some questions:
>>> - When the bug happens, what does this:
>>> print mask_image->common.component_alpha
>>> say in the debugger?
>>> - Does the problem happen with 0.16.x releases?
>>> - Does the problem happen when pixman is compiled with
>>> --disable-sse2?
>>> Thanks,
>>> Soren
>>> Sven Goericke <sgoericke at vandalay.org> writes:
>>>
>>>> Helo all,
>>>>
>>>> just build all libraries needed for cairomm to use with X-Plane running
>>>> on Win32. With the latest pixman i get an error related to sse2 i think.
>>>> Not sure if i missed some option in the configure script.
>>>>
>>>> I use cairomm with an X-Plane plugin which is a normal DLL on Windows
>>>> OS. I post the gdb output here, maybe someone have a clue what's wrong.
>>>>
>>>> Regards
>>>> Sven
>>>>
>>>> Program received signal SIGSEGV, Segmentation fault.
>>>> [Switching to Thread 1992.0xfa8]
>>>> sse2_composite_add_n_8888_8888_ca (imp=0x29556208, op=PIXMAN_OP_OVER,
>>>> src_image=0x29558b30, mask_image=0x3a258500, dst_image=0x2de0cb68,
>>>> src_x=240, src_y=45, mask_x=0, mask_y=0, dest_x=240, dest_y=45,
>>>> width=57,
>>>> height=17) at pixman-sse2.c:3212
>>>> in pixman-sse2.c
>>>> (gdb) 3212 pixman-sse2.c: No such file or directory.
>>>> (gdb) bt
>>>> #0 sse2_composite_add_n_8888_8888_ca (imp=0x29556208, op=PIXMAN_OP_OVER,
>>>> src_image=0x29558b30, mask_image=0x3a258500, dst_image=0x2de0cb68,
>>>> src_x=240, src_y=45, mask_x=0, mask_y=0, dest_x=240, dest_y=45,
>>>> width=57,
>>>> height=17) at pixman-sse2.c:3212
>>>> #1 0x65336f8a in walk_region_internal (op=PIXMAN_OP_OVER, src=0x29558b30,
>>>> mask=0x3a258500, dest=0x2de0cb68, src_x=240, src_y=45, mask_x=0,
>>>> mask_y=0, dest_x=240, dest_y=45, width=57, height=17) at pixman.c:397
>>>> #2 do_composite (op=PIXMAN_OP_OVER, src=0x29558b30, mask=0x3a258500,
>>>> dest=0x2de0cb68, src_x=240, src_y=45, mask_x=0, mask_y=0, dest_x=240,
>>>> dest_y=45, width=57, height=17) at pixman.c:720
>>>> #3 pixman_image_composite32 (op=PIXMAN_OP_OVER, src=0x29558b30,
>>>> mask=0x3a258500, dest=0x2de0cb68, src_x=240, src_y=45, mask_x=0,
>>>> mask_y=0, dest_x=240, dest_y=45, width=57, height=17) at pixman.c:819
>>>> #4 0x68dce0f6 in _cairo_image_surface_composite_trapezoids (
>>>> op=CAIRO_OPERATOR_OVER, pattern=0x3a25ac28, abstract_dst=0x2de0d0a0,
>>>> antialias=CAIRO_ANTIALIAS_DEFAULT, src_x=240, src_y=45,
>>>> dst_x=<value optimized out>, dst_y=<value optimized out>,
>>>> width=<value optimized out>, height=<value optimized out>,
>>>> traps=0x3a25dcf8, num_traps=103) at cairo-image-surface.c:1189
>>>> #5 0x68de03ec in _cairo_surface_composite_trapezoids (
>>>> op=CAIRO_OPERATOR_OVER, pattern=0x3a25ac28, dst=0x2de0d0a0,
>>>> antialias=CAIRO_ANTIALIAS_DEFAULT, src_x=240, src_y=45, dst_x=240,
>>>> dst_y=45, width=57, height=17, traps=0x3a25dcf8, num_traps=103)
>>>> at cairo-surface.c:1732
>>>> #6 0x68de36f2 in _composite_traps_draw_func (closure=0x34cbe5b8,
>>>> op=CAIRO_OPERATOR_OVER, src=0x3a25ac28, dst=0x2de0d0a0, dst_x=0,
>>>> dst_y=0,
>>>> extents=0x34cbe5a8) at cairo-surface-fallback.c:501
>>>> #7 0x68de2883 in _clip_and_composite (clip=0x0, op=CAIRO_OPERATOR_OVER,
>>>> src=<value optimized out>,
>>>> draw_func=0x68de362c <_composite_traps_draw_func>,
>>>> draw_closure=0x34cbe5b8, dst=0x2de0d0a0, extents=0x34cbe5a8)
>>>> at cairo-surface-fallback.c:395
>>>> #8 0x68de3072 in _clip_and_composite_trapezoids (src=<value optimized
>>>> out>,
>>>> op=CAIRO_OPERATOR_OVER, dst=0x2de0d0a0, traps=0x34cbe614, clip=0x0,
>>>> antialias=CAIRO_ANTIALIAS_DEFAULT) at cairo-surface-fallback.c:660
>>>> #9 0x68de3871 in _cairo_surface_fallback_stroke (surface=0x2de0d0a0,
>>>> op=CAIRO_OPERATOR_OVER, source=0x3a25ac28, path=0x2de0d4ec,
>>>> stroke_style=0x2de0d390, ctm=0x34cbe948, ctm_inverse=0x34cbe918,
>>>> tolerance=0.10000000000000001, antialias=CAIRO_ANTIALIAS_DEFAULT)
>>>> at cairo-surface-fallback.c:839
>>>> #10 0x68de06eb in _cairo_surface_stroke (surface=0x2de0d0a0,
>>>> op=CAIRO_OPERATOR_OVER, source=0x34cbe9d0, path=0x2de0d4ec,
>>>> stroke_style=0x2de0d390, ctm=<value optimized out>,
>>>> ctm_inverse=0x2de0d4b0, tolerance=0.10000000000000001,
>>>> antialias=CAIRO_ANTIALIAS_DEFAULT) at cairo-surface.c:1649
>>>> #11 0x68dcbb21 in _cairo_gstate_stroke (gstate=0x2de0d378, path=0x2de0d4ec)
>>>> at cairo-gstate.c:945
>>>> #12 0x68dc61f1 in cairo_stroke_preserve (cr=0x2de0d358) at cairo.c:2136
>>>> #13 0x68dc6216 in cairo_stroke (cr=0x2de0d358) at cairo.c:2109
>>>> #14 0x621423a1 in Cairo::Context::stroke (this=0x26d823d0) at
>>>> context.cc:356
>>>> #15 0x6d48a55b in MfdDisplay::DrawAirSystemsPage (this=0x2de0c9f0)
>>>> at air_systems_page.cpp:445
>>>> #16 0x6d4bfa11 in MfdDisplay::DoDraw (this=0x2de0c9f0) at
>>>> mfd_display.cpp:256
>>>> #17 0x6d4e15d2 in XPJDisplay::DrawingThread::Run (this=0x2de09e70)
>>>> at xpjdisplay.cpp:29
>>>> #18 0x6d4d65fa in Thread::thread_func (args=0x2de09e70) at
>>>> sg_threads.cpp:100
>>>> #19 0x0ef45121 in ptw32_threadStart at 4 () from d:\X-Plane\libpthread-2.dll
>>>> #20 0x76832599 in wcstombs () from C:\Windows\syswow64\msvcrt.dll
>>>> #21 0x768326b3 in msvcrt!_beginthreadex () from
>>>> C:\Windows\syswow64\msvcrt.dll
>>>> #22 0x76caeccb in UnhandledExceptionFilter ()
>>>> from C:\Windows\syswow64\kernel32.dll
>>>> #23 0x2de0e868 in ?? ()
>>>> #24 0x772cd24d in ntdll!RtlWow64CallFunction64 ()
>>>> from C:\Windows\system32\ntdll.dll
>>>> #25 0x2de0e868 in ?? ()
>>>> #26 0x772cd45f in ntdll!RtlCloneMemoryStream ()
>>>> from C:\Windows\system32\ntdll.dll
>>>> #27 0x76832670 in msvcrt!_beginthreadex () from
>>>> C:\Windows\syswow64\msvcrt.dll
>>>> #28 0x00000000 in ?? ()
>>>> (gdb) k
>>>> Kill the program being debugged? (y or n)
>>>> (gdb)
>>>> --
>>>> ==============================================================================
>>>> CONFIDENTIALITY NOTICE: This e-mail message, and any attachments
>>>> thereto, is for the sole use of the intended recipient(s) and may
>>>> contain legally privileged and/or confidential information. Any
>>>> unauthorized review, use, disclosure or distribution is strictly
>>>> prohibited. If you are not the intended recipient, please contact the
>>>> sender by reply email and permanently delete all copies of the original
>>>> message.
>>>> ==============================================================================
>>>> --
>>>> cairo mailing list
>>>> cairo at cairographics.org
>>>> http://lists.cairographics.org/mailman/listinfo/cairo
-------------- next part --------------
An embedded and charset-unspecified text was scrubbed...
Name: config.log
URL: <http://lists.cairographics.org/archives/cairo/attachments/20100410/ccd4578f/attachment-0002.txt>
-------------- next part --------------
An embedded and charset-unspecified text was scrubbed...
Name: gdb.log
URL: <http://lists.cairographics.org/archives/cairo/attachments/20100410/ccd4578f/attachment-0001.asc>
-------------- next part --------------
An embedded and charset-unspecified text was scrubbed...
Name: make.log
URL: <http://lists.cairographics.org/archives/cairo/attachments/20100410/ccd4578f/attachment-0003.txt>
More information about the cairo
mailing list