I compiled GTK 3.4.0 based on Cairo 1.12.0, after success in complilation, and try to run the GTK3-demo.exe , but the program crashed at once. Just copied and replaced the libcairo-2.dll with the old version (1.10.2) without any recompilation, the GTK3-DEMO.exe could run correctly at once. It is clear, the bug result in the Cairo 1.12.0. Usig WinDbg for troubleshooting, the crash is due to any illegal heap operation "HEAP[gtk3-demo.exe]: Heap block at 000000000329B170 modified at 000000000329B3B8 past requested size of 238". the call stack is as following: 00000000`0022eef8 00000000`7786f171 ntdll!RtlpBreakPointHeap+0x21 00000000`0022ef00 00000000`7781969f ntdll!RtlpCheckBusyBlockTail+0x211 00000000`0022ef40 00000000`77879a29 ntdll! ?? ::FNODOBFM::`string'+0xa800 00000000`0022ef80 00000000`7781dbc0 ntdll!RtlDebugFreeHeap+0xb9 00000000`0022efe0 00000000`7780413d ntdll! ?? ::FNODOBFM::`string'+0x10b82 00000000`0022f320 000007fe`ff7b10c8 ntdll!RtlFreeHeap+0x1a6 *** ERROR: Symbol file could not be found. Defaulted to export symbols for C:\msys\1.0\local\bin\libcairo-2.dll - 00000000`0022f3a0 00000000`68ddcc47 msvcrt!free+0x1c 00000000`0022f3d0 00000000`68e6dc75 libcairo_2!cairo_rectangle_list_destroy+0x43dc 00000000`0022f410 00000000`68e365a7 libcairo_2!cairo_win32_surface_get_image+0x14bd 00000000`0022f4c0 00000000`68e3f213 libcairo_2!cairo_surface_flush+0x59 00000000`0022f500 00000000`68e365a7 libcairo_2!cairo_device_observer_glyphs_elapsed+0x19f2 00000000`0022f540 00000000`68e35dcb libcairo_2!cairo_surface_flush+0x59 00000000`0022f580 00000000`68e35ca7 libcairo_2!cairo_surface_get_reference_count+0x40 *** ERROR: Symbol file could not be found. Defaulted to export symbols for C:\msys\1.0\local\bin\libgdk-3-0.dll - 00000000`0022f5c0 00000000`70edb6eb libcairo_2!cairo_surface_destroy+0xa6 *** ERROR: Symbol file could not be found. Defaulted to export symbols for C:\msys\1.0\local\bin\libgtk-3-0.dll - 00000000`0022f5f0 00000000`6656347e libgdk_3_0!gdk_window_end_paint+0x27c 00000000`0022f680 00000000`70ecc9cc libgtk_3_0!gtk_main_do_event+0x302 00000000`0022f770 00000000`70edca81 libgdk_3_0!gdk_drag_get_selection+0x110 00000000`0022f7a0 00000000`70edcbab libgdk_3_0!gdk_cairo_create+0x52b 00000000`0022f850 00000000`70edcbab libgdk_3_0!gdk_cairo_create+0x655 00000000`0022f900 00000000`70edcbab libgdk_3_0!gdk_cairo_create+0x655 00000000`0022f9b0 00000000`70f081e5 libgdk_3_0!gdk_cairo_create+0x655 00000000`0022fa60 00000000`70edce3b libgdk_3_0!gdk_win32_window_lookup_for_display+0x6f4 00000000`0022fa90 00000000`70edd0fa libgdk_3_0!gdk_cairo_create+0x8e5 00000000`0022fb20 00000000`664b02b5 libgdk_3_0!gdk_window_process_all_updates+0xf0 00000000`0022fb70 00000000`70ec19b7 libgtk_3_0!gtk_container_set_reallocate_redraws+0x250 *** ERROR: Symbol file could not be found. Defaulted to export symbols for C:\msys\1.0\local\bin\libglib-2.0-0.dll - 00000000`0022fbb0 00000000`68600a05 libgdk_3_0!gdk_threads_set_lock_functions+0xa5 00000000`0022fbf0 00000000`685fe3b5 libglib_2_0_0!g_child_watch_add+0xb2 00000000`0022fc20 00000000`685ff090 libglib_2_0_0!g_source_is_destroyed+0x2fe 00000000`0022fcc0 00000000`685ff285 libglib_2_0_0!g_main_context_dispatch+0x30 00000000`0022fcf0 00000000`685ff6c0 libglib_2_0_0!g_main_context_dispatch+0x225 00000000`0022fd60 00000000`66562d35 libglib_2_0_0!g_main_loop_run+0x1d7 *** ERROR: Symbol file could not be found. Defaulted to export symbols for gtk3-demo.exe - 00000000`0022fdb0 00000000`0041b49e libgtk_3_0!gtk_main+0x6b 00000000`0022fdf0 00000000`004013c9 gtk3_demo!main+0x372 00000000`0022fe70 00000000`004014e8 gtk3_demo+0x13c9 00000000`0022ff30 00000000`770e652d gtk3_demo+0x14e8 00000000`0022ff60 00000000`777dc521 kernel32!BaseThreadInitThunk+0xd 00000000`0022ff90 00000000`00000000 ntdll!RtlUserThreadStart+0x1d
That callstack is garbage. Any change you can improve it with different compile options?
I am using GCC 4.7.0 ( MinGW 64) and executing .Configure after MSYS, both 1.10.2 and 1.12.0 using the same Configure options.
I´m having a similar problem here, unfortunatelly my build was done without the symbol table too. I`ll rebuild everithing with gdb support tonight to see if I can get a better stack trace. In the meanwhile: Did you try to compile another version of cairo with the same settings? May be an older one?
Ops! My bad! I did notice the last comment. (In reply to comment #3) > I´m having a similar problem here, unfortunatelly my build was done without the > symbol table too. I`ll rebuild everithing with gdb support tonight to see if I > can get a better stack trace. > > In the meanwhile: Did you try to compile another version of cairo with the same > settings? May be an older one?
Hi, The problem is not happening again using the latest 64 bits binaries for MinGW & gtk3 got from OpenSUSE build service. PS: I can´t pinpoint in what version the problem stopped.
Closing this because of Perry's latest comment. Ray, please feel free to reopen if needed.
Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.