Bug 11467 - Crash with Cairo 1.12.14
Summary: Crash with Cairo 1.12.14
Status: RESOLVED FIXED
Alias: None
Product: Xamarin Studio
Classification: Desktop
Component: General ()
Version: unspecified
Hardware: PC Mac OS
: --- normal
Target Milestone: ---
Assignee: Bugzilla
URL:
Depends on:
Blocks:
 
Reported: 2013-03-28 15:51 UTC by Mikayla Hutchinson [MSFT]
Modified: 2013-03-28 20:03 UTC (History)
2 users (show)

Tags:
Is this bug a regression?: ---
Last known good build:

Notice (2018-05-24): bugzilla.xamarin.com is now in read-only mode.

Please join us on Visual Studio Developer Community and in the Xamarin and Mono organizations on GitHub to continue tracking issues. Bugzilla will remain available for reference in read-only mode. We will continue to work on open Bugzilla bugs, copy them to the new locations as needed for follow-up, and add the new items under Related Links.

Our sincere thanks to everyone who has contributed on this bug tracker over the years. Thanks also for your understanding as we make these adjustments and improvements for the future.


Please create a new report on Developer Community or GitHub with your current version information, steps to reproduce, and relevant error messages or log files if you are hitting an issue that looks similar to this resolved bug and you do not yet see a matching new report.

Related Links:
Status:
RESOLVED FIXED

Description Mikayla Hutchinson [MSFT] 2013-03-28 15:51:34 UTC
Using latest Cairo "stable", XS hard crashes when showing a source editor tooltip.

This appears to have been a known problem in Cairo for almost a year: http://lists.freedesktop.org/archives/cairo/2012-April/022950.html

Mar 28 15:41:34 dynamic-086.bos.xamarin.com mono-sgen[4792] <Error>: context_reclaim: invalid context 0x1da71050
Mar 28 15:41:34 dynamic-086.bos.xamarin.com mono-sgen[4792] <Error>: context_finalize: invalid context 0x1da71050
Mar 28 15:41:34 dynamic-086.bos.xamarin.com mono-sgen[4792] <Error>: context_reclaim: invalid context 0x1a2d7840
Mar 28 15:41:34 dynamic-086.bos.xamarin.com mono-sgen[4792] <Error>: context_finalize: invalid context 0x1a2d7840
Mar 28 15:41:34 dynamic-086.bos.xamarin.com mono-sgen[4792] <Error>: context_reclaim: invalid context 0x1a2dac50
Mar 28 15:41:34 dynamic-086.bos.xamarin.com mono-sgen[4792] <Error>: context_finalize: invalid context 0x1a2dac50
Mar 28 15:42:44 dynamic-089.bos.xamarin.com mono-sgen[4792] <Error>: context_reclaim: invalid context 0x24485000
Mar 28 15:42:44 dynamic-089.bos.xamarin.com mono-sgen[4792] <Error>: context_finalize: invalid context 0x24485000
mono-sgen(4792,0xac987a28) malloc: *** error for object 0x24485004: incorrect checksum for freed object - object was probably modified after being freed.
*** set a breakpoint in malloc_error_break to debug
Stacktrace:

  at (wrapper managed-to-native) Cairo.NativeMethods.cairo_fill (intptr) <IL 0x00023, 0xffffffff>
  at Cairo.Context.Fill () [0x00000] in /Users/michael/Mono/bockbuild/profiles/monodevelop-mac-dev/build-root/mono-2.10.12/_build/mono-2.10.12.git/mcs/class/Mono.Cairo/Mono.Cairo/Context.cs:575
  at MonoDevelop.Components.PopoverWindow.OnExposeEvent (Gdk.EventExpose) [0x000e7] in /Users/michael/Mono/monodevelop/main/src/core/MonoDevelop.Ide/MonoDevelop.Components/PopoverWindow.cs:360
  at Gtk.Widget.exposeevent_cb (intptr,intptr) <IL 0x00014, 0x00061>
  at (wrapper native-to-managed) Gtk.Widget.exposeevent_cb (intptr,intptr) <IL 0x00024, 0xffffffff>
  at (wrapper managed-to-native) Gtk.Application.gtk_main () <IL 0x00022, 0xffffffff>
  at Gtk.Application.Run () <IL 0x00000, 0x0000b>
  at MonoDevelop.Ide.IdeApp.Run () [0x00000] in /Users/michael/Mono/monodevelop/main/src/core/MonoDevelop.Ide/MonoDevelop.Ide/Ide.cs:397
  at MonoDevelop.Ide.IdeStartup.Run (MonoDevelop.Ide.MonoDevelopOptions) [0x0074c] in /Users/michael/Mono/monodevelop/main/src/core/MonoDevelop.Ide/MonoDevelop.Ide/IdeStartup.cs:286
  at MonoDevelop.Ide.IdeStartup.Main (string[]) [0x00066] in /Users/michael/Mono/monodevelop/main/src/core/MonoDevelop.Ide/MonoDevelop.Ide/IdeStartup.cs:531
  at MonoDevelop.Startup.MonoDevelopMain.Main (string[]) [0x00000] in /Users/michael/Mono/monodevelop/main/src/core/MonoDevelop.Startup/MonoDevelop.Startup/MonoDevelopMain.cs:16
  at (wrapper runtime-invoke) <Module>.runtime_invoke_int_object (object,intptr,intptr,intptr) <IL 0x0005c, 0xffffffff>

Native stacktrace:

	0   mono-sgen                           0x00094c8c mono_handle_native_sigsegv + 284
	1   mono-sgen                           0x000deedd sigabrt_signal_handler + 109
	2   libsystem_c.dylib                   0x9884f8cb _sigtramp + 43
	3   ???                                 0xffffffff 0x0 + 4294967295
	4   libsystem_c.dylib                   0x9889b4ec abort + 168
	5   libsystem_c.dylib                   0x98885227 szone_error + 443
	6   libsystem_c.dylib                   0x98886482 free_list_checksum_botch + 50
	7   libsystem_c.dylib                   0x98886564 tiny_free_list_remove_ptr + 112
	8   libsystem_c.dylib                   0x9887ff11 szone_free + 993
	9   CoreFoundation                      0x954cad38 __CFAllocatorSystemDeallocate + 24
	10  CoreFoundation                      0x954cad18 CFAllocatorDeallocate + 232
	11  CoreFoundation                      0x954caa7a CFRelease + 2042
	12  libcairo.2.dylib                    0x06615d25 _cairo_quartz_teardown_state + 117
	13  libcairo.2.dylib                    0x06616fba _cairo_quartz_cg_fill + 378
	14  libcairo.2.dylib                    0x0656318b _cairo_compositor_fill + 251
	15  libcairo.2.dylib                    0x06618375 _cairo_quartz_surface_fill + 165
	16  libcairo.2.dylib                    0x065d42eb _cairo_surface_fill + 315
	17  libcairo.2.dylib                    0x0656fbdc _cairo_gstate_fill + 812
	18  libcairo.2.dylib                    0x06567e8c _cairo_default_context_fill + 44
	19  libcairo.2.dylib                    0x0655a69b cairo_fill + 43
	20  ???                                 0x140edf3c 0x0 + 336518972
	21  ???                                 0x140edef8 0x0 + 336518904
	22  ???                                 0x189a1cb4 0x0 + 412753076
	23  ???                                 0x140da86a 0x0 + 336439402
	24  ???                                 0x11bd4d28 0x0 + 297618728
	25  libgtk-quartz-2.0.0.dylib           0x05f3ae5e _gtk_marshal_BOOLEAN__BOXED + 286
	26  libgobject-2.0.0.dylib              0x06e5e23e g_type_class_meta_marshal + 142
	27  libgobject-2.0.0.dylib              0x06e5d9b8 g_closure_invoke + 504
	28  libgobject-2.0.0.dylib              0x06e7eac8 signal_emit_unlocked_R + 1992
	29  libgobject-2.0.0.dylib              0x06e7db91 g_signal_emit_valist + 4913
	30  libgobject-2.0.0.dylib              0x06e7e191 g_signal_emit + 65
	31  libgtk-quartz-2.0.0.dylib           0x060ef14d gtk_widget_event_internal + 749
	32  libgtk-quartz-2.0.0.dylib           0x060eed51 gtk_widget_send_expose + 369
	33  libgtk-quartz-2.0.0.dylib           0x05f36ca6 gtk_main_do_event + 630
	34  libgdk-quartz-2.0.0.dylib           0x0649dc5f _gdk_window_process_updates_recurse + 799
	35  libgdk-quartz-2.0.0.dylib           0x064aaed4 -[GdkQuartzView drawRect:] + 628
	36  AppKit                              0x93d972ce -[NSView _drawRect:clip:] + 3492
	37  AppKit                              0x93d95ce4 -[NSView _recursiveDisplayAllDirtyWithLockFocus:visRect:] + 1316
	38  AppKit                              0x93d9601a -[NSView _recursiveDisplayAllDirtyWithLockFocus:visRect:] + 2138
	39  AppKit                              0x93d955e2 -[NSView _recursiveDisplayRectIfNeededIgnoringOpacity:isVisibleRect:rectIsVisibleRectForView:topView:] + 5445
	40  AppKit                              0x93ee09d3 -[NSNextStepFrame _recursiveDisplayRectIfNeededIgnoringOpacity:isVisibleRect:rectIsVisibleRectForView:topView:] + 280
	41  AppKit                              0x93d8fbf3 -[NSView _displayRectIgnoringOpacity:isVisibleRect:rectIsVisibleRectForView:] + 4425
	42  AppKit                              0x93d583f1 -[NSView displayIfNeeded] + 1468
	43  AppKit                              0x93ee08a4 -[NSNextStepFrame displayIfNeeded] + 91
	44  AppKit                              0x93d85989 -[NSWindow _setFrameCommon:display:stashSize:] + 1893
	45  AppKit                              0x93d85210 -[NSWindow setFrame:display:] + 71
	46  libgdk-quartz-2.0.0.dylib           0x064c83c4 move_resize_window_internal + 964
	47  libgdk-quartz-2.0.0.dylib           0x064c8b91 window_quartz_resize + 257
	48  libgdk-quartz-2.0.0.dylib           0x064c890a gdk_window_quartz_move_resize + 170
	49  libgdk-quartz-2.0.0.dylib           0x064a1334 gdk_window_move_resize_toplevel + 260
	50  libgdk-quartz-2.0.0.dylib           0x064a17ee gdk_window_move_resize_internal + 286
	51  libgdk-quartz-2.0.0.dylib           0x064a1d79 gdk_window_resize + 73
	52  libgtk-quartz-2.0.0.dylib           0x0610ac34 gtk_window_move_resize + 1188
	53  libgtk-quartz-2.0.0.dylib           0x06109737 gtk_window_check_resize + 39
	54  libgobject-2.0.0.dylib              0x06e61223 g_cclosure_marshal_VOID__VOIDv + 163
	55  libgobject-2.0.0.dylib              0x06e5e2fe g_type_class_meta_marshalv + 174
	56  libgobject-2.0.0.dylib              0x06e5dd2f _g_closure_invoke_va + 543
	57  libgobject-2.0.0.dylib              0x06e7cf41 g_signal_emit_valist + 1761
	58  libgobject-2.0.0.dylib              0x06e7e191 g_signal_emit + 65
	59  libgtk-quartz-2.0.0.dylib           0x05e79b2f gtk_container_check_resize + 191
	60  libgtk-quartz-2.0.0.dylib           0x05e797df gtk_container_idle_sizer + 95
	61  libgdk-quartz-2.0.0.dylib           0x064666de gdk_threads_dispatch + 94
	62  libglib-2.0.0.dylib                 0x05aaa980 g_idle_dispatch + 96
	63  libglib-2.0.0.dylib                 0x05aa7a59 g_main_dispatch + 409
	64  libglib-2.0.0.dylib                 0x05aa8820 g_main_context_dispatch + 48
	65  libglib-2.0.0.dylib                 0x05aa8a28 g_main_context_iterate + 504
	66  libglib-2.0.0.dylib                 0x05aa8f5f g_main_loop_run + 527
	67  libgtk-quartz-2.0.0.dylib           0x05f36320 gtk_main + 240
	68  ???                                 0x148ae0a4 0x0 + 344645796
	69  ???                                 0x148ae06c 0x0 + 344645740
	70  ???                                 0x148ae04c 0x0 + 344645708
	71  ???                                 0x0504f078 0x0 + 84209784
	72  ???                                 0x00467010 0x0 + 4616208
	73  ???                                 0x00466de4 0x0 + 4615652
	74  ???                                 0x00466eaa 0x0 + 4615850
	75  mono-sgen                           0x0000d7e2 mono_jit_runtime_invoke + 722
	76  mono-sgen                           0x001aacda mono_runtime_invoke + 170
	77  mono-sgen                           0x001ad7fc mono_runtime_exec_main + 620
	78  mono-sgen                           0x001aca61 mono_runtime_run_main + 929
	79  mono-sgen                           0x00069745 mono_jit_exec + 149
	80  mono-sgen                           0x0006bcd9 mono_main + 9609
	81  mono-sgen                           0x000026d9 main + 553
	82  mono-sgen                           0x00002465 start + 53
Comment 1 Mikayla Hutchinson [MSFT] 2013-03-28 20:03:08 UTC
Found the problem and created a patch. Applied to bockbuild and submitted upstream.

https://bugs.freedesktop.org/show_bug.cgi?id=62885