[Webkit-unassigned] [Bug 65183] New: Assertion in VisiblePosition::previous

bugzilla-daemon at webkit.org bugzilla-daemon at webkit.org
Tue Jul 26 07:38:10 PDT 2011


https://bugs.webkit.org/show_bug.cgi?id=65183

           Summary: Assertion in VisiblePosition::previous
           Product: WebKit
           Version: 528+ (Nightly build)
          Platform: Unspecified
        OS/Version: Unspecified
            Status: NEW
          Severity: Normal
          Priority: P2
         Component: HTML Editing
        AssignedTo: webkit-unassigned at lists.webkit.org
        ReportedBy: mrobinson at webkit.org
                CC: xan.lopez at gmail.com, rniwa at webkit.org


This was observed on the GTK+ bots with editing/undo/replace-text-in-node-preserving-markers-crash.html:

Program terminated with signal 11, Segmentation fault.
#0  0x00002ad73f36536c in WebCore::VisiblePosition::previous (this=0x7fff08dd34c0, rule=WebCore::CanCrossEditingBoundary) at ../../Source/WebCore/editing/VisiblePosition.cpp:96
96            ASSERT(inSameLine(temp, prev));

#1  0x00002ad73fece0b1 in objectAndOffsetUnignored (coreObject=0x7b93310, offset=@0x7fff08dd35dc, ignoreLinks=true) at ../../Source/WebCore/accessibility/gtk/AccessibilityObjectWrapperAtk.cpp:2747
#2  0x00002ad73fed1259 in WebCore::FrameSelection::notifyAccessibilityForSelectionChange (this=0x11b8658) at ../../Source/WebCore/editing/gtk/FrameSelectionGtk.cpp:96
#3  0x00002ad73f320842 in WebCore::FrameSelection::setSelection (this=0x11b8658, newSelection=..., options=0, align=WebCore::FrameSelection::AlignCursorOnScrollIfNeeded, granularity=WebCore::CharacterGranularity) at ../../Source/WebCore/editing/FrameSelection.cpp:228
#4  0x00002ad73f3214c3 in WebCore::FrameSelection::textWillBeReplaced (this=0x11b8658, node=0x7e82500, offset=4, oldLength=0, newLength=1) at ../../Source/WebCore/editing/FrameSelection.cpp:363
#5  0x00002ad73f1e8f18 in WebCore::CharacterData::setDataAndUpdate (this=0x7e82500, newData=..., offsetOfReplacedData=4, oldLength=0, newLength=1) at ../../Source/WebCore/dom/CharacterData.cpp:176
#6  0x00002ad73f1e8ab4 in WebCore::CharacterData::insertData (this=0x7e82500, offset=4, data=UnicodeEncodeError: 'ascii' codec can't encode character u'\xa0' in position 0: ordinal not in range(128)
, ec=@0x7fff08dd3a0c) at ../../Source/WebCore/dom/CharacterData.cpp:110
#7  0x00002ad73f330a81 in WebCore::InsertIntoTextNodeCommand::doApply (this=0x7ba8350) at ../../Source/WebCore/editing/InsertIntoTextNodeCommand.cpp:52
#8  0x00002ad73f2fd3f9 in WebCore::EditCommand::apply (this=0x7ba8350) at ../../Source/WebCore/editing/EditCommand.cpp:92
#9  0x00002ad73f2e74c7 in WebCore::CompositeEditCommand::applyCommandToComposite (this=0x7ca4f30, cmd=...) at ../../Source/WebCore/editing/CompositeEditCommand.cpp:102
#10 0x00002ad73f2e8eb5 in WebCore::CompositeEditCommand::replaceTextInNode (this=0x7ca4f30, node=..., offset=4, count=1, replacementText=UnicodeEncodeError: 'ascii' codec can't encode character u'\xa0' in position 0: ordinal not in range(128)
) at ../../Source/WebCore/editing/CompositeEditCommand.cpp:324
#11 0x00002ad73f2e9334 in WebCore::CompositeEditCommand::replaceTextInNodePreservingMarkers (this=0x7ca4f30, prpNode=..., offset=4, count=1, replacementText=UnicodeEncodeError: 'ascii' codec can't encode character u'\xa0' in position 0: ordinal not in range(128)
) at ../../Source/WebCore/editing/CompositeEditCommand.cpp:354
#12 0x00002ad73f2fa734 in WebCore::DeleteSelectionCommand::fixupWhitespace (this=0x7ca4f30) at ../../Source/WebCore/editing/DeleteSelectionCommand.cpp:563
#13 0x00002ad73f2fc3f3 in WebCore::DeleteSelectionCommand::doApply (this=0x7ca4f30) at ../../Source/WebCore/editing/DeleteSelectionCommand.cpp:832
#14 0x00002ad73f2fd3f9 in WebCore::EditCommand::apply (this=0x7ca4f30) at ../../Source/WebCore/editing/EditCommand.cpp:92
#15 0x00002ad73f2e74c7 in WebCore::CompositeEditCommand::applyCommandToComposite (this=0x7dc89c0, cmd=...) at ../../Source/WebCore/editing/CompositeEditCommand.cpp:102
#16 0x00002ad73f2e992c in WebCore::CompositeEditCommand::deleteSelection (this=0x7dc89c0, selection=..., smartDelete=false, mergeBlocksAfterDelete=true, replace=false, expandForSpecialElements=true) at ../../Source/WebCore/editing/CompositeEditCommand.cpp:409
#17 0x00002ad73f363a86 in WebCore::TypingCommand::deleteKeyPressed (this=0x7dc89c0, granularity=WebCore::CharacterGranularity, killRing=false) at ../../Source/WebCore/editing/TypingCommand.cpp:548
#18 0x00002ad73f3615f1 in WebCore::TypingCommand::deleteKeyPressed (document=0x7a90ad0, options=0, granularity=WebCore::CharacterGranularity) at ../../Source/WebCore/editing/TypingCommand.cpp:113
#19 0x00002ad73f307695 in WebCore::executeDelete (frame=0x11b8000, source=WebCore::CommandFromDOM) at ../../Source/WebCore/editing/EditorCommand.cpp:321
#20 0x00002ad73f30b6de in WebCore::Editor::Command::execute (this=0x7fff08dd4510, parameter="(null)", triggeringEvent=0x0) at ../../Source/WebCore/editing/EditorCommand.cpp:1648
#21 0x00002ad73f213f2f in WebCore::Document::execCommand (this=0x7a90ad0, commandName="Delete", userInterface=false, value="(null)") at ../../Source/WebCore/dom/Document.cpp:3930
#22 0x00002ad73fbd15a0 in WebCore::jsDocumentPrototypeFunctionExecCommand (exec=0x2ad794004198) at DerivedSources/WebCore/JSDocument.cpp:2424
#23 0x00002ad7540011e8 in ?? ()
#24 0x00007fff08dd46c0 in ?? ()
#25 0x00002ad754032cda in ?? ()
#26 0x00007fff08dd4650 in ?? ()
#27 0x00002ad797ff6768 in ?? ()
#28 0x0000000007e076c0 in ?? ()
#29 0x00002ad700000001 in ?? ()
#30 0x00002ad797ff6bc8 in ?? ()
#31 0x00007fff08dd4670 in ?? ()
#32 0x00007fff08dd4680 in ?? ()
#33 0x0000000000438baf in JSC::JSValue::decode (ptr=0x2ad7440b7c10) at ../../Source/JavaScriptCore/runtime/JSValueInlineMethods.h:369
#34 0x00002ad73e157c67 in JSC::JITCode::execute (this=0x2ad7ad2a92f8, registerFile=0x2ad75000d918, callFrame=0x2ad794004038, globalData=0x2ad750009b20) at ../../Source/JavaScriptCore/jit/JITCode.h:80
#35 0x00002ad73e153d00 in JSC::Interpreter::execute (this=0x2ad75000d900, program=0x2ad7ad2a92e0, callFrame=0x2ad7ad282668, scopeChain=0x2ad797ff6bc8, thisObj=0x2ad79460bfa0) at ../../Source/JavaScriptCore/interpreter/Interpreter.cpp:875
#36 0x00002ad73e1f497b in JSC::evaluate (exec=0x2ad7ad282668, scopeChain=0x2ad797ff6bc8, source=..., thisValue=...) at ../../Source/JavaScriptCore/runtime/Completion.cpp:66
#37 0x00002ad73f047a7d in WebCore::JSMainThreadExecState::evaluate (exec=0x2ad7ad282668, chain=0x2ad797ff6bc8, source=..., thisValue=...) at ../../Source/WebCore/bindings/js/JSMainThreadExecState.h:57
#38 0x00002ad73f07a006 in WebCore::ScriptController::evaluateInWorld (this=0x11b84d8, sourceCode=..., world=0x2ad75000edd0) at ../../Source/WebCore/bindings/js/ScriptController.cpp:141
#39 0x00002ad73f07a1c6 in WebCore::ScriptController::evaluate (this=0x11b84d8, sourceCode=...) at ../../Source/WebCore/bindings/js/ScriptController.cpp:164
#40 0x00002ad73f2aefc6 in WebCore::ScriptElement::executeScript (this=0x7ded830, sourceCode=...) at ../../Source/WebCore/dom/ScriptElement.cpp:286
#41 0x00002ad73f2aebbf in WebCore::ScriptElement::prepareScript (this=0x7ded830, scriptStartPosition=..., supportLegacyTypes=WebCore::ScriptElement::DisallowLegacyTypeInTypeAttribute) at ../../Source/WebCore/dom/ScriptElement.cpp:242
#42 0x00002ad73f443463 in WebCore::HTMLScriptRunner::runScript (this=0x7ee5e80, script=0x7ded7b0, scriptStartPosition=...) at ../../Source/WebCore/html/parser/HTMLScriptRunner.cpp:296
#43 0x00002ad73f442ad4 in WebCore::HTMLScriptRunner::execute (this=0x7ee5e80, scriptElement=..., scriptStartPosition=...) at ../../Source/WebCore/html/parser/HTMLScriptRunner.cpp:170
#44 0x00002ad73f435789 in WebCore::HTMLDocumentParser::runScriptsForPausedTreeBuilder (this=0x7e0a910) at ../../Source/WebCore/html/parser/HTMLDocumentParser.cpp:205
#45 0x00002ad73f435845 in WebCore::HTMLDocumentParser::canTakeNextToken (this=0x7e0a910, mode=WebCore::HTMLDocumentParser::AllowYield, session=...) at ../../Source/WebCore/html/parser/HTMLDocumentParser.cpp:223
#46 0x00002ad73f435c24 in WebCore::HTMLDocumentParser::pumpTokenizer (this=0x7e0a910, mode=WebCore::HTMLDocumentParser::AllowYield) at ../../Source/WebCore/html/parser/HTMLDocumentParser.cpp:261
#47 0x00002ad73f4355de in WebCore::HTMLDocumentParser::pumpTokenizerIfPossible (this=0x7e0a910, mode=WebCore::HTMLDocumentParser::AllowYield) at ../../Source/WebCore/html/parser/HTMLDocumentParser.cpp:175
#48 0x00002ad73f43612c in WebCore::HTMLDocumentParser::append (this=0x7e0a910, source=...) at ../../Source/WebCore/html/parser/HTMLDocumentParser.cpp:367
#49 0x00002ad73f1f74e2 in WebCore::DecodedDataDocumentParser::flush (this=0x7e0a910, writer=0x7e3faf0) at ../../Source/WebCore/dom/DecodedDataDocumentParser.cpp:60
#50 0x00002ad73f57614f in WebCore::DocumentWriter::endIfNotLoadingMainResource (this=0x7e3faf0) at ../../Source/WebCore/loader/DocumentWriter.cpp:223
#51 0x00002ad73f5760ad in WebCore::DocumentWriter::end (this=0x7e3faf0) at ../../Source/WebCore/loader/DocumentWriter.cpp:209
#52 0x00002ad73f569de3 in WebCore::DocumentLoader::finishedLoading (this=0x7e3f9f0) at ../../Source/WebCore/loader/DocumentLoader.cpp:289
#53 0x00002ad73f581b47 in WebCore::FrameLoader::finishedLoading (this=0x11b80a0) at ../../Source/WebCore/loader/FrameLoader.cpp:2045
#54 0x00002ad73f5b66c0 in WebCore::MainResourceLoader::didFinishLoading (this=0x7b39680, finishTime=0) at ../../Source/WebCore/loader/MainResourceLoader.cpp:485
#55 0x00002ad73f5c33bf in WebCore::ResourceLoader::didFinishLoading (this=0x7b39680, finishTime=0) at ../../Source/WebCore/loader/ResourceLoader.cpp:474
#56 0x00002ad73f757cc2 in WebCore::readCallback (source=0x6932460, asyncResult=0x2ad7a004be40, data=0x0) at ../../Source/WebCore/platform/network/soup/ResourceHandleSoup.cpp:792
#57 0x00002ad74328fb59 in async_ready_callback_wrapper (source_object=0x6932460, res=0x2ad7a004be40, user_data=0x0) at /tmp/buildd/glib2.0-2.28.6/./gio/ginputstream.c:470
#58 0x00002ad74329fa68 in complete_in_idle_cb_for_thread (_data=0x7d77b50) at /tmp/buildd/glib2.0-2.28.6/./gio/gsimpleasyncresult.c:812
#59 0x00002ad743e0d4a3 in g_main_dispatch (context=0x1143660) at /tmp/buildd/glib2.0-2.28.6/./glib/gmain.c:2440
#60 g_main_context_dispatch (context=0x1143660) at /tmp/buildd/glib2.0-2.28.6/./glib/gmain.c:3013
#61 0x00002ad743e0dc80 in g_main_context_iterate (context=0x1143660, block=1, dispatch=1, self=<value optimized out>) at /tmp/buildd/glib2.0-2.28.6/./glib/gmain.c:3091
#62 0x00002ad743e0e2f2 in g_main_loop_run (loop=0x798c920) at /tmp/buildd/glib2.0-2.28.6/./glib/gmain.c:3299
#63 0x00002ad741d492b7 in gtk_main () from /usr/lib/libgtk-x11-2.0.so.0
#64 0x000000000042dfa0 in runTest (testPathOrURL=...) at ../../Tools/DumpRenderTree/gtk/DumpRenderTree.cpp:708
#65 0x000000000042d63d in runTestingServerLoop () at ../../Tools/DumpRenderTree/gtk/DumpRenderTree.cpp:500
#66 0x000000000042f8c9 in main (argc=2, argv=0x7fff08dd67e8) at ../../Tools/DumpRenderTree/gtk/DumpRenderTree.cpp:1187

-- 
Configure bugmail: https://bugs.webkit.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug.



More information about the webkit-unassigned mailing list