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 764168 - pasting text into composer often crashes Geary
pasting text into composer often crashes Geary
Status: RESOLVED NOTGNOME
Product: geary
Classification: Other
Component: composer
master
Other Linux
: Normal normal
: ---
Assigned To: Geary Maintainers
Geary Maintainers
Depends on:
Blocks:
 
 
Reported: 2016-03-24 19:02 UTC by Adam Dingle
Modified: 2016-04-02 02:26 UTC
See Also:
GNOME target: ---
GNOME version: ---



Description Adam Dingle 2016-03-24 19:02:12 UTC
Pasting text into a Geary composer window often crashes Geary for me.  I don't have a set of steps that reproduce this every time, but I find that pasting text copied from Epiphany often does the trick.

I'm not sure if this problem is new with WebKit 2.4.10, which I'm running.

A stack trace is below.

  • #0 WTF::StringImpl::startsWith(char const*, unsigned int, bool) const
    at ../Source/WTF/wtf/text/StringImpl.cpp line 1363
  • #1 WebCore::AXObjectCache::handleAttributeChanged(WebCore::QualifiedName const&, WebCore::Element*)
    at ../Source/WTF/wtf/text/StringImpl.h line 730
  • #2 WebCore::AXObjectCache::handleAttributeChanged(WebCore::QualifiedName const&, WebCore::Element*)
    at ../Source/WTF/wtf/text/WTFString.h line 281
  • #3 WebCore::AXObjectCache::handleAttributeChanged(WebCore::QualifiedName const&, WebCore::Element*)
    at ../Source/WebCore/accessibility/AXObjectCache.cpp line 880
  • #4 WebCore::Element::attributeChanged(WebCore::QualifiedName const&, WTF::AtomicString const&, WTF::AtomicString const&, WebCore::Element::AttributeModificationReason)
    at ../Source/WebCore/dom/Element.cpp line 1137
  • #5 WebCore::Element::didModifyAttribute(WebCore::QualifiedName const&, WTF::AtomicString const&, WTF::AtomicString const&)
    at ../Source/WebCore/dom/Element.cpp line 2851
  • #6 WebCore::Element::setAttributeInternal(unsigned int, WebCore::QualifiedName const&, WTF::AtomicString const&, WebCore::Element::SynchronizationOfLazyAttribute)
    at ../Source/WebCore/dom/Element.cpp line 1075
  • #7 WebCore::CompositeEditCommand::applyCommandToComposite(WTF::PassRefPtr<WebCore::EditCommand>)
    at ../Source/WebCore/editing/CompositeEditCommand.cpp line 278
  • #8 WebCore::CompositeEditCommand::setNodeAttribute(WTF::PassRefPtr<WebCore::Element>, WebCore::QualifiedName const&, WTF::AtomicString const&)
    at ../Source/WebCore/editing/CompositeEditCommand.cpp line 664
  • #9 WebCore::ReplaceSelectionCommand::removeRedundantStylesAndKeepStyleSpanInline(WebCore::ReplaceSelectionCommand::InsertedNodes&)
    at ../Source/WebCore/editing/ReplaceSelectionCommand.cpp line 525
  • #10 WebCore::ReplaceSelectionCommand::doApply()
    at ../Source/WebCore/editing/ReplaceSelectionCommand.cpp line 1151
  • #11 WebCore::CompositeEditCommand::apply()
    at ../Source/WebCore/editing/CompositeEditCommand.cpp line 227
  • #12 WebCore::Editor::replaceSelectionWithFragment(WTF::PassRefPtr<WebCore::DocumentFragment>, bool, bool, bool)
    at ../Source/WebCore/editing/Editor.cpp line 611
  • #13 WebCore::Editor::handleTextEvent(WebCore::TextEvent*)
    at ../Source/WebCore/editing/Editor.cpp line 268
  • #14 WebCore::EventHandler::defaultTextInputEventHandler(WebCore::TextEvent*)
    at ../Source/WebCore/page/EventHandler.cpp line 3382
  • #15 WebCore::Node::defaultEventHandler(WebCore::Event*)
    at ../Source/WebCore/dom/Node.cpp line 2118
  • #16 WebCore::EventDispatcher::dispatchEvent(WebCore::Node*, WTF::PassRefPtr<WebCore::Event >)
    at ../Source/WebCore/dom/EventDispatcher.cpp line 239
  • #17 WebCore::EventDispatcher::dispatchEvent(WebCore::Node*, WTF::PassRefPtr<WebCore::Event>)
    at ../Source/WebCore/dom/EventDispatcher.cpp line 346
  • #18 WebCore::Node::dispatchEvent(WTF::PassRefPtr<WebCore::Event>)
    at ../Source/WebCore/dom/Node.cpp line 2037
  • #19 WebCore::EventTarget::dispatchEvent(WTF::PassRefPtr<WebCore::Event>, int&)
    at ../Source/WebCore/dom/EventTarget.cpp line 152
  • #20 WebCore::Editor::pasteAsFragment(WTF::PassRefPtr<WebCore::DocumentFragment>, bool, bool)
    at ../Source/WebCore/editing/Editor.cpp line 535
  • #21 WebCore::Editor::pasteWithPasteboard(WebCore::Pasteboard*, bool)
    at ../Source/WebCore/editing/Editor.cpp line 576
  • #22 WebCore::Editor::paste(WebCore::Pasteboard&)
    at ../Source/WebCore/editing/Editor.cpp line 1346
  • #23 WebCore::Editor::paste()
    at ../Source/WebCore/editing/Editor.cpp line 1333
  • #24 WebCore::executePaste(WebCore::Frame&, WebCore::Event*, WebCore::EditorCommandSource, WTF::String const&)
    at ../Source/WebCore/editing/EditorCommand.cpp line 926
  • #25 WebKit::EditorClient::executePendingEditorCommands(WebCore::Frame*, bool)
    at ../Source/WebKit/gtk/WebCoreSupport/EditorClientGtk.cpp line 401
  • #26 WebKit::EditorClient::handleKeyboardEvent(WebCore::KeyboardEvent*)
    at ../Source/WebKit/gtk/WebCoreSupport/EditorClientGtk.cpp line 446
  • #27 WebCore::EventHandler::defaultKeyboardEventHandler(WebCore::KeyboardEvent*)
    at ../Source/WebCore/page/EventHandler.cpp line 3074
  • #28 WebCore::Node::defaultEventHandler(WebCore::Event*)
    at ../Source/WebCore/dom/Node.cpp line 2104
  • #29 WebCore::EventDispatcher::dispatchEvent(WebCore::Node*, WTF::PassRefPtr<WebCore::Event>)
    at ../Source/WebCore/dom/EventDispatcher.cpp line 239
  • #30 WebCore::EventDispatcher::dispatchEvent(WebCore::Node*, WTF::PassRefPtr<WebCore::Event>)
    at ../Source/WebCore/dom/EventDispatcher.cpp line 346
  • #31 WebCore::Node::dispatchEvent(WTF::PassRefPtr<WebCore::Event>)
    at ../Source/WebCore/dom/Node.cpp line 2037
  • #32 WebCore::EventTarget::dispatchEvent(WTF::PassRefPtr<WebCore::Event>, int&)
    at ../Source/WebCore/dom/EventTarget.cpp line 152
  • #33 WebCore::EventHandler::keyEvent(WebCore::PlatformKeyboardEvent const&)
    at ../Source/WebCore/page/EventHandler.cpp line 2970
  • #34 WebKit::WebViewInputMethodFilter::sendSimpleKeyEvent(_GdkEventKey*, WTF::String, WebCore::GtkInputMethodFilter::EventFakedForComposition)
    at ../Source/WebKit/gtk/WebCoreSupport/WebViewInputMethodFilter.cpp line 60
  • #35 WebCore::GtkInputMethodFilter::filterKeyEvent(_GdkEventKey*)
    at ../Source/WebCore/platform/gtk/GtkInputMethodFilter.cpp line 202
  • #36 webkit_web_view_key_press_event(GtkWidget*, GdkEventKey*)
    at ../Source/WebKit/gtk/webkit/webkitwebview.cpp line 737
  • #41 <emit signal ??? on instance 0x1cd69e0 [StylishWebView]>
    at /build/glib2.0-SNH0tt/glib2.0-2.47.6/./gobject/gsignal.c line 3441
  • #42 gtk_widget_event_internal
    at /build/gtk+3.0-a73mKw/gtk+3.0-3.18.9/./gtk/gtkwidget.c line 7692
  • #43 gtk_window_propagate_key_event
    at /build/gtk+3.0-a73mKw/gtk+3.0-3.18.9/./gtk/gtkwindow.c line 7778
  • #48 <emit signal ??? on instance 0xc223c0 [MainWindow]>
    at /build/glib2.0-SNH0tt/glib2.0-2.47.6/./gobject/gsignal.c line 3441
  • #49 gtk_widget_event_internal
    at /build/gtk+3.0-a73mKw/gtk+3.0-3.18.9/./gtk/gtkwidget.c line 7692
  • #50 propagate_event
    at /build/gtk+3.0-a73mKw/gtk+3.0-3.18.9/./gtk/gtkmain.c line 2620
  • #51 gtk_main_do_event
    at /build/gtk+3.0-a73mKw/gtk+3.0-3.18.9/./gtk/gtkmain.c line 1850
  • #52 gdk_event_source_dispatch
    at /build/gtk+3.0-a73mKw/gtk+3.0-3.18.9/./gdk/x11/gdkeventsource.c line 369
  • #53 g_main_context_dispatch
    at /build/glib2.0-SNH0tt/glib2.0-2.47.6/./glib/gmain.c line 3154
  • #54 g_main_context_dispatch
    at /build/glib2.0-SNH0tt/glib2.0-2.47.6/./glib/gmain.c line 3769
  • #55 g_main_context_iterate
    at /build/glib2.0-SNH0tt/glib2.0-2.47.6/./glib/gmain.c line 3840
  • #56 g_main_context_iteration
    at /build/glib2.0-SNH0tt/glib2.0-2.47.6/./glib/gmain.c line 3901
  • #57 g_application_run
    at /build/glib2.0-SNH0tt/glib2.0-2.47.6/./gio/gapplication.c line 2363
  • #58 _vala_main
    at /home/adam/src/geary/src/client/application/main.vala line 25
  • #59 __libc_start_main
    at ../csu/libc-start.c line 291
  • #60 _start

Comment 1 Michael Catanzaro 2016-04-02 02:26:28 UTC
(In reply to Adam Dingle from comment #0)
> Pasting text into a Geary composer window often crashes Geary for me.  I
> don't have a set of steps that reproduce this every time, but I find that
> pasting text copied from Epiphany often does the trick.
> 
> I'm not sure if this problem is new with WebKit 2.4.10, which I'm running.

Yes, it's a regression in 2.4.10.