Skip to content

NFD GTK3 dialog always crashes  #84

@slajerek

Description

@slajerek

Compilation Environment

  • OS (eg: OSX 10.14, Ubuntu 18.04):

Debian GNU/Linux 8 (jessie), but crashes on newer versions

  • Compiler (eg: GCC, Clang):
    GCC

  • Compiler Version (eg: MSVC 2017):

gcc version 4.9.2 (Debian 4.9.2-10)

  • Build directory used (eg: build/gmake_linux:

My own

  • Have I attempted to reproduce the problem on the devel branch?

No

Describe the bug

The problem happens in GTK3 while calling gtk_file_chooser_new(). A short while after dialog is displayed the NFD crashes because GTK3 is raising assertion.

The NFD GTK3 works fine on older GTK3s (i.e. Debian GNU/Linux 8 (jessie)), but crashes on newer versions.

GTK3 raises assertion:
Bail out! Gtk:ERROR:gtkiconhelper.c:494:ensure_surface_for_gicon: assertion failed (error == NULL): Failed to load /usr/share/icons/oxygen/base/16x16/status/image-missing.png: Impossibile allocare memoria per caricare file PNG (gdk-pixbuf-error-quark, 1)

The file exists in the location. The problem may be related to missing GMainLoop or something else.

#0 0x00007ffff68d87bb in __GI_raise (sig=sig@entry=6)
at ../sysdeps/unix/sysv/linux/raise.c:50
#1 0x00007ffff68c3535 in __GI_abort () at abort.c:79
#2 0x00007ffff72cadc3 in () at /lib/x86_64-linux-gnu/libglib-2.0.so.0
#3 0x00007ffff7324e1e in g_assertion_message_error ()
at /lib/x86_64-linux-gnu/libglib-2.0.so.0
#4 0x00007ffff7ab68e5 in () at /lib/x86_64-linux-gnu/libgtk-3.so.0
#5 0x00007ffff7ab6fe5 in () at /lib/x86_64-linux-gnu/libgtk-3.so.0
#6 0x00007ffff7ab70a4 in () at /lib/x86_64-linux-gnu/libgtk-3.so.0
#7 0x00007ffff7ab7288 in () at /lib/x86_64-linux-gnu/libgtk-3.so.0
#8 0x00007ffff7aca70d in () at /lib/x86_64-linux-gnu/libgtk-3.so.0
#9 0x00007ffff7a288d3 in () at /lib/x86_64-linux-gnu/libgtk-3.so.0
#10 0x00007ffff7a2ca51 in () at /lib/x86_64-linux-gnu/libgtk-3.so.0
#11 0x00007ffff7acaed3 in () at /lib/x86_64-linux-gnu/libgtk-3.so.0
#12 0x00007ffff7b87c81 in () at /lib/x86_64-linux-gnu/libgtk-3.so.0
#13 0x00007ffff7b884b0 in () at /lib/x86_64-linux-gnu/libgtk-3.so.0
#14 0x00007ffff7b8859e in gtk_widget_get_preferred_width ()
at /lib/x86_64-linux-gnu/libgtk-3.so.0
#15 0x00007ffff79d78df in () at /lib/x86_64-linux-gnu/libgtk-3.so.0
#16 0x00007ffff7a288d3 in () at /lib/x86_64-linux-gnu/libgtk-3.so.0
#17 0x00007ffff7a2ca51 in () at /lib/x86_64-linux-gnu/libgtk-3.so.0
#18 0x00007ffff79d83c3 in () at /lib/x86_64-linux-gnu/libgtk-3.so.0
#19 0x00007ffff7b87c81 in () at /lib/x86_64-linux-gnu/libgtk-3.so.0
--Type for more, q to quit, c to continue without paging--c
#20 0x00007ffff7b884b0 in () at /lib/x86_64-linux-gnu/libgtk-3.so.0
#21 0x00007ffff7b8859e in gtk_widget_get_preferred_width () at /lib/x86_64-linux-gnu/libgtk-3.so.0
#22 0x00007ffff7b87c81 in () at /lib/x86_64-linux-gnu/libgtk-3.so.0
#23 0x00007ffff7b884b0 in () at /lib/x86_64-linux-gnu/libgtk-3.so.0
#24 0x00007ffff7b8859e in gtk_widget_get_preferred_width () at /lib/x86_64-linux-gnu/libgtk-3.so.0
#25 0x00007ffff79d2841 in () at /lib/x86_64-linux-gnu/libgtk-3.so.0
#26 0x00007ffff7b64396 in () at /lib/x86_64-linux-gnu/libgtk-3.so.0
#27 0x00007ffff7b87c81 in () at /lib/x86_64-linux-gnu/libgtk-3.so.0
#28 0x00007ffff7b884b0 in () at /lib/x86_64-linux-gnu/libgtk-3.so.0
#29 0x00007ffff7b8859e in gtk_widget_get_preferred_width () at /lib/x86_64-linux-gnu/libgtk-3.so.0
#30 0x00007ffff7a288d3 in () at /lib/x86_64-linux-gnu/libgtk-3.so.0
#31 0x00007ffff7a2ca51 in () at /lib/x86_64-linux-gnu/libgtk-3.so.0
#32 0x00007ffff7ae44c7 in () at /lib/x86_64-linux-gnu/libgtk-3.so.0
#33 0x00007ffff7b87c81 in () at /lib/x86_64-linux-gnu/libgtk-3.so.0
#34 0x00007ffff7b884b0 in () at /lib/x86_64-linux-gnu/libgtk-3.so.0
#35 0x00007ffff7b8859e in gtk_widget_get_preferred_width () at /lib/x86_64-linux-gnu/libgtk-3.so.0
#36 0x00007ffff7ae41dd in () at /lib/x86_64-linux-gnu/libgtk-3.so.0
#37 0x00007ffff7a288d3 in () at /lib/x86_64-linux-gnu/libgtk-3.so.0
#38 0x00007ffff7a2ca51 in () at /lib/x86_64-linux-gnu/libgtk-3.so.0
#39 0x00007ffff7ae4350 in () at /lib/x86_64-linux-gnu/libgtk-3.so.0
#40 0x00007ffff7a288d3 in () at /lib/x86_64-linux-gnu/libgtk-3.so.0
#41 0x00007ffff7a2ca51 in () at /lib/x86_64-linux-gnu/libgtk-3.so.0
#42 0x00007ffff7ae446a in () at /lib/x86_64-linux-gnu/libgtk-3.so.0
#43 0x00007ffff7b87d4b in () at /lib/x86_64-linux-gnu/libgtk-3.so.0
#44 0x00007ffff7b884b0 in () at /lib/x86_64-linux-gnu/libgtk-3.so.0
#45 0x00007ffff7b879b1 in gtk_widget_get_preferred_height () at /lib/x86_64-linux-gnu/libgtk-3.so.0
#46 0x00007ffff7c29adf in () at /lib/x86_64-linux-gnu/libgtk-3.so.0
#47 0x00007ffff7c2a075 in () at /lib/x86_64-linux-gnu/libgtk-3.so.0
#48 0x00007ffff73e6ecb in g_object_set_valist () at /lib/x86_64-linux-gnu/libgobject-2.0.so.0
#49 0x00007ffff73e779c in g_object_set () at /lib/x86_64-linux-gnu/libgobject-2.0.so.0
#50 0x00007ffff7b725e0 in gtk_scrolled_window_set_hadjustment () at /lib/x86_64-linux-gnu/libgtk-3.so.0
#51 0x00007ffff73e48f9 in () at /lib/x86_64-linux-gnu/libgobject-2.0.so.0
#52 0x00007ffff73e5fad in g_object_newv () at /lib/x86_64-linux-gnu/libgobject-2.0.so.0
#53 0x00007ffff79df0c2 in () at /lib/x86_64-linux-gnu/libgtk-3.so.0
#54 0x00007ffff79e1b93 in () at /lib/x86_64-linux-gnu/libgtk-3.so.0
#55 0x00007ffff7300553 in () at /lib/x86_64-linux-gnu/libglib-2.0.so.0
#56 0x00007ffff730163d in g_markup_parse_context_parse () at /lib/x86_64-linux-gnu/libglib-2.0.so.0
#57 0x00007ffff79e2576 in () at /lib/x86_64-linux-gnu/libgtk-3.so.0
#58 0x00007ffff79dd3e4 in gtk_builder_extend_with_template () at /lib/x86_64-linux-gnu/libgtk-3.so.0
#59 0x00007ffff7c3ed07 in gtk_widget_init_template () at /lib/x86_64-linux-gnu/libgtk-3.so.0
#60 0x00007ffff7a85c9b in () at /lib/x86_64-linux-gnu/libgtk-3.so.0
#61 0x00007ffff7402107 in g_type_create_instance () at /lib/x86_64-linux-gnu/libgobject-2.0.so.0
#62 0x00007ffff73e4548 in () at /lib/x86_64-linux-gnu/libgobject-2.0.so.0
#63 0x00007ffff73e5fad in g_object_newv () at /lib/x86_64-linux-gnu/libgobject-2.0.so.0
#64 0x00007ffff79df0c2 in () at /lib/x86_64-linux-gnu/libgtk-3.so.0
#65 0x00007ffff79e06b5 in () at /lib/x86_64-linux-gnu/libgtk-3.so.0
#66 0x00007ffff79e215d in () at /lib/x86_64-linux-gnu/libgtk-3.so.0
#67 0x00007ffff73006b2 in () at /lib/x86_64-linux-gnu/libglib-2.0.so.0
#68 0x00007ffff73017f6 in g_markup_parse_context_parse () at /lib/x86_64-linux-gnu/libglib-2.0.so.0
#69 0x00007ffff79e2576 in () at /lib/x86_64-linux-gnu/libgtk-3.so.0
#70 0x00007ffff79dd3e4 in gtk_builder_extend_with_template () at /lib/x86_64-linux-gnu/libgtk-3.so.0
#71 0x00007ffff7c3ed07 in gtk_widget_init_template () at /lib/x86_64-linux-gnu/libgtk-3.so.0
#72 0x00007ffff7a7d3ce in () at /lib/x86_64-linux-gnu/libgtk-3.so.0
#73 0x00007ffff7402107 in g_type_create_instance () at /lib/x86_64-linux-gnu/libgobject-2.0.so.0
#74 0x00007ffff73e4548 in () at /lib/x86_64-linux-gnu/libgobject-2.0.so.0
#75 0x00007ffff73e63d4 in g_object_new_valist () at /lib/x86_64-linux-gnu/libgobject-2.0.so.0
#76 0x00007ffff73e6709 in g_object_new () at /lib/x86_64-linux-gnu/libgobject-2.0.so.0
#77 0x00007ffff7a7dea4 in gtk_file_chooser_dialog_new () at /lib/x86_64-linux-gnu/libgtk-3.so.0
#78 0x0000555555af5fef in NFD_OpenDialog ()

Compilation output

Additional context

Discussion here: https://csdb.dk/forums/?roomid=12&topicid=142527#142706

User Description

Individual, open source project:
https://sourceforge.net/projects/c64-debugger/

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions