Bug 217586

Summary: devel/giggle 0.7 crashes
Product: Ports & Packages Reporter: rozhuk.im
Component: Individual Port(s)Assignee: Ashish SHUKLA <ashish>
Status: Closed FIXED    
Severity: Affects Some People CC: ashish, dch, rozhuk.im, tobik
Priority: --- Flags: ashish: maintainer-feedback+
Version: Latest   
Hardware: Any   
OS: Any   
URL: https://bugzilla.gnome.org/show_bug.cgi?id=741942
Attachments:
Description Flags
giggle.diff tobik: maintainer-approval? (ashish)

Description rozhuk.im 2017-03-06 14:23:54 UTC
#0  0x00000008010d3527 in gtk_source_mark_attributes_set_pixbuf ()
   from /usr/local/lib/libgtksourceview-3.0.so.1
#1  0x00000000004303f4 in giggle_view_file_get_path ()
#2  0x000000000042edd9 in giggle_view_file_get_path ()
#3  0x0000000803337020 in g_cclosure_marshal_VOID__VOID (closure=0x80df9d960, 
    return_value=0x0, n_param_values=1, param_values=0x7fffffff68a0, 
    invocation_hint=0x7fffffff6840, marshal_data=0x0) at gmarshal.c:875
#4  0x00000008033336e6 in g_closure_invoke (closure=0x80df9d960, 
    return_value=0x0, n_param_values=1, param_values=0x7fffffff68a0, 
    invocation_hint=0x7fffffff6840) at gclosure.c:801
#5  0x00000008033544a7 in signal_emit_unlocked_R (node=0x80cad26c0, detail=0, 
    instance=0x80dfa0330, emission_return=0x0, 
    instance_and_params=0x7fffffff68a0) at gsignal.c:3627
#6  0x0000000803355e55 in g_signal_emit_valist (instance=0x80dfa0330, 
    signal_id=37, detail=0, var_args=0x7fffffff6fc0) at gsignal.c:3383
#7  0x000000080335667f in g_signal_emit (instance=0x80dfa0330, signal_id=37, 
    detail=0) at gsignal.c:3439
#8  0x000000080175b026 in gtk_widget_realize ()
   from /usr/local/lib/libgtk-3.so.0
#9  0x000000080175af3d in gtk_widget_map () from /usr/local/lib/libgtk-3.so.0
#10 0x00000008016ba9f3 in gtk_scrolled_window_get_overlay_scrolling ()
   from /usr/local/lib/libgtk-3.so.0
#11 0x0000000801599675 in gtk_container_get_path_for_child ()
   from /usr/local/lib/libgtk-3.so.0
#12 0x00000008016ba496 in gtk_scrolled_window_get_overlay_scrolling ()
   from /usr/local/lib/libgtk-3.so.0
#13 0x00000008033370e0 in g_cclosure_marshal_VOID__VOIDv (closure=0x80cabb460, 
    return_value=0x0, instance=0x80dd73ce0, args=0x7fffffff7a20, 
    marshal_data=0x8016ba480, n_params=0, param_types=0x0) at gmarshal.c:905
#14 0x0000000803334592 in g_type_class_meta_marshalv (closure=0x80cabb460, 
    return_value=0x0, instance=0x80dd73ce0, args=0x7fffffff7a20, 
    marshal_data=0xb8, n_params=0, param_types=0x0) at gclosure.c:1021
#15 0x0000000803333ac8 in _g_closure_invoke_va (closure=0x80cabb460, 
    return_value=0x0, instance=0x80dd73ce0, args=0x7fffffff7a20, n_params=0, 
    param_types=0x0) at gclosure.c:864
#16 0x00000008033550b7 in g_signal_emit_valist (instance=0x80dd73ce0, 
    signal_id=27, detail=0, var_args=0x7fffffff7a20) at gsignal.c:3292
#17 0x000000080335667f in g_signal_emit (instance=0x80dd73ce0, signal_id=27, 
    detail=0) at gsignal.c:3439
#18 0x000000080175af4f in gtk_widget_map () from /usr/local/lib/libgtk-3.so.0
#19 0x0000000801679ae3 in gtk_paned_get_wide_handle ()
   from /usr/local/lib/libgtk-3.so.0
#20 0x0000000801599675 in gtk_container_get_path_for_child ()
   from /usr/local/lib/libgtk-3.so.0
#21 0x00000008033370e0 in g_cclosure_marshal_VOID__VOIDv (closure=0x80cabb460, 
    return_value=0x0, instance=0x80ddf8ba0, args=0x7fffffff83d0, 
    marshal_data=0x801679500, n_params=0, param_types=0x0) at gmarshal.c:905
#22 0x0000000803334592 in g_type_class_meta_marshalv (closure=0x80cabb460, 
    return_value=0x0, instance=0x80ddf8ba0, args=0x7fffffff83d0, 
    marshal_data=0xb8, n_params=0, param_types=0x0) at gclosure.c:1021
#23 0x0000000803333ac8 in _g_closure_invoke_va (closure=0x80cabb460, 
    return_value=0x0, instance=0x80ddf8ba0, args=0x7fffffff83d0, n_params=0, 
    param_types=0x0) at gclosure.c:864
#24 0x00000008033550b7 in g_signal_emit_valist (instance=0x80ddf8ba0, 
    signal_id=27, detail=0, var_args=0x7fffffff83d0) at gsignal.c:3292
#25 0x000000080335667f in g_signal_emit (instance=0x80ddf8ba0, signal_id=27, 
    detail=0) at gsignal.c:3439
#26 0x000000080175af4f in gtk_widget_map () from /usr/local/lib/libgtk-3.so.0
#27 0x0000000801599675 in gtk_container_get_path_for_child ()
   from /usr/local/lib/libgtk-3.so.0
#28 0x00000008033370e0 in g_cclosure_marshal_VOID__VOIDv (closure=0x80cabb460, 
    return_value=0x0, instance=0x80ddf89f0, args=0x7fffffff8d50, 
    marshal_data=0x801679500, n_params=0, param_types=0x0) at gmarshal.c:905
#29 0x0000000803334592 in g_type_class_meta_marshalv (closure=0x80cabb460, 
    return_value=0x0, instance=0x80ddf89f0, args=0x7fffffff8d50, 
    marshal_data=0xb8, n_params=0, param_types=0x0) at gclosure.c:1021
#30 0x0000000803333ac8 in _g_closure_invoke_va (closure=0x80cabb460, 
    return_value=0x0, instance=0x80ddf89f0, args=0x7fffffff8d50, n_params=0, 
    param_types=0x0) at gclosure.c:864
#31 0x00000008033550b7 in g_signal_emit_valist (instance=0x80ddf89f0, 
    signal_id=27, detail=0, var_args=0x7fffffff8d50) at gsignal.c:3292
#32 0x000000080335667f in g_signal_emit (instance=0x80ddf89f0, signal_id=27, 
    detail=0) at gsignal.c:3439
#33 0x000000080175af4f in gtk_widget_map () from /usr/local/lib/libgtk-3.so.0
#34 0x000000080155f609 in gtk_box_get_center_widget ()
   from /usr/local/lib/libgtk-3.so.0
#35 0x0000000801599675 in gtk_container_get_path_for_child ()
   from /usr/local/lib/libgtk-3.so.0
#36 0x00000008033370e0 in g_cclosure_marshal_VOID__VOIDv (closure=0x80cabb460, 
    return_value=0x0, instance=0x80e0771a0, args=0x7fffffff9700, 
    marshal_data=0x801599640, n_params=0, param_types=0x0) at gmarshal.c:905
#37 0x0000000803334592 in g_type_class_meta_marshalv (closure=0x80cabb460, 
    return_value=0x0, instance=0x80e0771a0, args=0x7fffffff9700, 
    marshal_data=0xb8, n_params=0, param_types=0x0) at gclosure.c:1021
#38 0x0000000803333ac8 in _g_closure_invoke_va (closure=0x80cabb460, 
    return_value=0x0, instance=0x80e0771a0, args=0x7fffffff9700, n_params=0, 
    param_types=0x0) at gclosure.c:864
#39 0x00000008033550b7 in g_signal_emit_valist (instance=0x80e0771a0, 
    signal_id=27, detail=0, var_args=0x7fffffff9700) at gsignal.c:3292
#40 0x000000080335667f in g_signal_emit (instance=0x80e0771a0, signal_id=27, 
    detail=0) at gsignal.c:3439
#41 0x000000080175af4f in gtk_widget_map () from /usr/local/lib/libgtk-3.so.0
#42 0x000000080155f609 in gtk_box_get_center_widget ()
   from /usr/local/lib/libgtk-3.so.0
#43 0x0000000801599675 in gtk_container_get_path_for_child ()
   from /usr/local/lib/libgtk-3.so.0
#44 0x00000008033370e0 in g_cclosure_marshal_VOID__VOIDv (closure=0x80cabb460, 
    return_value=0x0, instance=0x80de84cc0, args=0x7fffffffa0b0, 
    marshal_data=0x801599640, n_params=0, param_types=0x0) at gmarshal.c:905
#45 0x0000000803334592 in g_type_class_meta_marshalv (closure=0x80cabb460, 
    return_value=0x0, instance=0x80de84cc0, args=0x7fffffffa0b0, 
    marshal_data=0xb8, n_params=0, param_types=0x0) at gclosure.c:1021
#46 0x0000000803333ac8 in _g_closure_invoke_va (closure=0x80cabb460, 
    return_value=0x0, instance=0x80de84cc0, args=0x7fffffffa0b0, n_params=0, 
    param_types=0x0) at gclosure.c:864
#47 0x00000008033550b7 in g_signal_emit_valist (instance=0x80de84cc0, 
    signal_id=27, detail=0, var_args=0x7fffffffa0b0) at gsignal.c:3292
#48 0x000000080335667f in g_signal_emit (instance=0x80de84cc0, signal_id=27, 
    detail=0) at gsignal.c:3439
#49 0x000000080176062e in gtk_widget_set_child_visible ()
   from /usr/local/lib/libgtk-3.so.0
#50 0x000000080167124d in gtk_notebook_set_action_widget ()
   from /usr/local/lib/libgtk-3.so.0
#51 0x00000008008756a7 in giggle_view_shell_select ()
   from /usr/local/lib/libgiggle.so.0
#52 0x00000008033341a5 in g_type_class_meta_marshal (closure=0x80caf8de0, 
    return_value=0x0, n_param_values=3, param_values=0x7fffffffa490, 
    invocation_hint=0x7fffffffa430, marshal_data=0x3d0) at gclosure.c:994
#53 0x00000008033336e6 in g_closure_invoke (closure=0x80caf8de0, 
    return_value=0x0, n_param_values=3, param_values=0x7fffffffa490, 
    invocation_hint=0x7fffffffa430) at gclosure.c:801
#54 0x000000080335464b in signal_emit_unlocked_R (node=0x80cafc0c0, detail=0, 
    instance=0x80de30220, emission_return=0x0, 
    instance_and_params=0x7fffffffa490) at gsignal.c:3665
#55 0x0000000803355e55 in g_signal_emit_valist (instance=0x80de30220, 
    signal_id=114, detail=0, var_args=0x7fffffffabe0) at gsignal.c:3383
#56 0x000000080335667f in g_signal_emit (instance=0x80de30220, signal_id=114, 
    detail=0) at gsignal.c:3439
#57 0x000000080166a7ce in gtk_notebook_set_current_page ()
   from /usr/local/lib/libgtk-3.so.0
#58 0x0000000800875798 in giggle_view_shell_select ()
   from /usr/local/lib/libgiggle.so.0
#59 0x00000008033397c3 in g_cclosure_marshal_VOID__OBJECT (
    closure=0x80e0b4120, return_value=0x0, n_param_values=2, 
    param_values=0x7fffffffafa0, invocation_hint=0x7fffffffaf40, 
    marshal_data=0x0) at gmarshal.c:2062
#60 0x00000008033336e6 in g_closure_invoke (closure=0x80e0b4120, 
    return_value=0x0, n_param_values=2, param_values=0x7fffffffafa0, 
    invocation_hint=0x7fffffffaf40) at gclosure.c:801
#61 0x00000008033544a7 in signal_emit_unlocked_R (node=0x80dc7fce0, detail=0, 
    instance=0x80deab3d0, emission_return=0x0, 
    instance_and_params=0x7fffffffafa0) at gsignal.c:3627
#62 0x0000000803355e55 in g_signal_emit_valist (instance=0x80deab3d0, 
    signal_id=193, detail=0, var_args=0x7fffffffb6d0) at gsignal.c:3383
#63 0x000000080335667f in g_signal_emit (instance=0x80deab3d0, signal_id=193, 
    detail=0) at gsignal.c:3439
#64 0x0000000801513cb7 in gtk_radio_action_set_current_value ()
   from /usr/local/lib/libgtk-3.so.0
#65 0x0000000803337020 in g_cclosure_marshal_VOID__VOID (closure=0x80ca51d60, 
    return_value=0x0, n_param_values=1, param_values=0x7fffffffbab0, 
    invocation_hint=0x7fffffffba50, marshal_data=0x801513bd0) at gmarshal.c:875
#66 0x00000008033341a5 in g_type_class_meta_marshal (closure=0x80ca51d60, 
    return_value=0x0, n_param_values=1, param_values=0x7fffffffbab0, 
    invocation_hint=0x7fffffffba50, marshal_data=0x88) at gclosure.c:994
#67 0x00000008033336e6 in g_closure_invoke (closure=0x80ca51d60, 
    return_value=0x0, n_param_values=1, param_values=0x7fffffffbab0, 
    invocation_hint=0x7fffffffba50) at gclosure.c:801
#68 0x0000000803354163 in signal_emit_unlocked_R (node=0x80dc7fc20, detail=0, 
    instance=0x80deab3d0, emission_return=0x0, 
    instance_and_params=0x7fffffffbab0) at gsignal.c:3557
#69 0x0000000803355e55 in g_signal_emit_valist (instance=0x80deab3d0, 
    signal_id=191, detail=0, var_args=0x7fffffffc1d0) at gsignal.c:3383
#70 0x000000080335667f in g_signal_emit (instance=0x80deab3d0, signal_id=191, 
    detail=0) at gsignal.c:3439
#71 0x00000008014faf34 in _gtk_action_emit_activate ()
   from /usr/local/lib/libgtk-3.so.0
#72 0x0000000800875661 in giggle_view_shell_select ()
   from /usr/local/lib/libgiggle.so.0
#73 0x00000008033341a5 in g_type_class_meta_marshal (closure=0x80caf8de0, 
    return_value=0x0, n_param_values=3, param_values=0x7fffffffc570, 
    invocation_hint=0x7fffffffc510, marshal_data=0x3d0) at gclosure.c:994
#74 0x00000008033336e6 in g_closure_invoke (closure=0x80caf8de0, 
    return_value=0x0, n_param_values=3, param_values=0x7fffffffc570, 
    invocation_hint=0x7fffffffc510) at gclosure.c:801
#75 0x000000080335464b in signal_emit_unlocked_R (node=0x80cafc0c0, detail=0, 
    instance=0x80de30220, emission_return=0x0, 
    instance_and_params=0x7fffffffc570) at gsignal.c:3665
#76 0x0000000803355e55 in g_signal_emit_valist (instance=0x80de30220, 
    signal_id=114, detail=0, var_args=0x7fffffffccc0) at gsignal.c:3383
#77 0x000000080335667f in g_signal_emit (instance=0x80de30220, signal_id=114, 
    detail=0) at gsignal.c:3439
#78 0x0000000801672a3b in gtk_notebook_set_action_widget ()
   from /usr/local/lib/libgtk-3.so.0
#79 0x00000008016c7801 in _gtk_widget_get_preferred_size_for_size ()
   from /usr/local/lib/libgtk-3.so.0
#80 0x00000008016c6f36 in gtk_widget_get_preferred_width ()
   from /usr/local/lib/libgtk-3.so.0
#81 0x00000008016c70e7 in gtk_widget_get_preferred_height_and_baseline_for_width () from /usr/local/lib/libgtk-3.so.0
#82 0x0000000801560e3d in gtk_box_get_center_widget ()
   from /usr/local/lib/libgtk-3.so.0
#83 0x00000008016c77eb in _gtk_widget_get_preferred_size_for_size ()
   from /usr/local/lib/libgtk-3.so.0
#84 0x00000008016c6f36 in gtk_widget_get_preferred_width ()
   from /usr/local/lib/libgtk-3.so.0
#85 0x00000008016c704b in gtk_widget_get_preferred_height ()
   from /usr/local/lib/libgtk-3.so.0
#86 0x0000000801775a83 in gtk_window_set_hardcoded_window ()
   from /usr/local/lib/libgtk-3.so.0
#87 0x00000008016c7801 in _gtk_widget_get_preferred_size_for_size ()
   from /usr/local/lib/libgtk-3.so.0
#88 0x00000008016c6f36 in gtk_widget_get_preferred_width ()
   from /usr/local/lib/libgtk-3.so.0
#89 0x00000008016c7148 in _gtk_widget_get_preferred_size_and_baseline ()
   from /usr/local/lib/libgtk-3.so.0
#90 0x000000080176e88f in gtk_window_get_size ()
   from /usr/local/lib/libgtk-3.so.0
#91 0x0000000801775e21 in gtk_window_set_hardcoded_window ()
   from /usr/local/lib/libgtk-3.so.0
#92 0x00000008033370e0 in g_cclosure_marshal_VOID__VOIDv (closure=0x80caf8920, 
    return_value=0x0, instance=0x80dd0e340, args=0x7fffffffde50, 
    marshal_data=0x801775d40, n_params=0, param_types=0x0) at gmarshal.c:905
#93 0x0000000803334592 in g_type_class_meta_marshalv (closure=0x80caf8920, 
    return_value=0x0, instance=0x80dd0e340, args=0x7fffffffde50, 
    marshal_data=0x348, n_params=0, param_types=0x0) at gclosure.c:1021
#94 0x0000000803333ac8 in _g_closure_invoke_va (closure=0x80caf8920, 
    return_value=0x0, instance=0x80dd0e340, args=0x7fffffffde50, n_params=0, 
    param_types=0x0) at gclosure.c:864
#95 0x00000008033550b7 in g_signal_emit_valist (instance=0x80dd0e340, 
    signal_id=98, detail=0, var_args=0x7fffffffde50) at gsignal.c:3292
#96 0x000000080335667f in g_signal_emit (instance=0x80dd0e340, signal_id=98, 
    detail=0) at gsignal.c:3439
#97 0x000000080159a8ef in gtk_container_get_path_for_child ()
   from /usr/local/lib/libgtk-3.so.0
#98 0x00000008033370e0 in g_cclosure_marshal_VOID__VOIDv (closure=0x80e9a1170, 
    return_value=0x0, instance=0x80cada6a0, args=0x7fffffffe760, 
    marshal_data=0x0, n_params=0, param_types=0x0) at gmarshal.c:905
#99 0x0000000803333ac8 in _g_closure_invoke_va (closure=0x80e9a1170, 
    return_value=0x0, instance=0x80cada6a0, args=0x7fffffffe760, n_params=0, 
    param_types=0x0) at gclosure.c:864
#100 0x00000008033550b7 in g_signal_emit_valist (instance=0x80cada6a0, 
    signal_id=20, detail=0, var_args=0x7fffffffe760) at gsignal.c:3292
#101 0x00000008033568b7 in g_signal_emit_by_name (instance=0x80cada6a0, 
    detailed_signal=0x801d2781f "layout") at gsignal.c:3479
#102 0x0000000801cd771b in _gdk_frame_clock_idle_new ()
   from /usr/local/lib/libgdk-3.so.0
#103 0x0000000801ccbfc2 in gdk_threads_add_idle_full ()
   from /usr/local/lib/libgdk-3.so.0
#104 0x00000008035e0c27 in g_timeout_dispatch (source=0x80dc3fc20, 
    callback=0x801ccbf90 <gdk_threads_add_idle_full+80>, user_data=0x80cb97ae0)
    at gmain.c:4577
#105 0x00000008035e5243 in g_main_dispatch (context=0x80ca40540)
    at gmain.c:3154
#106 0x00000008035e5090 in g_main_context_dispatch (context=0x80ca40540)
    at gmain.c:3769
#107 0x00000008035e55de in g_main_context_iterate (context=0x80ca40540, 
    block=1, dispatch=1, self=0x80cb1f550) at gmain.c:3840
#108 0x00000008035e5a9e in g_main_loop_run (loop=0x80e0c3430) at gmain.c:4034
#109 0x00000008016441ca in gtk_main () from /usr/local/lib/libgtk-3.so.0
#110 0x000000000043538a in main ()
Comment 1 Ashish SHUKLA freebsd_committer 2017-03-16 06:14:41 UTC
Could you provide steps to reproduce this crash ?

Thanks!
Comment 2 rozhuk.im 2017-04-15 01:31:26 UTC
(In reply to Ashish SHUKLA from comment #1)

cd /tmp/
git clone https://github.com/xfce-mirror/xfce4-taskmanager.git
cd ./xfce4-taskmanager
giggle
Comment 3 rozhuk.im 2017-05-09 01:53:46 UTC
Is it reproduced in your environment?
Comment 4 Ashish SHUKLA freebsd_committer 2017-05-13 16:10:06 UTC
(In reply to rozhuk.im from comment #3)

Sorry for the delay in reply. Thanks for providing the steps. I was able to reproduce it in my environment as well. It is reported as bug #741942 in GNOME bug tracker[1] as well. Unfortunately, I don't have a fix for this at the moment, and upstream development seems to have stalled.

[1] https://bugzilla.gnome.org/show_bug.cgi?id=741942
Comment 5 Tobias Kortkamp freebsd_committer 2018-09-29 11:56:34 UTC
Created attachment 197592 [details]
giggle.diff

The problem seems to be that with recent versions of gtksourceview3
one needs to only include gtksource.h

In file included from giggle-view-file.c:41:
/usr/local/include/gtksourceview-3.0/gtksourceview/gtksourcelanguagemanager.h:27:6: warning: 
      "Only <gtksourceview/gtksource.h> can be included directly." [-W#warnings]
#    warning "Only <gtksourceview/gtksource.h> can be included directly."
     ^

I suspect the crashes come from incomplete definitions caused by
not including gtksource.h, but Giggle disables many compiler warnings
so it's hard to tell.  Anyway the crashes seem to be gone for me with
this fixed.  Can someone confirm?
Comment 6 Ashish SHUKLA freebsd_committer 2018-10-01 13:36:55 UTC
(In reply to Tobias Kortkamp from comment #5)

Thanks for the diff. I'll be able to test next week, and will get back to you.
Comment 7 Tobias Kortkamp freebsd_committer 2018-10-20 18:41:08 UTC
(In reply to Ashish SHUKLA from comment #6)
Ping.

Btw, should we deprecate the port too since upstream development has ceased?
Comment 8 Ashish SHUKLA freebsd_committer 2018-10-22 02:25:45 UTC
(In reply to Tobias Kortkamp from comment #7)

My sincere apologies. I missed following up on this.

Regarding deprecation, I think we can deprecate, it seems like upstreams efforts are focused on gitg[1].

I will take care of deprecation.

[1] https://gitlab.gnome.org/GNOME/gitg/
Comment 9 Ashish SHUKLA freebsd_committer 2018-10-22 03:10:57 UTC
(In reply to Tobias Kortkamp from comment #5)

Also the diff works for me too. Please submit it upstream.

Thanks!
Comment 10 commit-hook freebsd_committer 2018-10-22 06:18:22 UTC
A commit references this bug:

Author: ashish
Date: Mon Oct 22 06:17:52 UTC 2018
New revision: 482732
URL: https://svnweb.freebsd.org/changeset/ports/482732

Log:
  - Add patch to fix the crash[1]
  - Reorder USES
  - Add a DEPRECATION notice as the upstream development has been
    stalled for quite sometime

  PR:		217586
  Submitted by:	tobik [1]
  Reported by:	rozhuk.im at gmail dot com

Changes:
  head/devel/giggle/Makefile
  head/devel/giggle/files/patch-src_giggle-diff-view.c
  head/devel/giggle/files/patch-src_giggle-diff-view.h
  head/devel/giggle/files/patch-src_giggle-view-file.c
Comment 11 Ashish SHUKLA freebsd_committer 2018-10-22 06:19:03 UTC
Committed, thanks!