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 672723 - Crash clicking back from a Google Doc preview
Crash clicking back from a Google Doc preview
Status: RESOLVED FIXED
Product: gnome-documents
Classification: Core
Component: general
0.3.x
Other Linux
: Normal critical
: ---
Assigned To: GNOME documents maintainer(s)
GNOME documents maintainer(s)
Depends on:
Blocks:
 
 
Reported: 2012-03-23 21:23 UTC by Cosimo Cecchi
Modified: 2012-03-24 13:42 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
embed: invalidate the cancellable reference once we load the doc (960 bytes, patch)
2012-03-23 21:25 UTC, Cosimo Cecchi
committed Details | Review

Description Cosimo Cecchi 2012-03-23 21:23:59 UTC
When clicking back from a Google document preview, sometimes the application crashes.

Forwarded from https://bugzilla.redhat.com/show_bug.cgi?id=804192

Thread 1 (Thread 0x7f65d4997800 (LWP 7950))

  • #0 g_cancellable_cancel
    at gcancellable.c line 484
  • #1 _g_closure_invoke_va
    at gclosure.c line 840
  • #2 g_signal_emit_valist
    at gsignal.c line 3207
  • #3 g_signal_emit
    at gsignal.c line 3352
  • #4 g_cancellable_cancel
    at gcancellable.c line 507
  • #5 ffi_call_unix64
    at ../src/x86/unix64.S line 75
  • #6 ffi_call
    at ../src/x86/ffi64.c line 486
  • #7 gjs_invoke_c_function
    at gi/function.c line 930
  • #8 function_call
    at gi/function.c line 1245
  • #9 CallJSNative
    at jscntxtinlines.h line 701
  • #10 js::Invoke
    at jsinterp.cpp line 696
  • #11 js::Interpret
    at jsinterp.cpp line 4810
  • #12 js::RunScript
    at jsinterp.cpp line 653
  • #13 js::Invoke
    at jsinterp.cpp line 740
  • #14 js::CallOrConstructBoundFunction
    at jsfun.cpp line 2319
  • #15 CallJSNative
    at jscntxtinlines.h line 701
  • #16 js::Invoke
    at jsinterp.cpp line 703
  • #17 js_fun_apply
    at jsfun.cpp line 2205
  • #18 CallJSNative
    at jscntxtinlines.h line 701
  • #19 js::Interpret
    at jsinterp.cpp line 4799
  • #20 js::RunScript
    at jsinterp.cpp line 653
  • #21 js::Invoke
    at jsinterp.cpp line 740
  • #22 js::CallOrConstructBoundFunction
    at jsfun.cpp line 2319
  • #23 CallJSNative
    at jscntxtinlines.h line 701
  • #24 js::Invoke
    at jsinterp.cpp line 703
  • #25 js::ExternalInvoke
    at jsinterp.cpp line 863
  • #26 JS_CallFunctionValue
    at jsapi.cpp line 5145
  • #27 gjs_call_function_value
    at gjs/jsapi-util.c line 1183
  • #28 gjs_closure_invoke
    at gi/closure.c line 267
  • #29 closure_marshal
    at gi/value.c line 125
  • #30 g_closure_invoke
    at gclosure.c line 777
  • #31 signal_emit_unlocked_R
    at gsignal.c line 3547
  • #32 g_signal_emit_valist
    at gsignal.c line 3296
  • #33 g_signal_emit
    at gsignal.c line 3352
  • #34 _g_closure_invoke_va
    at gclosure.c line 840
  • #35 g_signal_emit_valist
    at gsignal.c line 3207
  • #36 g_signal_emit
    at gsignal.c line 3352
  • #37 gtk_real_button_released
    at gtkbutton.c line 2007
  • #38 g_closure_invoke
    at gclosure.c line 777
  • #39 signal_emit_unlocked_R
    at gsignal.c line 3477
  • #40 g_signal_emit_valist
    at gsignal.c line 3296
  • #41 g_signal_emit
    at gsignal.c line 3352
  • #42 gtk_button_button_release
    at gtkbutton.c line 1842
  • #43 gtk_button_button_release
    at gtkbutton.c line 1834
  • #44 _gtk_marshal_BOOLEAN__BOXEDv
    at gtkmarshalers.c line 130
  • #45 _g_closure_invoke_va
    at gclosure.c line 840
  • #46 g_signal_emit_valist
    at gsignal.c line 3207
  • #47 g_signal_emit
    at gsignal.c line 3352
  • #48 gtk_widget_event_internal
    at gtkwidget.c line 6380
  • #49 gtk_widget_event
    at gtkwidget.c line 6037
  • #50 propagate_event_up
    at gtkmain.c line 2390
  • #51 propagate_event
    at gtkmain.c line 2490
  • #52 gtk_main_do_event
    at gtkmain.c line 1713
  • #53 gdk_event_source_dispatch
    at gdkeventsource.c line 358
  • #54 g_main_dispatch
    at gmain.c line 2515
  • #55 g_main_context_dispatch
    at gmain.c line 3052
  • #56 g_main_context_iterate
    at gmain.c line 3123
  • #57 g_main_context_iteration
    at gmain.c line 3184
  • #58 g_application_run
    at gapplication.c line 1496
  • #59 ffi_call_unix64
    at ../src/x86/unix64.S line 75
  • #60 ffi_call
    at ../src/x86/ffi64.c line 486
  • #61 gjs_invoke_c_function
    at gi/function.c line 930
  • #62 function_call
    at gi/function.c line 1245
  • #63 CallJSNative
    at jscntxtinlines.h line 701
  • #64 js::Invoke
    at jsinterp.cpp line 696
  • #65 js::Interpret
    at jsinterp.cpp line 4810
  • #66 js::RunScript
    at jsinterp.cpp line 653
  • #67 js::Execute
    at jsinterp.cpp line 1028
  • #68 EvaluateUCScriptForPrincipalsCommon
    at jsapi.cpp line 5031
  • #69 JS_EvaluateUCScriptForPrincipals
    at jsapi.cpp line 5058
  • #70 JS_EvaluateUCScript
    at jsapi.cpp line 5066
  • #71 gjs_context_eval
  • #72 main
    at gjs/console.c line 111

Comment 1 Cosimo Cecchi 2012-03-23 21:25:45 UTC
Created attachment 210488 [details] [review]
embed: invalidate the cancellable reference once we load the doc

When the loading process is finished, we have to invalidate our
reference to the cancellable object, otherwise we end up trying to
cancel it later when we switch back to the overview, and at that point
the object might be invalid already.
Comment 2 Cosimo Cecchi 2012-03-24 13:41:59 UTC
Attachment 210488 [details] pushed as 9246b3d - embed: invalidate the cancellable reference once we load the doc