Memory Corruption compiled under MinGW
Submitted by mar..@..il.com
Assigned to cairo-bugs mailing list
Description
When having any TreeView with scrolling in it, upon scolling (via mouse or scroll_to_row), the a SIGTRAP is fired with HEAP errors.
Unfortunatly, I can't run valgrind under win32 for better than a gdb backtrace.
An example backtrace from this follows:
warning: HEAP[schedulerpp.exe]: warning: Heap block at 05BE54D0 modified at 05BE56FC past requested size of 224
Program received signal SIGTRAP, Trace/breakpoint trap.
0x77590725 in ntdll!TpWaitForAlpcCompletion () from C:\Windows\system32\ntdll.dll
(gdb) bt 100
#0 0x77590725 in ntdll!TpWaitForAlpcCompletion () from C:\Windows\system32\ntdll.dll
#1 0x0028ca70 in ?? ()
#2 0x77575582 in ntdll!RtlFillMemoryUlong () from C:\Windows\system32\ntdll.dll
#3 0x05be54d0 in ?? ()
#4 0x7755292a in ntdll!RtlSetCurrentTransaction () from C:\Windows\system32\ntdll.dll
#5 0x00000000 in ?? ()
(gdb) c
Continuing.
warning: HEAP[schedulerpp.exe]:
warning: Invalid address specified to RtlFreeHeap( 03790000, 05BE54D8 )
Program received signal SIGTRAP, Trace/breakpoint trap.
0x77590725 in ntdll!TpWaitForAlpcCompletion () from C:\Windows\system32\ntdll.dll
(gdb) bt 100
#0 0x77590725 in ntdll!TpWaitForAlpcCompletion () from C:\Windows\system32\ntdll.dll
#1 0x0028ca90 in ?? ()
#2 0x7755295a in ntdll!RtlSelfRelativeToAbsoluteSD2 () from C:\Windows\system32\ntdll.dll
#3 0x05be54d0 in ?? ()
#4 0x7759177f in ntdll!TpQueryPoolStackInformation () from C:\Windows\system32\ntdll.dll
#5 0x03790000 in ?? ()
#6 0x7754a967 in ntdll!RtlReAllocateHeap () from C:\Windows\system32\ntdll.dll
#7 0x03790000 in ?? ()
#8 0x774f2c02 in ntdll!RtlEncodePointer () from C:\Windows\system32\ntdll.dll
#9 0x05be54d0 in ?? ()
#10 0x75e598cd in msvcrt!free () from C:\Windows\syswow64\msvcrt.dll
#11 0x03790000 in ?? ()
#12 0x68dd7d36 in _cairo_damage_destroy () from D:\MinGW\bin\libcairo-2.dll
#13 0x68e552d8 in _cairo_win32_display_surface_flush () from D:\MinGW\bin\libcairo-2.dll
#14 0x68e2330e in cairo_surface_flush () from D:\MinGW\bin\libcairo-2.dll
#15 0x68e2ae48 in _cairo_surface_subsurface_flush () from D:\MinGW\bin\libcairo-2.dll
#16 0x68e2330e in cairo_surface_flush () from D:\MinGW\bin\libcairo-2.dll
#17 0x68e22c45 in _cairo_surface_finish () from D:\MinGW\bin\libcairo-2.dll
#18 0x68e22b34 in cairo_surface_destroy () from D:\MinGW\bin\libcairo-2.dll
#19 0x0307811d in gdk_window_end_paint () from D:\MinGW\bin\libgdk-3-0.dll
#20 0x032a11d2 in gtk_main_do_event () from D:\MinGW\bin\libgtk-3-0.dll
#21 0x0306b396 in _gdk_event_emit () from D:\MinGW\bin\libgdk-3-0.dll
#22 0x03079239 in _gdk_window_process_updates_recurse () from D:\MinGW\bin\libgdk-3-0.dll
#23 0x0307935a in _gdk_window_process_updates_recurse () from D:\MinGW\bin\libgdk-3-0.dll
#24 0x0307935a in _gdk_window_process_updates_recurse () from D:\MinGW\bin\libgdk-3-0.dll
#25 0x0307935a in _gdk_window_process_updates_recurse () from D:\MinGW\bin\libgdk-3-0.dll
#26 0x030a03b3 in gdk_win32_window_process_updates_recurse () from D:\MinGW\bin\libgdk-3-0.dll
#27 0x030795c0 in gdk_window_process_updates_internal () from D:\MinGW\bin\libgdk-3-0.dll
#28 0x03079821 in gdk_window_process_all_updates () from D:\MinGW\bin\libgdk-3-0.dll
#29 0x031fe8a4 in gtk_container_idle_sizer () from D:\MinGW\bin\libgtk-3-0.dll
#30 0x030616d2 in gdk_threads_dispatch () from D:\MinGW\bin\libgdk-3-0.dll
#31 0x685f9f06 in g_idle_dispatch () from D:\MinGW\bin\libglib-2.0-0.dll
#32 0x685f7d71 in g_main_dispatch () from D:\MinGW\bin\libglib-2.0-0.dll
#33 0x685f8885 in g_main_context_dispatch () from D:\MinGW\bin\libglib-2.0-0.dll
#34 0x685f8a60 in g_main_context_iterate () from D:\MinGW\bin\libglib-2.0-0.dll
#35 0x685f8e4a in g_main_loop_run () from D:\MinGW\bin\libglib-2.0-0.dll
#36 0x032a0b62 in gtk_main () from D:\MinGW\bin\libgtk-3-0.dll
#37 0x63ea214f in Gtk::Main::run_impl() () from D:\MinGW\bin\libgtkmm-3.0-1.dll
#38 0x63ea209f in Gtk::Main::run(Gtk::Window&) () from D:\MinGW\bin\libgtkmm-3.0-1.dll
#39 0x004308b0 in AppSelectWindow::run_fmanage (this=0x28e5e4) at ..\src\Windows\AppSelectWindow.cpp:79
#40 0x004742c2 in sigc::bound_mem_functor0<void, AppSelectWindow>::operator() (this=0x5b53784) at D:/MinGW/include/sigc++-2.0/sigc++/functors/mem_fun.h:1787
#41 0x004739d8 in sigc::adaptor_functor<sigc::bound_mem_functor0<void, AppSelectWindow> >::operator() (this=0x5b53780)
at D:/MinGW/include/sigc++-2.0/sigc++/adaptors/adaptor_trait.h:251
#42 0x0046aec6 in sigc::internal::slot_call0<sigc::bound_mem_functor0<void, AppSelectWindow>, void>::call_it (rep=0x5b53768)
at D:/MinGW/include/sigc++-2.0/sigc++/functors/slot.h:103
#43 0x664e23ce in sigc::slot0<void>::operator()() const () from D:\MinGW\bin\libglibmm-2.4-1.dll
#44 0x664d70e5 in Glib::SignalProxyNormal::slot0_void_callback(_GObject*, void*) () from D:\MinGW\bin\libglibmm-2.4-1.dll
#45 0x63a48743 in g_cclosure_marshal_VOID__VOID () from D:\MinGW\bin\libgobject-2.0-0.dll
#46 0x63a4611c in g_closure_invoke () from D:\MinGW\bin\libgobject-2.0-0.dll
#47 0x63a5d545 in signal_emit_unlocked_R () from D:\MinGW\bin\libgobject-2.0-0.dll
#48 0x63a5c9f8 in g_signal_emit_valist () from D:\MinGW\bin\libgobject-2.0-0.dll
#49 0x63a5cce1 in g_signal_emit () from D:\MinGW\bin\libgobject-2.0-0.dll
#50 0x031bb72a in gtk_button_clicked () from D:\MinGW\bin\libgtk-3-0.dll
#51 0x031bca1a in gtk_real_button_released () from D:\MinGW\bin\libgtk-3-0.dll
#52 0x63e58ed0 in Gtk::Button_Class::released_callback(_GtkButton*) () from D:\MinGW\bin\libgtkmm-3.0-1.dll
#53 0x63a487ab in g_cclosure_marshal_VOID__VOIDv () from D:\MinGW\bin\libgobject-2.0-0.dll
#54 0x63a46715 in g_type_class_meta_marshalv () from D:\MinGW\bin\libgobject-2.0-0.dll
#55 0x63a4635a in _g_closure_invoke_va () from D:\MinGW\bin\libgobject-2.0-0.dll
#56 0x63a5c333 in g_signal_emit_valist () from D:\MinGW\bin\libgobject-2.0-0.dll
#57 0x63a5cce1 in g_signal_emit () from D:\MinGW\bin\libgobject-2.0-0.dll
#58 0x031bc61f in gtk_button_button_release () from D:\MinGW\bin\libgtk-3-0.dll
#59 0x63f0ea01 in Gtk::Widget_Class::button_release_event_callback(_GtkWidget*, _GdkEventButton*) () from D:\MinGW\bin\libgtkmm-3.0-1.dll
#60 0x032a2944 in _gtk_marshal_BOOLEAN__BOXEDv () from D:\MinGW\bin\libgtk-3-0.dll
#61 0x63a46715 in g_type_class_meta_marshalv () from D:\MinGW\bin\libgobject-2.0-0.dll
#62 0x63a4635a in _g_closure_invoke_va () from D:\MinGW\bin\libgobject-2.0-0.dll
#63 0x63a5c333 in g_signal_emit_valist () from D:\MinGW\bin\libgobject-2.0-0.dll
#64 0x63a5cce1 in g_signal_emit () from D:\MinGW\bin\libgobject-2.0-0.dll
#65 0x0340826a in gtk_widget_event_internal () from D:\MinGW\bin\libgtk-3-0.dll
#66 0x03407981 in gtk_widget_event () from D:\MinGW\bin\libgtk-3-0.dll
#67 0x032a23c7 in propagate_event_up () from D:\MinGW\bin\libgtk-3-0.dll
#68 0x032a26b3 in propagate_event () from D:\MinGW\bin\libgtk-3-0.dll
#69 0x032a2776 in gtk_propagate_event () from D:\MinGW\bin\libgtk-3-0.dll
#70 0x032a14ac in gtk_main_do_event () from D:\MinGW\bin\libgtk-3-0.dll
#71 0x0306b396 in _gdk_event_emit () from D:\MinGW\bin\libgdk-3-0.dll
#72 0x030938fe in gdk_event_dispatch () from D:\MinGW\bin\libgdk-3-0.dll
#73 0x685f7d71 in g_main_dispatch () from D:\MinGW\bin\libglib-2.0-0.dll
#74 0x685f8885 in g_main_context_dispatch () from D:\MinGW\bin\libglib-2.0-0.dll
#75 0x685f8a60 in g_main_context_iterate () from D:\MinGW\bin\libglib-2.0-0.dll
#76 0x685f8e4a in g_main_loop_run () from D:\MinGW\bin\libglib-2.0-0.dll
#77 0x032a0b62 in gtk_main () from D:\MinGW\bin\libgtk-3-0.dll
#78 0x63ea214f in Gtk::Main::run_impl() () from D:\MinGW\bin\libgtkmm-3.0-1.dll
#79 0x63ea209f in Gtk::Main::run(Gtk::Window&) () from D:\MinGW\bin\libgtkmm-3.0-1.dll
#80 0x0040db67 in LoginWindow::login (this=0x28f89c) at ..\src\Windows\LoginWindow.cpp:69
#81 0x004740fa in sigc::bound_mem_functor0<void, LoginWindow>::operator() (this=0x5b2b5cc) at D:/MinGW/include/sigc++-2.0/sigc++/functors/mem_fun.h:1787
#82 0x00473948 in sigc::adaptor_functor<sigc::bound_mem_functor0<void, LoginWindow> >::operator() (this=0x5b2b5c8)
at D:/MinGW/include/sigc++-2.0/sigc++/adaptors/adaptor_trait.h:251
#83 0x0046add6 in sigc::internal::slot_call0<sigc::bound_mem_functor0<void, LoginWindow>, void>::call_it (rep=0x5b2b5b0)
at D:/MinGW/include/sigc++-2.0/sigc++/functors/slot.h:103
#84 0x664e23ce in sigc::slot0<void>::operator()() const () from D:\MinGW\bin\libglibmm-2.4-1.dll
#85 0x664d70e5 in Glib::SignalProxyNormal::slot0_void_callback(_GObject*, void*) () from D:\MinGW\bin\libglibmm-2.4-1.dll
#86 0x63a48743 in g_cclosure_marshal_VOID__VOID () from D:\MinGW\bin\libgobject-2.0-0.dll
#87 0x63a4611c in g_closure_invoke () from D:\MinGW\bin\libgobject-2.0-0.dll
#88 0x63a5d545 in signal_emit_unlocked_R () from D:\MinGW\bin\libgobject-2.0-0.dll
#89 0x63a5be78 in g_signal_emitv () from D:\MinGW\bin\libgobject-2.0-0.dll
#90 0x031abb68 in gtk_binding_entry_activate () from D:\MinGW\bin\libgtk-3-0.dll
#91 0x031ad07c in binding_activate () from D:\MinGW\bin\libgtk-3-0.dll
#92 0x031ad1dc in gtk_bindings_activate_list () from D:\MinGW\bin\libgtk-3-0.dll
#93 0x031ad40d in gtk_bindings_activate_event () from D:\MinGW\bin\libgtk-3-0.dll
#94 0x034075de in gtk_widget_real_key_press_event () from D:\MinGW\bin\libgtk-3-0.dll
#95 0x032215f9 in gtk_entry_key_press () from D:\MinGW\bin\libgtk-3-0.dll
#96 0x63f0ef0b in Gtk::Widget_Class::key_press_event_callback(_GtkWidget*, _GdkEventKey*) () from D:\MinGW\bin\libgtkmm-3.0-1.dll
#97 0x032a2944 in _gtk_marshal_BOOLEAN__BOXEDv () from D:\MinGW\bin\libgtk-3-0.dll
#98 0x63a46715 in g_type_class_meta_marshalv () from D:\MinGW\bin\libgobject-2.0-0.dll
#99 0x63a4635a in _g_closure_invoke_va () from D:\MinGW\bin\libgobject-2.0-0.dll
(More stack frames follow...)
(gdb)
Version: 1.12.2