RESOLVED FIXED 60692
[SVG] Assertion failure by dragging text between input fields inside <foreignObject>s
https://bugs.webkit.org/show_bug.cgi?id=60692
Summary [SVG] Assertion failure by dragging text between input fields inside <foreign...
Hajime Morrita
Reported 2011-05-11 22:36:38 PDT
Created attachment 93251 [details] A repro. 1. Select text on one <input> textfield 2. Drag it to another text field. 3. An assertion will fail. --- Error message: 0x000000010217d350 in WebCore::RenderSVGRoot::mapLocalToContainer (this=0x106af2a28, repaintContainer=0x0, fixed=false, useTransforms=false, transformState=@0x7fff5fbfe700) at RenderSVGRoot.cpp:300 300 ASSERT(useTransforms); // mapping a point through SVG w/o respecting trasnforms is useless. --- Stacktrace: (gdb) bt 10 #0 0x000000010217d350 in WebCore::RenderSVGRoot::mapLocalToContainer (this=0x106af2a28, repaintContainer=0x0, fixed=false, useTransforms=false, transformState=@0x7fff5fbfe700) at RenderSVGRoot.cpp:300 #1 0x0000000102143ce9 in WebCore::RenderObject::localToAbsolute (this=0x106af2a28, localPoint=@0x7fff5fbfe7a0, fixed=false, useTransforms=false) at /Users/morrita/work/webkit/apricot/Source/WebCore/rendering/RenderObject.cpp:1803 #2 0x00000001019e7811 in WebCore::selectionExtentRespectingEditingBoundary (selection=@0x108005d28, localPoint=@0x7fff5fbfe8f0, targetNode=0x106ad2170) at /Users/morrita/work/webkit/apricot/Source/WebCore/page/EventHandler.cpp:643 #3 0x00000001019ea918 in WebCore::EventHandler::updateSelectionForMouseDrag (this=0x108005df0, hitTestResult=@0x7fff5fbfea40) at /Users/morrita/work/webkit/apricot/Source/WebCore/page/EventHandler.cpp:663 #4 0x00000001019eaeab in WebCore::EventHandler::handleMouseDraggedEvent (this=0x108005df0, event=@0x7fff5fbfea10) at /Users/morrita/work/webkit/apricot/Source/WebCore/page/EventHandler.cpp:574 #5 0x00000001019ed91f in WebCore::EventHandler::handleMouseMoveEvent (this=0x108005df0, mouseEvent=@0x7fff5fbfeb60, hoveredNode=0x0) at /Users/morrita/work/webkit/apricot/Source/WebCore/page/EventHandler.cpp:1660 #6 0x00000001019f2e04 in WebCore::EventHandler::mouseDragged (this=0x108005df0, event=0x11646f230) at /Users/morrita/work/webkit/apricot/Source/WebCore/page/mac/EventHandlerMac.mm:500 #7 0x00000001010c87e4 in -[WebHTMLView mouseDragged:] (self=0x10963c440, _cmd=0x7fff80d08d70, event=0x11646f230) at /Users/morrita/work/webkit/apricot/Source/WebKit/mac/WebView/WebHTMLView.mm:3533 #8 0x00007fff8070406f in -[NSWindow sendEvent:] ()
Attachments
A repro. (535 bytes, image/svg+xml)
2011-05-11 22:36 PDT, Hajime Morrita
no flags
Patch (6.52 KB, patch)
2011-05-24 01:52 PDT, Leo Yang
rniwa: review+
Leo Yang
Comment 1 2011-05-24 01:52:49 PDT
Nikolas Zimmermann
Comment 2 2011-05-24 02:57:46 PDT
Looks good to me, but should get a final okay from an editing expert, Ryosuke?
Ryosuke Niwa
Comment 3 2011-05-24 09:41:40 PDT
Comment on attachment 94584 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=94584&action=review > LayoutTests/editing/pasteboard/drag-drop-input-in-svg.svg:14 > +(function runTest() > +{ Is it really necessary to have a function? I would have done: if (window.layoutTestController) { ... }
Ryosuke Niwa
Comment 4 2011-05-24 09:42:36 PDT
+justin because he added removeInterchangeNodes.
Leo Yang
Comment 5 2011-05-24 18:27:23 PDT
Ademar Reis
Comment 6 2011-05-25 11:36:47 PDT
Revision r87248 cherry-picked into qtwebkit-2.2 with commit 46706ea <http://gitorious.org/webkit/qtwebkit/commit/46706ea>
Note You need to log in before you can comment on or make changes to this bug.