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 688594 - gnome-documents crashes if you go back from fullscreen and scroll
gnome-documents crashes if you go back from fullscreen and scroll
Status: RESOLVED FIXED
Product: gnome-documents
Classification: Core
Component: general
unspecified
Other Linux
: Normal normal
: ---
Assigned To: GNOME documents maintainer(s)
GNOME documents maintainer(s)
Depends on:
Blocks:
 
 
Reported: 2012-11-18 17:52 UTC by Giovanni Campagna
Modified: 2013-01-03 02:24 UTC
See Also:
GNOME target: ---
GNOME version: ---



Description Giovanni Campagna 2012-11-18 17:52:45 UTC
Backtrace:

  • #0 gd_sidebar_thumbnails_set_current_page
    at lib/gd-sidebar-thumbnails.c line 630
  • #1 g_closure_invoke
    at gclosure.c line 777
  • #2 signal_emit_unlocked_R
    at gsignal.c line 3567
  • #3 g_signal_emit_valist
    at gsignal.c line 3315
  • #4 g_signal_emit
    at gsignal.c line 3371
  • #5 ev_document_model_set_page
    at ev-document-model.c line 365
  • #6 view_update_range_and_current_page
    at ev-view.c line 700
  • #7 on_adjustment_value_changed
    at ev-view.c line 4985
  • #8 g_closure_invoke
    at gclosure.c line 777
  • #9 signal_emit_unlocked_R
    at gsignal.c line 3567
  • #10 g_signal_emit_valist
    at gsignal.c line 3315
  • #11 g_signal_emit
    at gsignal.c line 3371
  • #12 gtk_adjustment_value_changed
    at gtkadjustment.c line 762
  • #13 gtk_scrolled_window_scroll_event
    at gtkscrolledwindow.c line 2335
  • #14 _gtk_marshal_BOOLEAN__BOXEDv
    at gtkmarshalers.c line 130
  • #15 _g_closure_invoke_va
    at gclosure.c line 840
  • #16 g_signal_emit_valist
    at gsignal.c line 3226
  • #17 g_signal_emit
    at gsignal.c line 3371
  • #18 gtk_widget_event_internal
    at gtkwidget.c line 6295
  • #19 gtk_widget_event
    at gtkwidget.c line 5952
  • #20 propagate_event_up
    at gtkmain.c line 2394
  • #21 propagate_event
    at gtkmain.c line 2494
  • #22 gtk_main_do_event
    at gtkmain.c line 1717
  • #23 gdk_event_source_dispatch
    at gdkeventsource.c line 358
  • #24 g_main_dispatch
    at gmain.c line 2784
  • #25 g_main_context_dispatch
    at gmain.c line 3288
  • #26 g_main_context_iterate
    at gmain.c line 3359
  • #27 g_main_context_iteration
    at gmain.c line 3420
  • #28 g_application_run
    at gapplication.c line 1620
  • #29 ffi_call_unix64
    at ../src/x86/unix64.S line 75
  • #30 ffi_call
    at ../src/x86/ffi64.c line 486
  • #31 gjs_invoke_c_function
    at gi/function.c line 902
  • #32 function_call
    at gi/function.c line 1213
  • #33 js::Invoke(JSContext*, js::CallArgs const&, unsigned int)
    from /opt/gnome/lib64/libmozjs185.so.1.0
  • #34 js::Interpret(JSContext*, JSStackFrame*, unsigned int, JSInterpMode)
    from /opt/gnome/lib64/libmozjs185.so.1.0
  • #35 js::RunScript(JSContext*, JSScript*, JSStackFrame*)
    from /opt/gnome/lib64/libmozjs185.so.1.0
  • #36 js::Execute(JSContext*, JSObject*, JSScript*, JSStackFrame*, unsigned int, js::Value*)
    from /opt/gnome/lib64/libmozjs185.so.1.0
  • #37 JS_EvaluateUCScriptForPrincipals
    from /opt/gnome/lib64/libmozjs185.so.1.0
  • #38 JS_EvaluateUCScript
    from /opt/gnome/lib64/libmozjs185.so.1.0
  • #39 gjs_context_eval
  • #40 main
    at gjs/console.c line 110

Comment 1 Giovanni Campagna 2012-11-18 17:54:33 UTC
Additionally, I'm seeing criticals related to GdSidebarThumbnails while in fullscreen.

JS backtrace:
== Stack trace for context 0x610cf0 ==
0 anonymous("model" = [object GObject_Object])@/opt/gnome/share/gnome-documents/js/preview.js:205
1 wrapper([object GObject_Object])@/opt/gnome/share/gjs-1.0/lang.js:204
2 anonymous([object GObject_Object])@/opt/gnome/share/gjs-1.0/lang.js:145
3 anonymous([object GObject_Object])@/opt/gnome/share/gjs-1.0/lang.js:239
4 anonymous("parentActor" = [object GObject_Object], "layout" = [object GObject_Object], "previewView" = [object Object])@/opt/gnome/share/gnome-documents/js/preview.js:247
5 wrapper([object Object], [object GObject_Object], [object GObject_Object])@/opt/gnome/share/gjs-1.0/lang.js:204
6 anonymous([object Object], [object GObject_Object], [object GObject_Object])@/opt/gnome/share/gjs-1.0/lang.js:145
7 anonymous([object Object], [object GObject_Object], [object GObject_Object])@/opt/gnome/share/gjs-1.0/lang.js:239
8 anonymous("fullscreen" = true, "controller" = [object Object])@/opt/gnome/share/gnome-documents/js/embed.js:460
9 wrapper([object Object], true)@/opt/gnome/share/gjs-1.0/lang.js:204
10 _emit("name" = ""fullscreen-changed"", true)@/opt/gnome/share/gjs-1.0/signals.js:124
11 anonymous("fullscreen" = true)@/opt/gnome/share/gnome-documents/js/windowMode.js:77
12 wrapper(true)@/opt/gnome/share/gjs-1.0/lang.js:204
13 anonymous()@/opt/gnome/share/gnome-documents/js/windowMode.js:81
14 wrapper()@/opt/gnome/share/gjs-1.0/lang.js:204
15 anonymous("event" = [object GObject_Union], "widget" = [object GObject_Object])@/opt/gnome/share/gnome-documents/js/preview.js:140
16 wrapper([object GObject_Object], [object GObject_Union])@/opt/gnome/share/gjs-1.0/lang.js:204
17 start()@/opt/gnome/share/gnome-documents/js/main.js:33
18 <TOP LEVEL>@<command line>:1

Full stack trace:

  • #0 g_logv
    at gmessages.c line 974
  • #1 g_log
    at gmessages.c line 1003
  • #2 g_return_if_fail_warning
  • #3 gtk_tree_model_foreach
    at gtktreemodel.c line 1948
  • #4 gd_sidebar_thumbnails_clear_model
    at lib/gd-sidebar-thumbnails.c line 789
  • #5 gd_sidebar_thumbnails_document_changed_cb
    at lib/gd-sidebar-thumbnails.c line 744
  • #6 object_set_property
    at gobject.c line 1357
  • #7 g_object_newv
    at gobject.c line 1746
  • #8 object_instance_init
    at gi/object.c line 1014
  • #9 init_func
    at gi/object.c line 1613
  • #10 js::Invoke(JSContext*, js::CallArgs const&, unsigned int)
    from /opt/gnome/lib64/libmozjs185.so.1.0
  • #11 js::ExternalInvoke(JSContext*, js::Value const&, js::Value const&, unsigned int, js::Value*, js::Value*)
    from /opt/gnome/lib64/libmozjs185.so.1.0
  • #12 JS_CallFunctionValue
    from /opt/gnome/lib64/libmozjs185.so.1.0
  • #13 gjs_call_function_value
    at gjs/jsapi-util.c line 925
  • #14 gjs_object_instance_constructor
    at gi/object.c line 1084
  • #15 js::InvokeConstructor(JSContext*, js::CallArgs const&)
    from /opt/gnome/lib64/libmozjs185.so.1.0
  • #16 js::Interpret(JSContext*, JSStackFrame*, unsigned int, JSInterpMode)
    from /opt/gnome/lib64/libmozjs185.so.1.0
  • #17 js::RunScript(JSContext*, JSScript*, JSStackFrame*)
    from /opt/gnome/lib64/libmozjs185.so.1.0
  • #18 js::Invoke(JSContext*, js::CallArgs const&, unsigned int)
    from /opt/gnome/lib64/libmozjs185.so.1.0
  • #19 js_fun_apply(JSContext*, unsigned int, js::Value*)
    from /opt/gnome/lib64/libmozjs185.so.1.0
  • #20 js::Interpret(JSContext*, JSStackFrame*, unsigned int, JSInterpMode)
    from /opt/gnome/lib64/libmozjs185.so.1.0
  • #21 js::RunScript(JSContext*, JSScript*, JSStackFrame*)
    from /opt/gnome/lib64/libmozjs185.so.1.0
  • #22 js::Invoke(JSContext*, js::CallArgs const&, unsigned int)
    from /opt/gnome/lib64/libmozjs185.so.1.0
  • #23 js_fun_apply(JSContext*, unsigned int, js::Value*)
    from /opt/gnome/lib64/libmozjs185.so.1.0
  • #24 js::Interpret(JSContext*, JSStackFrame*, unsigned int, JSInterpMode)
    from /opt/gnome/lib64/libmozjs185.so.1.0
  • #25 js::RunScript(JSContext*, JSScript*, JSStackFrame*)
    from /opt/gnome/lib64/libmozjs185.so.1.0
  • #26 js::Invoke(JSContext*, js::CallArgs const&, unsigned int)
    from /opt/gnome/lib64/libmozjs185.so.1.0
  • #27 js_fun_apply(JSContext*, unsigned int, js::Value*)
    from /opt/gnome/lib64/libmozjs185.so.1.0
  • #28 js::Interpret(JSContext*, JSStackFrame*, unsigned int, JSInterpMode)
    from /opt/gnome/lib64/libmozjs185.so.1.0
  • #29 js::RunScript(JSContext*, JSScript*, JSStackFrame*)
    from /opt/gnome/lib64/libmozjs185.so.1.0
  • #30 js::Invoke(JSContext*, js::CallArgs const&, unsigned int)
    from /opt/gnome/lib64/libmozjs185.so.1.0
  • #31 js_fun_apply(JSContext*, unsigned int, js::Value*)
    from /opt/gnome/lib64/libmozjs185.so.1.0
  • #32 js::Interpret(JSContext*, JSStackFrame*, unsigned int, JSInterpMode)
    from /opt/gnome/lib64/libmozjs185.so.1.0
  • #33 js::RunScript(JSContext*, JSScript*, JSStackFrame*)
    from /opt/gnome/lib64/libmozjs185.so.1.0
  • #34 js::Invoke(JSContext*, js::CallArgs const&, unsigned int)
    from /opt/gnome/lib64/libmozjs185.so.1.0
  • #35 js_fun_apply(JSContext*, unsigned int, js::Value*)
    from /opt/gnome/lib64/libmozjs185.so.1.0
  • #36 js::Interpret(JSContext*, JSStackFrame*, unsigned int, JSInterpMode)
    from /opt/gnome/lib64/libmozjs185.so.1.0
  • #37 js::RunScript(JSContext*, JSScript*, JSStackFrame*)
    from /opt/gnome/lib64/libmozjs185.so.1.0
  • #38 js::Invoke(JSContext*, js::CallArgs const&, unsigned int)
    from /opt/gnome/lib64/libmozjs185.so.1.0
  • #39 js_fun_apply(JSContext*, unsigned int, js::Value*)
    from /opt/gnome/lib64/libmozjs185.so.1.0
  • #40 js::Interpret(JSContext*, JSStackFrame*, unsigned int, JSInterpMode)
    from /opt/gnome/lib64/libmozjs185.so.1.0
  • #41 js::RunScript(JSContext*, JSScript*, JSStackFrame*)
    from /opt/gnome/lib64/libmozjs185.so.1.0
  • #42 js::Invoke(JSContext*, js::CallArgs const&, unsigned int)
    from /opt/gnome/lib64/libmozjs185.so.1.0
  • #43 js_fun_apply(JSContext*, unsigned int, js::Value*)
    from /opt/gnome/lib64/libmozjs185.so.1.0
  • #44 js::Interpret(JSContext*, JSStackFrame*, unsigned int, JSInterpMode)
    from /opt/gnome/lib64/libmozjs185.so.1.0
  • #45 js::RunScript(JSContext*, JSScript*, JSStackFrame*)
    from /opt/gnome/lib64/libmozjs185.so.1.0
  • #46 js::Invoke(JSContext*, js::CallArgs const&, unsigned int)
    from /opt/gnome/lib64/libmozjs185.so.1.0
  • #47 js::CallOrConstructBoundFunction(JSContext*, unsigned int, js::Value*)
    from /opt/gnome/lib64/libmozjs185.so.1.0
  • #48 js::Invoke(JSContext*, js::CallArgs const&, unsigned int)
    from /opt/gnome/lib64/libmozjs185.so.1.0
  • #49 js_fun_apply(JSContext*, unsigned int, js::Value*)
    from /opt/gnome/lib64/libmozjs185.so.1.0
  • #50 js::Interpret(JSContext*, JSStackFrame*, unsigned int, JSInterpMode)
    from /opt/gnome/lib64/libmozjs185.so.1.0
  • #51 js::RunScript(JSContext*, JSScript*, JSStackFrame*)
    from /opt/gnome/lib64/libmozjs185.so.1.0
  • #52 js::Invoke(JSContext*, js::CallArgs const&, unsigned int)
    from /opt/gnome/lib64/libmozjs185.so.1.0
  • #53 js_fun_apply(JSContext*, unsigned int, js::Value*)
    from /opt/gnome/lib64/libmozjs185.so.1.0
  • #54 js::Interpret(JSContext*, JSStackFrame*, unsigned int, JSInterpMode)
    from /opt/gnome/lib64/libmozjs185.so.1.0
  • #55 js::RunScript(JSContext*, JSScript*, JSStackFrame*)
    from /opt/gnome/lib64/libmozjs185.so.1.0
  • #56 js::Invoke(JSContext*, js::CallArgs const&, unsigned int)
    from /opt/gnome/lib64/libmozjs185.so.1.0
  • #57 js_fun_apply(JSContext*, unsigned int, js::Value*)
    from /opt/gnome/lib64/libmozjs185.so.1.0
  • #58 js::Interpret(JSContext*, JSStackFrame*, unsigned int, JSInterpMode)
    from /opt/gnome/lib64/libmozjs185.so.1.0
  • #59 js::RunScript(JSContext*, JSScript*, JSStackFrame*)
    from /opt/gnome/lib64/libmozjs185.so.1.0
  • #60 js::Invoke(JSContext*, js::CallArgs const&, unsigned int)
    from /opt/gnome/lib64/libmozjs185.so.1.0
  • #61 js_fun_apply(JSContext*, unsigned int, js::Value*)
    from /opt/gnome/lib64/libmozjs185.so.1.0
  • #62 js::Interpret(JSContext*, JSStackFrame*, unsigned int, JSInterpMode)
    from /opt/gnome/lib64/libmozjs185.so.1.0
  • #63 js::RunScript(JSContext*, JSScript*, JSStackFrame*)
    from /opt/gnome/lib64/libmozjs185.so.1.0
  • #64 js::Invoke(JSContext*, js::CallArgs const&, unsigned int)
    from /opt/gnome/lib64/libmozjs185.so.1.0
  • #65 js::CallOrConstructBoundFunction(JSContext*, unsigned int, js::Value*)
    from /opt/gnome/lib64/libmozjs185.so.1.0
  • #66 js::Invoke(JSContext*, js::CallArgs const&, unsigned int)
    from /opt/gnome/lib64/libmozjs185.so.1.0
  • #67 js::ExternalInvoke(JSContext*, js::Value const&, js::Value const&, unsigned int, js::Value*, js::Value*)
    from /opt/gnome/lib64/libmozjs185.so.1.0
  • #68 JS_CallFunctionValue
    from /opt/gnome/lib64/libmozjs185.so.1.0
  • #69 gjs_call_function_value
    at gjs/jsapi-util.c line 925
  • #70 gjs_closure_invoke
    at gi/closure.c line 282
  • #71 closure_marshal
    at gi/value.c line 127
  • #72 g_closure_invoke
    at gclosure.c line 777
  • #73 signal_emit_unlocked_R
    at gsignal.c line 3567
  • #74 g_signal_emit_valist
    at gsignal.c line 3325
  • #75 g_signal_emit
    at gsignal.c line 3371
  • #76 gtk_widget_event_internal
    at gtkwidget.c line 6295
  • #77 gtk_widget_event
    at gtkwidget.c line 5952
  • #78 propagate_event_up
    at gtkmain.c line 2394
  • #79 propagate_event
    at gtkmain.c line 2494
  • #80 gtk_main_do_event
    at gtkmain.c line 1717
  • #81 gdk_event_source_dispatch
    at gdkeventsource.c line 358
  • #82 g_main_dispatch
    at gmain.c line 2784
  • #83 g_main_context_dispatch
    at gmain.c line 3288
  • #84 g_main_context_iterate
    at gmain.c line 3359
  • #85 g_main_context_iteration
    at gmain.c line 3420
  • #86 g_application_run
    at gapplication.c line 1620
  • #87 ffi_call_unix64
    at ../src/x86/unix64.S line 75
  • #88 ffi_call
    at ../src/x86/ffi64.c line 486
  • #89 gjs_invoke_c_function
    at gi/function.c line 902
  • #90 function_call
    at gi/function.c line 1213
  • #91 js::Invoke(JSContext*, js::CallArgs const&, unsigned int)
    from /opt/gnome/lib64/libmozjs185.so.1.0
  • #92 js::Interpret(JSContext*, JSStackFrame*, unsigned int, JSInterpMode)
    from /opt/gnome/lib64/libmozjs185.so.1.0
  • #93 js::RunScript(JSContext*, JSScript*, JSStackFrame*)
    from /opt/gnome/lib64/libmozjs185.so.1.0
  • #94 js::Execute(JSContext*, JSObject*, JSScript*, JSStackFrame*, unsigned int, js::Value*)
    from /opt/gnome/lib64/libmozjs185.so.1.0
  • #95 JS_EvaluateUCScriptForPrincipals
    from /opt/gnome/lib64/libmozjs185.so.1.0
  • #96 JS_EvaluateUCScript
    from /opt/gnome/lib64/libmozjs185.so.1.0
  • #97 gjs_context_eval
  • #98 main
    at gjs/console.c line 110

Comment 2 Giovanni Campagna 2012-11-18 18:06:23 UTC
Working around bug 688596 fixed the criticals, and hopefully the crash too.
Comment 3 Giovanni Campagna 2012-11-18 18:09:15 UTC
No, the crash is still there. Might be caused by a signal which is not disconnected.
Comment 4 Cosimo Cecchi 2012-11-19 23:02:51 UTC
How do I reproduce it exactly? I don't see it here.
Comment 5 Giovanni Campagna 2012-11-19 23:31:11 UTC
(In reply to comment #4)
> How do I reproduce it exactly? I don't see it here.

I'm not sure, actually. I just went back and forth from fullscreen a few times, scrolled the document, and bam, app is gone.
I have a local patch that fixes the lifetime of signals, but it still has dangerous criticals if you go back from fullscreen.
Comment 6 Giovanni Campagna 2013-01-03 02:24:36 UTC
Bah, let's assume it is fixed in master, and restart debugging if it happens again.