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 638525 - vala support crash on reading source file
vala support crash on reading source file
Status: RESOLVED FIXED
Product: anjuta
Classification: Applications
Component: plugins: language-support-vala
git master
Other Linux
: High critical
: ---
Assigned To: Abderrahim Kitouni
Anjuta maintainers
: 656216 (view as bug list)
Depends on:
Blocks:
 
 
Reported: 2011-01-02 17:54 UTC by Jens Georg
Modified: 2011-12-07 21:27 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
Minimal project to crash anjuta (2.85 KB, application/x-bzip)
2011-01-02 17:54 UTC, Jens Georg
  Details
language-support-vala: correctly track whether there are errors (4.17 KB, patch)
2011-08-20 12:06 UTC, Abderrahim Kitouni
committed Details | Review

Description Jens Georg 2011-01-02 17:54:09 UTC
Created attachment 177361 [details]
Minimal project to crash anjuta

If this is the only project opened by anjuta, it crashes as soon as I open a source file. If there's another project open that uses the vala support, it doesn't crash but it also doesn't open a new window.

Backtrace:
[Switching to Thread 0x7fffe5f81700 (LWP 13127)]
vala_code_node_check (self=0x0, context=0xcf6150) at valacodenode.c:415
415		return VALA_CODE_NODE_GET_CLASS (self)->check (self, context);
(gdb) t a a bt

Thread 1 (Thread 0x7ffff7fbf8e0 (LWP 13118))

  • #0 fsync
    at ../sysdeps/unix/syscall-template.S line 82
  • #1 _g_local_file_output_stream_really_close
    at glocalfileoutputstream.c line 229
  • #2 g_output_stream_close
    at goutputstream.c line 546
  • #3 g_file_replace_contents
    at gfile.c line 6651
  • #4 anjuta_profile_sync
    at anjuta-profile.c line 902
  • #5 anjuta_profile_changed
    at anjuta-profile.c line 228
  • #6 g_closure_invoke
    at gclosure.c line 767
  • #7 signal_emit_unlocked_R
    at gsignal.c line 3182
  • #8 g_signal_emit_valist
    at gsignal.c line 2983
  • #9 g_signal_emit_by_name
    at gsignal.c line 3077
  • #10 on_plugin_activated
    at anjuta-profile-manager.c line 90
  • #11 g_closure_invoke
    at gclosure.c line 767
  • #12 signal_emit_unlocked_R
    at gsignal.c line 3252
  • #13 g_signal_emit_valist
    at gsignal.c line 2983
  • #14 g_signal_emit_by_name
    at gsignal.c line 3077
  • #15 g_closure_invoke
    at gclosure.c line 767
  • #16 signal_emit_unlocked_R
    at gsignal.c line 3252
  • #17 g_signal_emit_valist
    at gsignal.c line 2983
  • #18 g_signal_emit_by_name
    at gsignal.c line 3077
  • #19 anjuta_plugin_activate
    at anjuta-plugin.c line 540
  • #20 plugin_set_update
    at anjuta-plugin-manager.c line 758
  • #21 anjuta_plugin_manager_get_plugin_by_id
    at anjuta-plugin-manager.c line 1540
  • #22 load_new_support_plugins
    at plugin.c line 1090
  • #23 update_language_plugin
    at plugin.c line 1185
  • #24 on_document_changed
    at plugin.c line 1233
  • #25 g_closure_invoke
    at gclosure.c line 767
  • #26 signal_emit_unlocked_R
    at gsignal.c line 3252
  • #27 g_signal_emit_valist
    at gsignal.c line 2983
  • #28 g_signal_emit_by_name
    at gsignal.c line 3077
  • #29 g_closure_invoke
    at gclosure.c line 767
  • #30 signal_emit_unlocked_R
    at gsignal.c line 3252
  • #31 g_signal_emit_valist
    at gsignal.c line 2983
  • #32 g_signal_emit
    at gsignal.c line 3040
  • #33 gtk_notebook_real_insert_page
    at gtknotebook.c line 4591
  • #34 anjuta_docman_add_document
    at anjuta-docman.c line 1054
  • #35 anjuta_docman_add_editor
    at anjuta-docman.c line 1037
  • #36 anjuta_docman_goto_file_line_mark
    at anjuta-docman.c line 1299
  • #37 iloader_load
    at plugin.c line 1488
  • #38 on_uri_activated
    at plugin.c line 863
  • #39 g_closure_invoke
    at gclosure.c line 767
  • #40 signal_emit_unlocked_R
    at gsignal.c line 3252
  • #41 g_signal_emit_valist
    at gsignal.c line 2983
  • #42 g_signal_emit
    at gsignal.c line 3040
  • #43 row_activated
    at project-view.c line 320
  • #44 g_closure_invoke
    at gclosure.c line 767
  • #45 signal_emit_unlocked_R
    at gsignal.c line 3290
  • #46 g_signal_emit_valist
    at gsignal.c line 2983
  • #47 g_signal_emit
    at gsignal.c line 3040
  • #48 gtk_tree_view_button_press
    at gtktreeview.c line 3247
  • #49 _gtk_marshal_BOOLEAN__BOXED
    at gtkmarshalers.c line 85
  • #50 g_closure_invoke
    at gclosure.c line 767
  • #51 signal_emit_unlocked_R
    at gsignal.c line 3290
  • #52 g_signal_emit_valist
    at gsignal.c line 2993
  • #53 g_signal_emit
    at gsignal.c line 3040
  • #54 gtk_widget_event_internal
    at gtkwidget.c line 5943
  • #55 gtk_propagate_event
    at gtkmain.c line 2463
  • #56 gtk_main_do_event
    at gtkmain.c line 1698
  • #57 gdk_event_source_dispatch
    at gdkeventsource.c line 318
  • #58 g_main_dispatch
    at gmain.c line 2440
  • #59 g_main_context_dispatch
    at gmain.c line 3013
  • #60 g_main_context_iterate
    at gmain.c line 3091
  • #61 g_main_loop_run
    at gmain.c line 3299
  • #62 gtk_main
    at gtkmain.c line 1267
  • #63 g_application_run
    at gapplication.c line 1216
  • #64 main
    at main.c line 205

Thread 1 (Thread 0x7ffff7fbf8e0 (LWP 13133))

  • #0 fsync
    at ../sysdeps/unix/syscall-template.S line 82
  • #1 _g_local_file_output_stream_really_close
    at glocalfileoutputstream.c line 229
  • #2 g_output_stream_close
    at goutputstream.c line 546
  • #3 g_file_replace_contents
    at gfile.c line 6651
  • #4 anjuta_profile_sync
    at anjuta-profile.c line 902
  • #5 anjuta_profile_changed
    at anjuta-profile.c line 228
  • #6 g_closure_invoke
    at gclosure.c line 767
  • #7 signal_emit_unlocked_R
    at gsignal.c line 3182
  • #8 g_signal_emit_valist
    at gsignal.c line 2983
  • #9 g_signal_emit_by_name
    at gsignal.c line 3077
  • #10 on_plugin_activated
    at anjuta-profile-manager.c line 90
  • #11 g_closure_invoke
    at gclosure.c line 767
  • #12 signal_emit_unlocked_R
    at gsignal.c line 3252
  • #13 g_signal_emit_valist
    at gsignal.c line 2983
  • #14 g_signal_emit_by_name
    at gsignal.c line 3077
  • #15 g_closure_invoke
    at gclosure.c line 767
  • #16 signal_emit_unlocked_R
    at gsignal.c line 3252
  • #17 g_signal_emit_valist
    at gsignal.c line 2983
  • #18 g_signal_emit_by_name
    at gsignal.c line 3077
  • #19 anjuta_plugin_activate
    at anjuta-plugin.c line 540
  • #20 plugin_set_update
    at anjuta-plugin-manager.c line 758
  • #21 anjuta_plugin_manager_get_plugin_by_id
    at anjuta-plugin-manager.c line 1540
  • #22 load_new_support_plugins
    at plugin.c line 1090
  • #23 update_language_plugin
    at plugin.c line 1185
  • #24 on_document_changed
    at plugin.c line 1233
  • #25 g_closure_invoke
    at gclosure.c line 767
  • #26 signal_emit_unlocked_R
    at gsignal.c line 3252
  • #27 g_signal_emit_valist
    at gsignal.c line 2983
  • #28 g_signal_emit_by_name
    at gsignal.c line 3077
  • #29 g_closure_invoke
    at gclosure.c line 767
  • #30 signal_emit_unlocked_R
    at gsignal.c line 3252
  • #31 g_signal_emit_valist
    at gsignal.c line 2983
  • #32 g_signal_emit
    at gsignal.c line 3040
  • #33 gtk_notebook_real_insert_page
    at gtknotebook.c line 4591
  • #34 anjuta_docman_add_document
    at anjuta-docman.c line 1054
  • #35 anjuta_docman_add_editor
    at anjuta-docman.c line 1037
  • #36 anjuta_docman_goto_file_line_mark
    at anjuta-docman.c line 1299
  • #37 iloader_load
    at plugin.c line 1488
  • #38 on_uri_activated
    at plugin.c line 863
  • #39 g_closure_invoke
    at gclosure.c line 767
  • #40 signal_emit_unlocked_R
    at gsignal.c line 3252
  • #41 g_signal_emit_valist
    at gsignal.c line 2983
  • #42 g_signal_emit
    at gsignal.c line 3040
  • #43 row_activated
    at project-view.c line 320
  • #44 g_closure_invoke
    at gclosure.c line 767
  • #45 signal_emit_unlocked_R
    at gsignal.c line 3290
  • #46 g_signal_emit_valist
    at gsignal.c line 2983
  • #47 g_signal_emit
    at gsignal.c line 3040
  • #48 gtk_tree_view_button_press
    at gtktreeview.c line 3247
  • #49 _gtk_marshal_BOOLEAN__BOXED
    at gtkmarshalers.c line 85
  • #50 g_closure_invoke
    at gclosure.c line 767
  • #51 signal_emit_unlocked_R
    at gsignal.c line 3290
  • #52 g_signal_emit_valist
    at gsignal.c line 2993
  • #53 g_signal_emit
    at gsignal.c line 3040
  • #54 gtk_widget_event_internal
    at gtkwidget.c line 5943
  • #55 gtk_propagate_event
    at gtkmain.c line 2463
  • #56 gtk_main_do_event
    at gtkmain.c line 1698
  • #57 gdk_event_source_dispatch
    at gdkeventsource.c line 318
  • #58 g_main_dispatch
    at gmain.c line 2440
  • #59 g_main_context_dispatch
    at gmain.c line 3013
  • #60 g_main_context_iterate
    at gmain.c line 3091
  • #61 g_main_loop_run
    at gmain.c line 3299
  • #62 gtk_main
    at gtkmain.c line 1267
  • #63 g_application_run
    at gapplication.c line 1216
  • #64 main
    at main.c line 205

Comment 1 Jens Georg 2011-01-02 17:55:28 UTC
Hm, somehow the second backtrace was lost:

** CRITICAL **: vala_boolean_type_construct: assertion `type_symbol != NULL' failed
aborting...

Program received signal SIGTRAP, Trace/breakpoint trap.
[Switching to Thread 0x7fffe61fc700 (LWP 13142)]
g_logv (log_domain=<value optimised out>, log_level=<value optimised out>, format=<value optimised out>, args1=0x7fffe61fbb00) at gmessages.c:563
563		  g_private_set (g_log_depth, GUINT_TO_POINTER (depth));
(gdb) t a a bt

Thread 1 (Thread 0x7ffff7fbf8e0 (LWP 13133))

  • #0 fsync
    at ../sysdeps/unix/syscall-template.S line 82
  • #1 _g_local_file_output_stream_really_close
    at glocalfileoutputstream.c line 229
  • #2 g_output_stream_close
    at goutputstream.c line 546
  • #3 g_file_replace_contents
    at gfile.c line 6651
  • #4 anjuta_profile_sync
    at anjuta-profile.c line 902
  • #5 anjuta_profile_changed
    at anjuta-profile.c line 228
  • #6 g_closure_invoke
    at gclosure.c line 767
  • #7 signal_emit_unlocked_R
    at gsignal.c line 3182
  • #8 g_signal_emit_valist
    at gsignal.c line 2983
  • #9 g_signal_emit_by_name
    at gsignal.c line 3077
  • #10 on_plugin_activated
    at anjuta-profile-manager.c line 90
  • #11 g_closure_invoke
    at gclosure.c line 767
  • #12 signal_emit_unlocked_R
    at gsignal.c line 3252
  • #13 g_signal_emit_valist
    at gsignal.c line 2983
  • #14 g_signal_emit_by_name
    at gsignal.c line 3077
  • #15 g_closure_invoke
    at gclosure.c line 767
  • #16 signal_emit_unlocked_R
    at gsignal.c line 3252
  • #17 g_signal_emit_valist
    at gsignal.c line 2983
  • #18 g_signal_emit_by_name
    at gsignal.c line 3077
  • #19 anjuta_plugin_activate
    at anjuta-plugin.c line 540
  • #20 plugin_set_update
    at anjuta-plugin-manager.c line 758
  • #21 anjuta_plugin_manager_get_plugin_by_id
    at anjuta-plugin-manager.c line 1540
  • #22 load_new_support_plugins
    at plugin.c line 1090
  • #23 update_language_plugin
    at plugin.c line 1185
  • #24 on_document_changed
    at plugin.c line 1233
  • #25 g_closure_invoke
    at gclosure.c line 767
  • #26 signal_emit_unlocked_R
    at gsignal.c line 3252
  • #27 g_signal_emit_valist
    at gsignal.c line 2983
  • #28 g_signal_emit_by_name
    at gsignal.c line 3077
  • #29 g_closure_invoke
    at gclosure.c line 767
  • #30 signal_emit_unlocked_R
  • #31 g_signal_emit_valist
    at gsignal.c line 2983
  • #32 g_signal_emit
    at gsignal.c line 3040
  • #33 gtk_notebook_real_insert_page
    at gtknotebook.c line 4591
  • #34 anjuta_docman_add_document
    at anjuta-docman.c line 1054
  • #35 anjuta_docman_add_editor
    at anjuta-docman.c line 1037
  • #36 anjuta_docman_goto_file_line_mark
    at anjuta-docman.c line 1299
  • #37 iloader_load
    at plugin.c line 1488
  • #38 on_uri_activated
    at plugin.c line 863
  • #39 g_closure_invoke
    at gclosure.c line 767
  • #40 signal_emit_unlocked_R
    at gsignal.c line 3252
  • #41 g_signal_emit_valist
    at gsignal.c line 2983
  • #42 g_signal_emit
    at gsignal.c line 3040
  • #43 row_activated
    at project-view.c line 320
  • #44 g_closure_invoke
    at gclosure.c line 767
  • #45 signal_emit_unlocked_R
    at gsignal.c line 3290
  • #46 g_signal_emit_valist
    at gsignal.c line 2983
  • #47 g_signal_emit
    at gsignal.c line 3040
  • #48 gtk_tree_view_button_press
    at gtktreeview.c line 3247
  • #49 _gtk_marshal_BOOLEAN__BOXED
    at gtkmarshalers.c line 85
  • #50 g_closure_invoke
    at gclosure.c line 767
  • #51 signal_emit_unlocked_R
    at gsignal.c line 3290
  • #52 g_signal_emit_valist
    at gsignal.c line 2993
  • #53 g_signal_emit
    at gsignal.c line 3040
  • #54 gtk_widget_event_internal
    at gtkwidget.c line 5943
  • #55 gtk_propagate_event
    at gtkmain.c line 2463
  • #56 gtk_main_do_event
    at gtkmain.c line 1698
  • #57 gdk_event_source_dispatch
    at gdkeventsource.c line 318
  • #58 g_main_dispatch
    at gmain.c line 2440
  • #59 g_main_context_dispatch
    at gmain.c line 3013
  • #60 g_main_context_iterate
    at gmain.c line 3091
  • #61 g_main_loop_run
    at gmain.c line 3299
  • #62 gtk_main
    at gtkmain.c line 1267
  • #63 g_application_run
    at gapplication.c line 1216
  • #64 main
    at main.c line 205

Comment 2 Abderrahim Kitouni 2011-01-10 19:03:24 UTC
Unfortunately, I cannot reproduce this crash. Can you try again with anjuta master?

I have just pushed a refactoring of the plugin, and I see a similar crash to what you described on IRC (but not with your minimal project, only with bigger ones).

If you can reproduce with master, I'd like to see a backtrace and the output of anjuta when run with the environment variable ANJUTA_LOG_DOMAINS set to language-support-vala
Comment 3 Jens Georg 2011-01-10 20:49:09 UTC
No, I cannot reproduce this crash with master.
Comment 4 Abderrahim Kitouni 2011-08-20 12:06:44 UTC
Created attachment 194285 [details] [review]
language-support-vala: correctly track whether there are errors

This fixes the most common crash I was experiencing

Could you try with this patch? you'll need vala master
Comment 5 Abderrahim Kitouni 2011-08-24 17:07:46 UTC
Review of attachment 194285 [details] [review]:

FYI, I pushed this change in (since vala 0.13.3 was released), so you can try directly with master (or with the next anjuta tarball)
Comment 6 Jens Georg 2011-08-29 07:31:55 UTC
Sorry, I was on vacation. Will check later today.
Comment 7 Jens Georg 2011-08-29 10:42:13 UTC
looks fine here. Hasn't crashed in a while
Comment 8 Abderrahim Kitouni 2011-08-29 17:03:18 UTC
Ok, thanks. I'm closing this then.
Comment 9 Fabio Durán Verdugo 2011-12-07 21:27:38 UTC
*** Bug 656216 has been marked as a duplicate of this bug. ***