After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 768935 - Segfault in gnome-builder master
Segfault in gnome-builder master
Status: RESOLVED FIXED
Product: gnome-builder
Classification: Other
Component: general
unspecified
Other Linux
: Normal normal
: ---
Assigned To: GNOME Builder Maintainers
GNOME Builder Maintainers
Depends on:
Blocks:
 
 
Reported: 2016-07-18 21:11 UTC by Giovanni Campagna
Modified: 2016-07-18 21:33 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
Gettext: fix invalid free of unowned object (1.17 KB, patch)
2016-07-18 21:30 UTC, Giovanni Campagna
committed Details | Review

Description Giovanni Campagna 2016-07-18 21:11:45 UTC
Backtrace:

  • #0 g_type_check_instance_is_fundamentally_a
    at /home/gcampagn/gnome/glib/gobject/gtype.c line 4024
  • #1 g_object_unref
    at /home/gcampagn/gnome/glib/gobject/gobject.c line 3073
  • #2 g_subprocess_finalize
    at /home/gcampagn/gnome/glib/gio/gsubprocess.c line 610
  • #3 g_object_unref
    at /home/gcampagn/gnome/glib/gobject/gobject.c line 3176
  • #4 g_task_finalize
    at /home/gcampagn/gnome/glib/gio/gtask.c line 631
  • #5 g_object_unref
    at /home/gcampagn/gnome/glib/gobject/gobject.c line 3176
  • #6 g_source_callback_unref
    at /home/gcampagn/gnome/glib/glib/gmain.c line 1545
  • #7 g_source_destroy_internal
    at /home/gcampagn/gnome/glib/glib/gmain.c line 1236
  • #8 g_main_dispatch
    at /home/gcampagn/gnome/glib/glib/gmain.c line 3225
  • #9 g_main_context_dispatch
    at /home/gcampagn/gnome/glib/glib/gmain.c line 3854
  • #10 g_main_context_iterate
    at /home/gcampagn/gnome/glib/glib/gmain.c line 3927
  • #11 g_main_context_iteration
    at /home/gcampagn/gnome/glib/glib/gmain.c line 3988
  • #12 g_application_run
    at /home/gcampagn/gnome/glib/gio/gapplication.c line 2381
  • #13 main
    at /home/gcampagn/gnome/gnome-builder/src/main.c line 68

Note: I'm not using any of the new functionality (building, running, flatpaks, etc.), just the editor + the code assistance plugin.
Comment 1 Giovanni Campagna 2016-07-18 21:18:34 UTC
Interestingly (and annoyingly), it happens reproducibly as soon as I open one particular file in one of my projects.
I tried to remove the drafts folder and to remove the cache to no effect.
Comment 2 Christian Hergert 2016-07-18 21:20:31 UTC
Hrmm, happening when finalizing a GSubprocess. I wonder if it is related to my gettext cleanups last night in commit d1a249
Comment 3 Christian Hergert 2016-07-18 21:25:29 UTC
Can you switch to a frame with the task in scope and do this in gdb:

 call g_task_get_source_tag(task)

and see if we get a function pointer? I've been really bad about setting the source tag, it would definitely help here...

Failing that, we could try something like:

 call g_task_get_source_object(task)

and then

 call g_type_name(((GObject*)$1)->g_type_instance->g_class->g_type)

 (or something like that)
Comment 4 Giovanni Campagna 2016-07-18 21:30:37 UTC
Created attachment 331749 [details] [review]
Gettext: fix invalid free of unowned object

g_subprocess_get_stderr_pipe is (transfer none), so we cannot
assign it to an autoptr variable, as that will attempt to release
the reference when going out of scope.
Comment 5 Christian Hergert 2016-07-18 21:33:20 UTC
Oops! Thanks for tracking this down!!

Attachment 331749 [details] pushed as 7e98099 - Gettext: fix invalid free of unowned object