MSVC: Deadlock issue when calling gdk_win32_clipdrop_init
There is a deadlock with Microsoft Visual C++ caused by(around) ~gdkclipdrop-win32.c:1613:
win32_clipdrop->n_known_pixbuf_formats = 0;
for (rover = pixbuf_formats; rover != NULL; rover = rover->next)
{
char **mime_types =
gdk_pixbuf_format_get_mime_types ((GdkPixbufFormat *) rover->data);
char **mime_type;
for (mime_type = mime_types; *mime_type != NULL; mime_type++)
win32_clipdrop->n_known_pixbuf_formats++;
}
[External Code]
> [Inline Frame] glib-2.0-0.dll!g_async_queue_pop_intern_unlocked(_GAsyncQueue *) Line 425 C
glib-2.0-0.dll!g_async_queue_pop(_GAsyncQueue * queue) Line 459 C
gtk-4-1.dll!gdk_win32_clipdrop_init(_GdkWin32Clipdrop * win32_clipdrop) Line 1842 C
gobject-2.0-0.dll!g_type_create_instance(unsigned __int64 type) Line 2009 C
gobject-2.0-0.dll!g_object_new_internal(_GObjectClass * class, _GObjectConstructParam * params, unsigned int n_params) Line 2246 C
gobject-2.0-0.dll!g_object_new_with_properties(unsigned __int64 object_type, unsigned int n_properties, const char * * names, const _GValue * values) Line 2411 C
gobject-2.0-0.dll!g_object_new(unsigned __int64 object_type, const char * first_property_name, ...) Line 2062 C
gtk-4-1.dll!_gdk_win32_clipdrop_init() Line 1526 C
gtk-4-1.dll!_gdk_win32_surfaceing_init() Line 79 C
gobject-2.0-0.dll!type_class_init_Wm(_TypeNode * node, _GTypeClass * pclass) Line 2367 C
gobject-2.0-0.dll!g_type_class_ref(unsigned __int64 type) Line 3082 C
gobject-2.0-0.dll!g_object_new_with_properties(unsigned __int64 object_type, unsigned int n_properties, const char * * names, const _GValue * values) Line 2388 C
gobject-2.0-0.dll!g_object_new(unsigned __int64 object_type, const char * first_property_name, ...) Line 2062 C
gtk-4-1.dll!_gdk_win32_display_open(const char * display_name) Line 523 C
gtk-4-1.dll!gdk_display_manager_open_display(_GdkDisplayManager * manager, const char * name) Line 424 C
gtk-4-1.dll!gtk_init_check() Line 623 C
gtk-4-1.dll!gtk_init() Line 661 C
gtksourceview-5-0.dll!gtk_source_init() Line 191 C
[Inline Frame] gtksourceview-5-0.dll!_gtk_source_init_ctor() Line 256 C
gtksourceview-5-0.dll!_gtk_source_init_ctor_wrapper() Line 251 C
[External Code]
This was initially stumbled upon with gtksourceview gtksourceview@441ccc24 revision
Edited by William Roy