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 761063 - Crash (abort) on enabling/disabling extensions
Crash (abort) on enabling/disabling extensions
Status: RESOLVED FIXED
Product: gnome-builder
Classification: Other
Component: libide
unspecified
Other Linux
: Normal normal
: ---
Assigned To: GNOME Builder Maintainers
GNOME Builder Maintainers
Depends on:
Blocks:
 
 
Reported: 2016-01-24 22:20 UTC by Mario Sánchez Prada
Modified: 2016-01-25 00:24 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
Full backtrace (24.38 KB, text/plain)
2016-01-24 22:20 UTC, Mario Sánchez Prada
  Details
Patch proposal (1.37 KB, patch)
2016-01-24 22:34 UTC, Mario Sánchez Prada
committed Details | Review

Description Mario Sánchez Prada 2016-01-24 22:20:07 UTC
Created attachment 319632 [details]
Full backtrace

Nearly each time that I tried to enable or disable an extension like "GNOME code assistance" I get an ABORT resulting in the program crashing, where the relevant part of the backtrace looks like this:

  • #0 __GI_raise
    at ../sysdeps/unix/sysv/linux/raise.c line 55
  • #1 __GI_abort
    at abort.c line 89
  • #2 g_assertion_message
  • #3 g_assertion_message_expr
  • #4 ide_context_service_removed
    at ide-context.c line 1183

(See full backtrace attached)

The problem seems to be that libIDE is connecting to "extension-added" and "extension-removed" using G_CONNECT_SWAPPED when it should not in that particular case, resulting in the assertion failure exposed above.

Patch coming soon
Comment 1 Mario Sánchez Prada 2016-01-24 22:34:31 UTC
Created attachment 319634 [details] [review]
Patch proposal

Here you have a patch. This gets rid of the crash reliably on my machine, let me know if it's ok to push it, or whether you want me to fix it in a different way.
Comment 2 Christian Hergert 2016-01-25 00:14:41 UTC
Review of attachment 319634 [details] [review]:

Oops! LGTM
Comment 3 Christian Hergert 2016-01-25 00:24:27 UTC
Great!