<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<!DOCTYPE bugzilla SYSTEM "https://bugs.webkit.org/page.cgi?id=bugzilla.dtd">

<bugzilla version="5.0.4.1"
          urlbase="https://bugs.webkit.org/"
          
          maintainer="admin@webkit.org"
>

    <bug>
          <bug_id>29554</bug_id>
          
          <creation_ts>2009-09-21 07:39:12 -0700</creation_ts>
          <short_desc>REGRESSION (r48573): Assertion failure in Structure::toDictionaryTransition when loading page with simple JavaScript</short_desc>
          <delta_ts>2009-09-21 07:46:10 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>JavaScriptCore</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>All</rep_platform>
          <op_sys>All</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>DUPLICATE</resolution>
          <dup_id>29534</dup_id>
          
          <bug_file_loc>data:text/html,&lt;script&gt;function foo() { }&lt;/script&gt;</bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>Regression</keywords>
          <priority>P1</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Adam Roben (:aroben)">aroben</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>oliver</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>148651</commentid>
    <comment_count>0</comment_count>
    <who name="Adam Roben (:aroben)">aroben</who>
    <bug_when>2009-09-21 07:39:12 -0700</bug_when>
    <thetext>To reproduce:

1. Go to data:text/html,&lt;script&gt;function foo() { }&lt;/script&gt;

You&apos;ll hit this assertion in Structure::toDictionaryTransition:

    ASSERT(!structure-&gt;isDictionary());

Here&apos;s the backtrace:

#0	0x100c4ccad in JSC::Structure::toDictionaryTransition at Structure.cpp:559
#1	0x100c4cdcf in JSC::Structure::toUncacheableDictionaryTransition at Structure.cpp:580
#2	0x100c4ce3d in JSC::Structure::removePropertyTransition at Structure.cpp:459
#3	0x100b0d04c in JSC::JSObject::removeDirect at JSObject.cpp:481
#4	0x100b2f46c in JSC::BytecodeGenerator::BytecodeGenerator at BytecodeGenerator.cpp:260
#5	0x100c5b1b0 in JSC::ProgramExecutable::compile at Executable.cpp:107
#6	0x100b2b64a in JSC::evaluate at Completion.cpp:53
#7	0x101de71dd in WebCore::ScriptController::evaluate at ScriptController.cpp:115
#8	0x1018c9162 in WebCore::FrameLoader::executeScript at FrameLoader.cpp:781
#9	0x101992c5a in WebCore::HTMLTokenizer::scriptExecution at HTMLTokenizer.cpp:562
#10	0x101993922 in WebCore::HTMLTokenizer::scriptHandler at HTMLTokenizer.cpp:504
#11	0x1019940ae in WebCore::HTMLTokenizer::parseNonHTMLText at HTMLTokenizer.cpp:351
#12	0x1019967e4 in WebCore::HTMLTokenizer::parseTag at HTMLTokenizer.cpp:1521
#13	0x10199733d in WebCore::HTMLTokenizer::write at HTMLTokenizer.cpp:1755
#14	0x1018c775d in WebCore::FrameLoader::write at FrameLoader.cpp:1030
#15	0x1018c78f9 in WebCore::FrameLoader::endIfNotLoadingMainResource at FrameLoader.cpp:1065
#16	0x1018c7938 in WebCore::FrameLoader::end at FrameLoader.cpp:1051
#17	0x10176c7ba in WebCore::DocumentLoader::finishedLoading at DocumentLoader.cpp:330
#18	0x1018cb61b in WebCore::FrameLoader::finishedLoading at FrameLoader.cpp:3183
#19	0x101c2b4d5 in WebCore::MainResourceLoader::didFinishLoading at MainResourceLoader.cpp:375
#20	0x101dcda62 in WebCore::ResourceLoader::didFinishLoading at ResourceLoader.cpp:403
#21	0x101dc9dfb in -[WebCoreResourceHandleAsDelegate connectionDidFinishLoading:] at ResourceHandleMac.mm:748
#22	0x7fff831fdbc8 in _NSURLConnectionDidFinishLoading
#23	0x7fff846378d1 in URLConnectionClient::_clientDidFinishLoading
#24	0x7fff846982a6 in URLConnectionClient::ClientConnectionEventQueue::processAllEventsAndConsumePayload
#25	0x7fff84698512 in URLConnectionClient::ClientConnectionEventQueue::processAllEventsAndConsumePayload
#26	0x7fff8462262b in URLConnectionClient::processEvents
#27	0x7fff84622406 in MultiplexerSource::perform
#28	0x7fff805d6281 in __CFRunLoopDoSources0
#29	0x7fff805d4879 in __CFRunLoopRun
#30	0x7fff805d403f in CFRunLoopRunSpecific
#31	0x7fff876f4c4e in RunCurrentEventLoopInMode
#32	0x7fff876f4a53 in ReceiveNextEventCommon
#33	0x7fff876f490c in BlockUntilNextEventMatchingListInMode
#34	0x7fff84c6d520 in _DPSNextEvent
#35	0x7fff84c6ce89 in -[NSApplication nextEventMatchingMask:untilDate:inMode:dequeue:]
#36	0x10005fe45 in -[BrowserApplication nextEventMatchingMask:untilDate:inMode:dequeue:] at BrowserApplication.mm:225
#37	0x7fff84c32a7d in -[NSApplication run]
#38	0x7fff84c2b798 in NSApplicationMain
#39	0x100161b63 in main at main.mm:157</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>148654</commentid>
    <comment_count>1</comment_count>
    <who name="Adam Roben (:aroben)">aroben</who>
    <bug_when>2009-09-21 07:46:10 -0700</bug_when>
    <thetext>

*** This bug has been marked as a duplicate of bug 29534 ***</thetext>
  </long_desc>
      
      

    </bug>

</bugzilla>