<?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>105371</bug_id>
          
          <creation_ts>2012-12-18 17:37:16 -0800</creation_ts>
          <short_desc>Crash in TextTrack::trackIndexRelativeToRenderedTracks()</short_desc>
          <delta_ts>2012-12-21 01:01:09 -0800</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>Media</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc>http://build.webkit.org/results/Apple%20MountainLion%20Debug%20WK1%20(Tests)/r138081%20(3961)/media/video-controls-captions-trackmenu-crash-log.txt</bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>MakingBotsRed</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Simon Fraser (smfr)">simon.fraser</reporter>
          <assigned_to name="Eric Carlson">eric.carlson</assigned_to>
          <cc>dino</cc>
    
    <cc>eric.carlson</cc>
    
    <cc>feature-media-reviews</cc>
    
    <cc>graouts</cc>
    
    <cc>jer.noble</cc>
    
    <cc>morrita</cc>
    
    <cc>ojan.autocc</cc>
    
    <cc>rniwa</cc>
    
    <cc>simon.fraser</cc>
    
    <cc>webkit-ews</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>794214</commentid>
    <comment_count>0</comment_count>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2012-12-18 17:37:16 -0800</bug_when>
    <thetext>CRASHING TEST: media/video-controls-captions-trackmenu.html

Process:         DumpRenderTree [47704]
Path:            /Volumes/VOLUME/*/DumpRenderTree
Identifier:      DumpRenderTree
Version:         0
Code Type:       X86-64 (Native)
Parent Process:  Python [46425]
User ID:         501

Date/Time:       2012-12-18 17:18:36.095 -0800
OS Version:      Mac OS X 10.8.2 (12C54)
Report Version:  10

Crashed Thread:  0  Dispatch queue: com.apple.main-thread

Exception Type:  EXC_BAD_ACCESS (SIGSEGV)
Exception Codes: KERN_INVALID_ADDRESS at 0x00000000bbadbeef

VM Regions Near 0xbbadbeef:
--&gt; 
    __TEXT                 0000000104bee000-0000000104c8a000 [  624K] r-x/rwx SM=COW  /Volumes/VOLUME/*

Application Specific Information:
CRASHING TEST: media/video-controls-captions-trackmenu.html

Thread 0 Crashed:: Dispatch queue: com.apple.main-thread
0   com.apple.WebCore             	0x0000000107e81af5 WebCore::TextTrack::trackIndexRelativeToRenderedTracks() + 85 (TextTrack.cpp:332)
1   com.apple.WebCore             	0x0000000107e8317f WebCore::TextTrackCue::calculateComputedLinePosition() + 127 (TextTrackCue.cpp:578)
2   com.apple.WebCore             	0x0000000107a82c8e WebCore::RenderTextTrackCue::initializeLayoutParameters(WebCore::InlineFlowBox*&amp;, WebCore::LayoutUnit&amp;, WebCore::LayoutUnit&amp;) + 318 (RenderTextTrackCue.cpp:71)
3   com.apple.WebCore             	0x0000000107a82a5e WebCore::RenderTextTrackCue::repositionCueSnapToLinesSet() + 62 (RenderTextTrackCue.cpp:203)
4   com.apple.WebCore             	0x0000000107a829ef WebCore::RenderTextTrackCue::layout() + 303 (RenderTextTrackCue.cpp:49)
5   com.apple.WebCore             	0x0000000106c23876 WebCore::RenderObject::layoutIfNeeded() + 54 (RenderObject.h:687)
6   com.apple.WebCore             	0x00000001077d9411 WebCore::RenderBlock::layoutPositionedObjects(bool) + 673 (RenderBlock.cpp:2653)
7   com.apple.WebCore             	0x00000001077d6159 WebCore::RenderBlock::layoutBlock(bool, WebCore::LayoutUnit) + 2537 (RenderBlock.cpp:1568)
8   com.apple.WebCore             	0x00000001077d4d0e WebCore::RenderBlock::layout() + 126 (RenderBlock.cpp:1360)
9   com.apple.WebCore             	0x000000010796361f WebCore::RenderTextTrackContainerElement::layout() + 31 (RenderMediaControlElements.cpp:94)
10  com.apple.WebCore             	0x0000000106c23876 WebCore::RenderObject::layoutIfNeeded() + 54 (RenderObject.h:687)
11  com.apple.WebCore             	0x00000001078a92a5 WebCore::RenderDeprecatedFlexibleBox::layoutVerticalBox(bool) + 1941 (RenderDeprecatedFlexibleBox.cpp:713)
12  com.apple.WebCore             	0x00000001078a6342 WebCore::RenderDeprecatedFlexibleBox::layoutBlock(bool, WebCore::LayoutUnit) + 1010 (RenderDeprecatedFlexibleBox.cpp:283)
13  com.apple.WebCore             	0x00000001077d4d0e WebCore::RenderBlock::layout() + 126 (RenderBlock.cpp:1360)
14  com.apple.WebCore             	0x0000000107962ec6 WebCore::RenderMedia::layout() + 1078 (RenderMedia.cpp:83)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>794234</commentid>
    <comment_count>1</comment_count>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2012-12-18 18:04:25 -0800</bug_when>
    <thetext>Skipped in Debug in http://trac.webkit.org/changeset/138094</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>794815</commentid>
    <comment_count>2</comment_count>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2012-12-19 11:14:08 -0800</bug_when>
    <thetext>This is followed by a crash in Release:

http://build.webkit.org/results/Apple%20Lion%20Release%20WK1%20(Tests)/r138178%20(7486)/media/video-controls-captions-trackmenu-crash-log.txt

Exception Type:  EXC_BAD_ACCESS (SIGSEGV)
Exception Codes: KERN_INVALID_ADDRESS at 0x0000000000000258

VM Regions Near 0x258:
--&gt; 
    __TEXT                 00000001016d8000-0000000101738000 [  384K] r-x/rwx SM=COW  /Volumes/VOLUME/*

Application Specific Information:
CRASHING TEST: media/video-controls-captions-trackmenu.html
objc[93675]: garbage collection is OFF

Thread 0 Crashed:: Dispatch queue: com.apple.main-thread
0   com.apple.WebCore             	0x00000001024b7a9b WebCore::HTMLMediaElement::textTracks() + 27 (RefPtr.h:66)
1   com.apple.WebCore             	0x0000000102d271fd WebCore::TextTrack::trackIndexRelativeToRenderedTracks() + 29 (TextTrack.cpp:335)
2   com.apple.WebCore             	0x0000000102d2811d WebCore::TextTrackCue::calculateComputedLinePosition() + 45 (TextTrackCue.cpp:584)
3   com.apple.WebCore             	0x0000000102b3b1b2 WebCore::RenderTextTrackCue::initializeLayoutParameters(WebCore::InlineFlowBox*&amp;, WebCore::LayoutUnit&amp;, WebCore::LayoutUnit&amp;) + 130 (RenderTextTrackCue.cpp:74)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>794870</commentid>
    <comment_count>3</comment_count>
      <attachid>180211</attachid>
    <who name="Eric Carlson">eric.carlson</who>
    <bug_when>2012-12-19 12:50:07 -0800</bug_when>
    <thetext>Created attachment 180211
Proposed patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>794878</commentid>
    <comment_count>4</comment_count>
      <attachid>180211</attachid>
    <who name="Early Warning System Bot">webkit-ews</who>
    <bug_when>2012-12-19 13:15:12 -0800</bug_when>
    <thetext>Comment on attachment 180211
Proposed patch

Attachment 180211 did not pass qt-ews (qt):
Output: http://queues.webkit.org/results/15405766</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>794880</commentid>
    <comment_count>5</comment_count>
      <attachid>180211</attachid>
    <who name="Early Warning System Bot">webkit-ews</who>
    <bug_when>2012-12-19 13:16:05 -0800</bug_when>
    <thetext>Comment on attachment 180211
Proposed patch

Attachment 180211 did not pass qt-wk2-ews (qt):
Output: http://queues.webkit.org/results/15410752</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>794886</commentid>
    <comment_count>6</comment_count>
      <attachid>180216</attachid>
    <who name="Eric Carlson">eric.carlson</who>
    <bug_when>2012-12-19 13:23:48 -0800</bug_when>
    <thetext>Created attachment 180216
Put &quot;#if ENABLE(VIDEO_TRACK)&quot; around new code.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>795175</commentid>
    <comment_count>7</comment_count>
      <attachid>180216</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-12-19 21:51:43 -0800</bug_when>
    <thetext>Comment on attachment 180216
Put &quot;#if ENABLE(VIDEO_TRACK)&quot; around new code.

Clearing flags on attachment: 180216

Committed r138224: &lt;http://trac.webkit.org/changeset/138224&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>795176</commentid>
    <comment_count>8</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-12-19 21:51:46 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>795822</commentid>
    <comment_count>9</comment_count>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2012-12-20 14:43:08 -0800</bug_when>
    <thetext>I’m seeing another crash on /media/track/track-prefer-captions-crash.html:

http://build.webkit.org/results/Apple%20MountainLion%20Release%20WK1%20(Tests)/r138293%20(5052)/media/track/track-prefer-captions-crash-log.txt
0   com.apple.WebCore             	0x0000000106c50933 WebCore::HTMLMediaElement::removeTrack(WebCore::TextTrack*) + 67 (HTMLMediaElement.cpp:2805)
1   com.apple.WebCore             	0x0000000106c50e7d WebCore::HTMLMediaElement::didRemoveTrack(WebCore::HTMLTrackElement*) + 93 (HTMLMediaElement.cpp:4267)
2   com.apple.WebCore             	0x0000000106c9a6a5 WebCore::HTMLTrackElement::removedFrom(WebCore::ContainerNode*) + 85 (HTMLTrackElement.cpp:92)
3   com.apple.WebCore             	0x00000001068ff346 WebCore::Private::NodeRemovalDispatcher&lt;WebCore::Node, WebCore::ContainerNode, true&gt;::dispatch(WebCore::Node*, WebCore::ContainerNode*) + 70 (Node.h:724)
4   com.apple.WebCore             	0x00000001068fecca void WebCore::removeAllChildrenInContainer&lt;WebCore::Node, WebCore::ContainerNode&gt;(WebCore::ContainerNode*) + 378 (TreeShared.h:77)
5   com.apple.WebCore             	0x00000001069e854b WebCore::Document::removedLastRef() + 539 (OwnPtr.h:72)
6   com.apple.WebCore             	0x0000000106f458cb WebCore::JSNodeOwner::finalize(JSC::Handle&lt;JSC::Unknown&gt;, void*) + 59 (JSNode.h:69)
7   com.apple.JavaScriptCore      	0x0000000106255f4c JSC::WeakBlock::sweep() + 108 (WeakImpl.h:84)
8   com.apple.JavaScriptCore      	0x00000001062562b8 JSC::WeakSet::sweep() + 40 (DoublyLinkedList.h:118)
9   com.apple.JavaScriptCore      	0x000000010618d2d8 JSC::MarkedBlock::sweep(JSC::MarkedBlock::SweepMode) + 24 (MarkedBlock.cpp:112)
10  com.apple.JavaScriptCore      	0x0000000106254fa3 JSC::MarkedAllocator::allocateSlowCase(unsigned long) + 99 (MarkedAllocator.cpp:34)
11  com.apple.JavaScriptCore      	0x000000010614a52d JSC::FunctionPrototype::create(JSC::ExecState*, JSC::JSGlobalObject*, JSC::Structure*) + 77 (MarkedAllocator.h:78)
12  com.apple.JavaScriptCore      	0x0000000106145c21 JSC::JSGlobalObject::reset(JSC::JSValue) + 209 (JSGlobalObject.cpp:202)
13  com.apple.WebCore             	0x0000000106e55ae3 WebCore::JSDOMWindowBase::finishCreation(JSC::JSGlobalData&amp;, WebCore::JSDOMWindowShell*) + 35 (JSDOMWindowBase.cpp:69)
14  com.apple.WebCore             	0x0000000106e5a53f WebCore::JSDOMWindow::create(JSC::JSGlobalData&amp;, JSC::Structure*, WTF::PassRefPtr&lt;WebCore::DOMWindow&gt;, WebCore::JSDOMWindowShell*) + 175 (JSDOMWindow.h:42)
15  com.apple.WebCore             	0x0000000106e5a23c WebCore::JSDOMWindowShell::setWindow(WTF::PassRefPtr&lt;WebCore::DOMWindow&gt;) + 380 (JSDOMWindowShell.cpp:75)
16  com.apple.WebCore             	0x0000000107328124 WebCore::ScriptController::clearWindowShell(WebCore::DOMWindow*, bool) + 276 (PassRefPtr.h:68)
17  com.apple.WebCore             	0x0000000106b8dfaf WebCore::FrameLoader::clear(WebCore::Document*, bool, bool, bool) + 271 (FrameLoader.cpp:568)
18  com.apple.WebCore             	0x0000000106a14f71 WebCore::DocumentWriter::begin(WebCore::KURL const&amp;, bool, WebCore::Document*) + 369 (DocumentWriter.cpp:135)
19  com.apple.WebCore             	0x0000000106a04beb WebCore::DocumentLoader::commitData(char const*, unsigned long) + 91 (RefPtr.h:56)
20  com.apple.WebKit              	0x000000010656c7b4 -[WebHTMLRepresentation receivedData:withDataSource:] + 100 (WebHTMLRepresentation.mm:186)
21  com.apple.WebKit              	0x000000010653f49d -[WebDataSource(WebInternal) _receivedData:] + 77 (WebDataSource.mm:216)
22  com.apple.WebKit              	0x00000001065574f7 WebFrameLoaderClient::committedLoad(WebCore::DocumentLoader*, char const*, int) + 103 (WebFrameLoaderClient.mm:841)
23  com.apple.WebCore             	0x0000000106a04e30 WebCore::DocumentLoader::commitLoad(char const*, int) + 144 (RefCounted.h:148)
24  com.apple.WebCore             	0x00000001070ef173 WebCore::MainResourceLoader::dataReceived(WebCore::CachedResource*, char const*, int) + 787 (MainResourceLoader.cpp:497)
25  com.apple.WebCore             	0x00000001068bb5c5 WebCore::CachedRawResource::data(WTF::PassRefPtr&lt;WebCore::ResourceBuffer&gt;, bool) + 309 (CachedRawResource.cpp:70)
26  com.apple.WebCore             	0x00000001073ff1fa WebCore::SubresourceLoader::sendDataToResource(char const*, int) + 122 (PassRefPtr.h:68)
27  com.apple.WebCore             	0x00000001073ff2dc WebCore::SubresourceLoader::didReceiveData(char const*, int, long long, bool) + 76 (ResourceLoader.h:142)
28  com.apple.WebCore             	0x0000000107308c38 WebCore::ResourceLoader::didReceiveData(WebCore::ResourceHandle*, char const*, int, int) + 136 (InspectorInstrumentation.h:260)
29  com.apple.Foundation          	0x00007fff87ee6f58 __65-[NSURLConnectionInternal _withConnectionAndDelegate:onlyActive:]_block_invoke_0 + 28
30  com.apple.Foundation          	0x00007fff87ee6e9c -[NSURLConnectionInternal _withConnectionAndDelegate:onlyActive:] + 227
31  com.apple.Foundation          	0x00007fff87ee6d98 -[NSURLConnectionInternal _withActiveConnectionAndDelegate:] + 63
32  com.apple.Foundation          	0x00007fff87ee992b _NSURLConnectionDidReceiveData_LengthReceived + 86
33  com.apple.CFNetwork           	0x00007fff8971d7b1 ___delegate_didReceiveDataArray_block_invoke_0 + 132
34  com.apple.CFNetwork           	0x00007fff89710753 ___withDelegateAsync_block_invoke_0 + 90
35  com.apple.CFNetwork           	0x00007fff8979f2ca __block_global_1 + 28
36  com.apple.CoreFoundation      	0x00007fff92f8c724 CFArrayApplyFunction + 68
37  com.apple.CFNetwork           	0x00007fff89701a6c RunloopBlockContext::perform() + 126
38  com.apple.CFNetwork           	0x00007fff8970194b MultiplexerSource::perform() + 221
39  com.apple.CoreFoundation      	0x00007fff92f6e101 __CFRUNLOOP_IS_CALLING_OUT_TO_A_SOURCE0_PERFORM_FUNCTION__ + 17
40  com.apple.CoreFoundation      	0x00007fff92f6da25 __CFRunLoopDoSources0 + 245
41  com.apple.CoreFoundation      	0x00007fff92f90dc5 __CFRunLoopRun + 789
42  com.apple.CoreFoundation      	0x00007fff92f906b2 CFRunLoopRunSpecific + 290
43  com.apple.Foundation          	0x00007fff87f6489e -[NSRunLoop(NSRunLoop) runMode:beforeDate:] + 268
44  DumpRenderTree                	0x0000000105e714c9 runTest(std::__1::basic_string&lt;char, std::__1::char_traits&lt;char&gt;, std::__1::allocator&lt;char&gt; &gt; const&amp;) + 1624 (DumpRenderTree.mm:1378)
45  DumpRenderTree                	0x0000000105e70c54 dumpRenderTree(int, char const**) + 1855 (DumpRenderTree.mm:842)
46  DumpRenderTree                	0x0000000105e71832 main + 86 (DumpRenderTree.mm:927)
47  libdyld.dylib                 	0x00007fff89a677e1 start + 1</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>796174</commentid>
    <comment_count>10</comment_count>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2012-12-21 00:38:18 -0800</bug_when>
    <thetext>Here&apos;s an interesting stack trace.
Thread 0 Crashed:: Dispatch queue: com.apple.main-thread
0   com.apple.WebCore             	0x000000010ce8f631 WebCore::TreeShared&lt;WebCore::Node, WebCore::ContainerNode&gt;::ref() + 161 (TreeShared.h:64)
1   com.apple.WebCore             	0x000000010e02f8cc WebCore::Node::refEventTarget() + 28 (Node.cpp:848)
2   com.apple.WebCore             	0x000000010d2da016 WebCore::EventTarget::ref() + 22 (EventTarget.h:105)
3   com.apple.WebCore             	0x000000010d2d9ff2 void WTF::refIfNotNull&lt;WebCore::EventTarget&gt;(WebCore::EventTarget*) + 50 (PassRefPtr.h:48)
4   com.apple.WebCore             	0x000000010d2d9fb4 WTF::PassRefPtr&lt;WebCore::EventTarget&gt;::PassRefPtr(WebCore::EventTarget*) + 36 (PassRefPtr.h:61)
5   com.apple.WebCore             	0x000000010d2b733d WTF::PassRefPtr&lt;WebCore::EventTarget&gt;::PassRefPtr(WebCore::EventTarget*) + 29 (PassRefPtr.h:61)
6   com.apple.WebCore             	0x000000010d74b56d WebCore::HTMLMediaElement::scheduleEvent(WTF::AtomicString const&amp;) + 109 (HTMLMediaElement.cpp:639)
7   com.apple.WebCore             	0x000000010d74fb5b WebCore::HTMLMediaElement::scheduleTimeupdateEvent(bool) + 171 (HTMLMediaElement.cpp:2718)
8   com.apple.WebCore             	0x000000010d74cb53 WebCore::HTMLMediaElement::updateActiveTextTrackCues(float) + 1075 (HTMLMediaElement.cpp:1146)
9   com.apple.WebCore             	0x000000010d750a63 WebCore::HTMLMediaElement::endIgnoringTrackDisplayUpdateRequests() + 163 (HTMLMediaElement.cpp:1385)
10  com.apple.WebCore             	0x000000010d76d6ed WebCore::TrackDisplayUpdateScope::~TrackDisplayUpdateScope() + 109 (HTMLMediaElement.cpp:217)
11  com.apple.WebCore             	0x000000010d75b6c5 WebCore::TrackDisplayUpdateScope::~TrackDisplayUpdateScope() + 21 (HTMLMediaElement.cpp:217)
12  com.apple.WebCore             	0x000000010d754dd1 WebCore::HTMLMediaElement::removeTrack(WebCore::TextTrack*) + 129 (HTMLMediaElement.cpp:2809)
13  com.apple.WebCore             	0x000000010d755417 WebCore::HTMLMediaElement::didRemoveTrack(WebCore::HTMLTrackElement*) + 423 (HTMLMediaElement.cpp:2928)
14  com.apple.WebCore             	0x000000010d7b85d9 WebCore::HTMLTrackElement::removedFrom(WebCore::ContainerNode*) + 105 (HTMLTrackElement.cpp:88)
15  com.apple.WebCore             	0x000000010d0917b2 WebCore::ChildNodeRemovalNotifier::notifyNodeRemovedFromDocument(WebCore::Node*) + 130 (ContainerNodeAlgorithms.h:239)
16  com.apple.WebCore             	0x000000010d08ef9b WebCore::ChildNodeRemovalNotifier::notify(WebCore::Node*) + 59 (ContainerNodeAlgorithms.h:256)
17  com.apple.WebCore             	0x000000010d091214 WebCore::Private::NodeRemovalDispatcher&lt;WebCore::Node, WebCore::ContainerNode, true&gt;::dispatch(WebCore::Node*, WebCore::ContainerNode*) + 116 (ContainerNodeAlgorithms.h:143)
18  com.apple.WebCore             	0x000000010d09115b void WebCore::Private::addChildNodesToDeletionQueue&lt;WebCore::Node, WebCore::ContainerNode&gt;(WebCore::Node*&amp;, WebCore::Node*&amp;, WebCore::ContainerNode*) + 331 (ContainerNodeAlgorithms.h:183)
19  com.apple.WebCore             	0x000000010d08e9fa void WebCore::removeAllChildrenInContainer&lt;WebCore::Node, WebCore::ContainerNode&gt;(WebCore::ContainerNode*) + 250 (ContainerNodeAlgorithms.h:104)
20  com.apple.WebCore             	0x000000010d089b15 WebCore::ContainerNode::removeAllChildren() + 21 (ContainerNode.cpp:95)
21  com.apple.WebCore             	0x000000010d29d070 WebCore::Document::removedLastRef() + 448 (Document.cpp:710)

The problem is that we can&apos;t dispatch an event inside removedFrom(). When removedFrom is called, m_deletionHasBegun had already set to true and nobody can ref that node.

We need to find some other way of fixing this bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>796176</commentid>
    <comment_count>11</comment_count>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2012-12-21 00:49:24 -0800</bug_when>
    <thetext>If we really do have a requirement to fire an event at this timing, then we need to invent a new class like ChildFrameDisconnector (see http://trac.webkit.org/changeset/116629) and use that instead.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>180211</attachid>
            <date>2012-12-19 12:50:07 -0800</date>
            <delta_ts>2012-12-19 13:23:48 -0800</delta_ts>
            <desc>Proposed patch</desc>
            <filename>patch_4.txt</filename>
            <type>text/plain</type>
            <size>9006</size>
            <attacher name="Eric Carlson">eric.carlson</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDEzODE4NykKKysrIFNvdXJjZS9XZWJDb3JlL0NoYW5n
ZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDMxIEBACisyMDEyLTEyLTE5ICBFcmljIENh
cmxzb24gIDxlcmljLmNhcmxzb25AYXBwbGUuY29tPgorCisgICAgICAgIENyYXNoIGluIFRleHRU
cmFjazo6dHJhY2tJbmRleFJlbGF0aXZlVG9SZW5kZXJlZFRyYWNrcygpCisgICAgICAgIGh0dHBz
Oi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMDUzNzEKKworICAgICAgICBSZXZp
ZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBBZGQgYW4gUkFJSSBvYmplY3QgdG8g
bWFuYWdlIHRleHQgdHJhY2sgdXBkYXRlIGJsb2NraW5nLCB1c2UgaXQgdG8gYWx3YXlzIHByb2Nl
c3MgdGhlIAorICAgICAgICBjdXJyZW50IGN1ZXMgdG8gZW5zdXJlIHRoYXQgY3VlcyBmcm9tIGEg
dHJhY2sgdGhhdCBpcyBkZWxldGVkIGFyZSByZW1vdmVkIGZyb20gdGhlIAorICAgICAgICBzaGFk
b3cgRE9NIGJlZm9yZSB0aGUgbmV4dCBsYXlvdXQuCisKKyAgICAgICAgTm8gbmV3IHRlc3RzLCB0
aGlzIGZpeGVzIGEgY3Jhc2ggaW4gbWVkaWEvdmlkZW8tY29udHJvbHMtY2FwdGlvbnMtdHJhY2tt
ZW51Lmh0bWwuCisKKyAgICAgICAgKiBodG1sL0hUTUxNZWRpYUVsZW1lbnQuY3BwOgorICAgICAg
ICAoV2ViQ29yZTo6VHJhY2tEaXNwbGF5VXBkYXRlU2NvcGU6OlRyYWNrRGlzcGxheVVwZGF0ZVNj
b3BlKTogTmV3LCBjYWxsIGJlZ2luSWdub3JpbmdUcmFja0Rpc3BsYXlVcGRhdGVSZXF1ZXN0cy4K
KyAgICAgICAgKFdlYkNvcmU6OlRyYWNrRGlzcGxheVVwZGF0ZVNjb3BlOjp+VHJhY2tEaXNwbGF5
VXBkYXRlU2NvcGUpOiBOZXcsIGNhbGwgZW5kSWdub3JpbmdUcmFja0Rpc3BsYXlVcGRhdGVSZXF1
ZXN0cy4KKyAgICAgICAgKFdlYkNvcmU6OkhUTUxNZWRpYUVsZW1lbnQ6OmJlZ2luSWdub3JpbmdU
cmFja0Rpc3BsYXlVcGRhdGVSZXF1ZXN0cyk6CisgICAgICAgIChXZWJDb3JlOjpIVE1MTWVkaWFF
bGVtZW50OjplbmRJZ25vcmluZ1RyYWNrRGlzcGxheVVwZGF0ZVJlcXVlc3RzKTogQ2FsbCB1cGRh
dGVBY3RpdmVUZXh0VHJhY2tDdWVzCisgICAgICAgICAgICB3aGVuIHRoZSBpZ25vcmUgY291bnQg
cmVhY2hlcyB6ZXJvLgorICAgICAgICAoV2ViQ29yZTo6SFRNTE1lZGlhRWxlbWVudDo6dGV4dFRy
YWNrQWRkQ3Vlcyk6IFVzZSBUcmFja0Rpc3BsYXlVcGRhdGVTY29wZSBpbnN0ZWFkIG9mIGNhbGxp
bmcgCisgICAgICAgICAgICBiZWdpbklnbm9yaW5nVHJhY2tEaXNwbGF5VXBkYXRlUmVxdWVzdHMg
YW5kIGVuZElnbm9yaW5nVHJhY2tEaXNwbGF5VXBkYXRlUmVxdWVzdHMgZGlyZWN0bHkuCisgICAg
ICAgIChXZWJDb3JlOjpIVE1MTWVkaWFFbGVtZW50Ojp0ZXh0VHJhY2tSZW1vdmVDdWVzKTogRGl0
dG8uCisgICAgICAgIChXZWJDb3JlOjpIVE1MTWVkaWFFbGVtZW50OjpyZW1vdmVUcmFjayk6IERp
dHRvLgorICAgICAgICAoV2ViQ29yZTo6SFRNTE1lZGlhRWxlbWVudDo6cmVtb3ZlQWxsSW5iYW5k
VHJhY2tzKTogRGl0dG8uCisgICAgICAgIChXZWJDb3JlOjpIVE1MTWVkaWFFbGVtZW50OjpkaWRS
ZW1vdmVUcmFjayk6IERpdHRvLiBDYWxsIHJlbW92ZVRyYWNrLgorICAgICAgICAqIGh0bWwvSFRN
TE1lZGlhRWxlbWVudC5oOiBEZWNsYXJlIFRyYWNrRGlzcGxheVVwZGF0ZVNjb3BlIGFzIGEgZnJp
ZW5kIG9mIEhUTUxNZWRpYUVsZW1lbnQgc28gaXQKKyAgICAgICAgICAgIGNhbiBjYWxsIHByb3Rl
Y3RlZCBtZXRob2RzLgorCiAyMDEyLTEyLTE5ICBBbGV4aXMgTWVuYXJkICA8YWxleGlzQHdlYmtp
dC5vcmc+CiAKICAgICAgICAgSW1wbGVtZW50IENTUyBwYXJzaW5nIGZvciBDU1MgdHJhbnNpdGlv
bnMgdW5wcmVmaXhlZC4KSW5kZXg6IFNvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTE1lZGlhRWxlbWVu
dC5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MTWVkaWFFbGVtZW50
LmNwcAkocmV2aXNpb24gMTM4MDM1KQorKysgU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MTWVkaWFF
bGVtZW50LmNwcAkod29ya2luZyBjb3B5KQpAQCAtMjAyLDYgKzIwMiwyMyBAQCBzdGF0aWMgRXhj
ZXB0aW9uQ29kZSBleGNlcHRpb25Db2RlRm9yTWVkCiB9CiAjZW5kaWYKIAorY2xhc3MgVHJhY2tE
aXNwbGF5VXBkYXRlU2NvcGUgeworcHVibGljOgorICAgIFRyYWNrRGlzcGxheVVwZGF0ZVNjb3Bl
KEhUTUxNZWRpYUVsZW1lbnQqIG1lZGlhRWxlbWVudCkKKyAgICB7CisgICAgICAgIG1fbWVkaWFF
bGVtZW50ID0gbWVkaWFFbGVtZW50OworICAgICAgICBtX21lZGlhRWxlbWVudC0+YmVnaW5JZ25v
cmluZ1RyYWNrRGlzcGxheVVwZGF0ZVJlcXVlc3RzKCk7CisgICAgfQorICAgIH5UcmFja0Rpc3Bs
YXlVcGRhdGVTY29wZSgpCisgICAgeworICAgICAgICBBU1NFUlQobV9tZWRpYUVsZW1lbnQpOwor
ICAgICAgICBtX21lZGlhRWxlbWVudC0+ZW5kSWdub3JpbmdUcmFja0Rpc3BsYXlVcGRhdGVSZXF1
ZXN0cygpOworICAgIH0KKyAgICAKK3ByaXZhdGU6CisgICAgSFRNTE1lZGlhRWxlbWVudCogbV9t
ZWRpYUVsZW1lbnQ7Cit9OworCiBIVE1MTWVkaWFFbGVtZW50OjpIVE1MTWVkaWFFbGVtZW50KGNv
bnN0IFF1YWxpZmllZE5hbWUmIHRhZ05hbWUsIERvY3VtZW50KiBkb2N1bWVudCwgYm9vbCBjcmVh
dGVkQnlQYXJzZXIpCiAgICAgOiBIVE1MRWxlbWVudCh0YWdOYW1lLCBkb2N1bWVudCkKICAgICAs
IEFjdGl2ZURPTU9iamVjdChkb2N1bWVudCwgdGhpcykKQEAgLTEzNTIsMjIgKzEzNjksMzEgQEAg
dm9pZCBIVE1MTWVkaWFFbGVtZW50Ojp0ZXh0VHJhY2tLaW5kQ2hhbgogICAgICAgICB0cmFjay0+
c2V0TW9kZShUZXh0VHJhY2s6OmhpZGRlbktleXdvcmQoKSk7CiB9CiAKK3ZvaWQgSFRNTE1lZGlh
RWxlbWVudDo6YmVnaW5JZ25vcmluZ1RyYWNrRGlzcGxheVVwZGF0ZVJlcXVlc3RzKCkKK3sKKyAg
ICArK21faWdub3JlVHJhY2tEaXNwbGF5VXBkYXRlOworfQorCit2b2lkIEhUTUxNZWRpYUVsZW1l
bnQ6OmVuZElnbm9yaW5nVHJhY2tEaXNwbGF5VXBkYXRlUmVxdWVzdHMoKQoreworICAgIEFTU0VS
VChtX2lnbm9yZVRyYWNrRGlzcGxheVVwZGF0ZSk7CisgICAgLS1tX2lnbm9yZVRyYWNrRGlzcGxh
eVVwZGF0ZTsKKyAgICBpZiAoIW1faWdub3JlVHJhY2tEaXNwbGF5VXBkYXRlKQorICAgICAgICB1
cGRhdGVBY3RpdmVUZXh0VHJhY2tDdWVzKGN1cnJlbnRUaW1lKCkpOworfQorCiB2b2lkIEhUTUxN
ZWRpYUVsZW1lbnQ6OnRleHRUcmFja0FkZEN1ZXMoVGV4dFRyYWNrKiwgY29uc3QgVGV4dFRyYWNr
Q3VlTGlzdCogY3VlcykgCiB7Ci0gICAgYmVnaW5JZ25vcmluZ1RyYWNrRGlzcGxheVVwZGF0ZVJl
cXVlc3RzKCk7CisgICAgVHJhY2tEaXNwbGF5VXBkYXRlU2NvcGUodGhpcyk7CiAgICAgZm9yIChz
aXplX3QgaSA9IDA7IGkgPCBjdWVzLT5sZW5ndGgoKTsgKytpKQogICAgICAgICB0ZXh0VHJhY2tB
ZGRDdWUoY3Vlcy0+aXRlbShpKS0+dHJhY2soKSwgY3Vlcy0+aXRlbShpKSk7Ci0gICAgZW5kSWdu
b3JpbmdUcmFja0Rpc3BsYXlVcGRhdGVSZXF1ZXN0cygpOwotICAgIHVwZGF0ZUFjdGl2ZVRleHRU
cmFja0N1ZXMoY3VycmVudFRpbWUoKSk7CiB9CiAKIHZvaWQgSFRNTE1lZGlhRWxlbWVudDo6dGV4
dFRyYWNrUmVtb3ZlQ3VlcyhUZXh0VHJhY2sqLCBjb25zdCBUZXh0VHJhY2tDdWVMaXN0KiBjdWVz
KSAKIHsKLSAgICBiZWdpbklnbm9yaW5nVHJhY2tEaXNwbGF5VXBkYXRlUmVxdWVzdHMoKTsKKyAg
ICBUcmFja0Rpc3BsYXlVcGRhdGVTY29wZSh0aGlzKTsKICAgICBmb3IgKHNpemVfdCBpID0gMDsg
aSA8IGN1ZXMtPmxlbmd0aCgpOyArK2kpCiAgICAgICAgIHRleHRUcmFja1JlbW92ZUN1ZShjdWVz
LT5pdGVtKGkpLT50cmFjaygpLCBjdWVzLT5pdGVtKGkpKTsKLSAgICBlbmRJZ25vcmluZ1RyYWNr
RGlzcGxheVVwZGF0ZVJlcXVlc3RzKCk7Ci0gICAgdXBkYXRlQWN0aXZlVGV4dFRyYWNrQ3Vlcyhj
dXJyZW50VGltZSgpKTsKIH0KIAogdm9pZCBIVE1MTWVkaWFFbGVtZW50Ojp0ZXh0VHJhY2tBZGRD
dWUoVGV4dFRyYWNrKiwgUGFzc1JlZlB0cjxUZXh0VHJhY2tDdWU+IGN1ZSkKQEAgLTI3NzMsMTIg
KzI3OTksMTEgQEAgdm9pZCBIVE1MTWVkaWFFbGVtZW50OjptZWRpYVBsYXllckRpZFJlbQogCiB2
b2lkIEhUTUxNZWRpYUVsZW1lbnQ6OnJlbW92ZVRyYWNrKFRleHRUcmFjayogdHJhY2spCiB7Ci0g
ICAgYmVnaW5JZ25vcmluZ1RyYWNrRGlzcGxheVVwZGF0ZVJlcXVlc3RzKCk7Ci0gICAgbV90ZXh0
VHJhY2tzLT5yZW1vdmUodHJhY2spOworICAgIFRyYWNrRGlzcGxheVVwZGF0ZVNjb3BlKHRoaXMp
OwogICAgIFRleHRUcmFja0N1ZUxpc3QqIGN1ZXMgPSB0cmFjay0+Y3VlcygpOwogICAgIGlmIChj
dWVzKQogICAgICAgICB0ZXh0VHJhY2tSZW1vdmVDdWVzKHRyYWNrLCBjdWVzKTsKLSAgICBlbmRJ
Z25vcmluZ1RyYWNrRGlzcGxheVVwZGF0ZVJlcXVlc3RzKCk7CisgICAgbV90ZXh0VHJhY2tzLT5y
ZW1vdmUodHJhY2spOwogfQogCiB2b2lkIEhUTUxNZWRpYUVsZW1lbnQ6OnJlbW92ZUFsbEluYmFu
ZFRyYWNrcygpCkBAIC0yNzg2LDE0ICsyODExLDEzIEBAIHZvaWQgSFRNTE1lZGlhRWxlbWVudDo6
cmVtb3ZlQWxsSW5iYW5kVHIKICAgICBpZiAoIW1fdGV4dFRyYWNrcykKICAgICAgICAgcmV0dXJu
OwogCi0gICAgYmVnaW5JZ25vcmluZ1RyYWNrRGlzcGxheVVwZGF0ZVJlcXVlc3RzKCk7CisgICAg
VHJhY2tEaXNwbGF5VXBkYXRlU2NvcGUodGhpcyk7CiAgICAgZm9yIChpbnQgaSA9IG1fdGV4dFRy
YWNrcy0+bGVuZ3RoKCkgLSAxOyBpID49IDA7IC0taSkgewogICAgICAgICBUZXh0VHJhY2sqIHRy
YWNrID0gbV90ZXh0VHJhY2tzLT5pdGVtKGkpOwogCiAgICAgICAgIGlmICh0cmFjay0+dHJhY2tU
eXBlKCkgPT0gVGV4dFRyYWNrOjpJbkJhbmQpCiAgICAgICAgICAgICByZW1vdmVUcmFjayh0cmFj
ayk7CiAgICAgfQotICAgIGVuZElnbm9yaW5nVHJhY2tEaXNwbGF5VXBkYXRlUmVxdWVzdHMoKTsK
IH0KIAogUGFzc1JlZlB0cjxUZXh0VHJhY2s+IEhUTUxNZWRpYUVsZW1lbnQ6OmFkZFRleHRUcmFj
ayhjb25zdCBTdHJpbmcmIGtpbmQsIGNvbnN0IFN0cmluZyYgbGFiZWwsIGNvbnN0IFN0cmluZyYg
bGFuZ3VhZ2UsIEV4Y2VwdGlvbkNvZGUmIGVjKQpAQCAtMjg5NywxNCArMjkyMSw3IEBAIHZvaWQg
SFRNTE1lZGlhRWxlbWVudDo6ZGlkUmVtb3ZlVHJhY2soSFQKICAgICAvLyBXaGVuIGEgdHJhY2sg
ZWxlbWVudCdzIHBhcmVudCBlbGVtZW50IGNoYW5nZXMgYW5kIHRoZSBvbGQgcGFyZW50IHdhcyBh
IG1lZGlhIGVsZW1lbnQsIAogICAgIC8vIHRoZW4gdGhlIHVzZXIgYWdlbnQgbXVzdCByZW1vdmUg
dGhlIHRyYWNrIGVsZW1lbnQncyBjb3JyZXNwb25kaW5nIHRleHQgdHJhY2sgZnJvbSB0aGUgCiAg
ICAgLy8gbWVkaWEgZWxlbWVudCdzIGxpc3Qgb2YgdGV4dCB0cmFja3MuCi0gICAgbV90ZXh0VHJh
Y2tzLT5yZW1vdmUodGV4dFRyYWNrLmdldCgpKTsKLSAgICBpZiAodGV4dFRyYWNrLT5jdWVzKCkp
IHsKLSAgICAgICAgVGV4dFRyYWNrQ3VlTGlzdCogY3VlcyA9IHRleHRUcmFjay0+Y3VlcygpOwot
ICAgICAgICBiZWdpbklnbm9yaW5nVHJhY2tEaXNwbGF5VXBkYXRlUmVxdWVzdHMoKTsKLSAgICAg
ICAgZm9yIChzaXplX3QgaSA9IDA7IGkgPCBjdWVzLT5sZW5ndGgoKTsgKytpKQotICAgICAgICAg
ICAgdGV4dFRyYWNrUmVtb3ZlQ3VlKGN1ZXMtPml0ZW0oaSktPnRyYWNrKCksIGN1ZXMtPml0ZW0o
aSkpOwotICAgICAgICBlbmRJZ25vcmluZ1RyYWNrRGlzcGxheVVwZGF0ZVJlcXVlc3RzKCk7Ci0g
ICAgfQorICAgIHJlbW92ZVRyYWNrKHRleHRUcmFjay5nZXQoKSk7CiAKICAgICBpZiAoaGFzTWVk
aWFDb250cm9scygpKQogICAgICAgICBtZWRpYUNvbnRyb2xzKCktPmNsb3NlZENhcHRpb25UcmFj
a3NDaGFuZ2VkKCk7CkluZGV4OiBTb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxNZWRpYUVsZW1lbnQu
aAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxNZWRpYUVsZW1lbnQuaAko
cmV2aXNpb24gMTM4MDM1KQorKysgU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MTWVkaWFFbGVtZW50
LmgJKHdvcmtpbmcgY29weSkKQEAgLTM3Miw3ICszNzIsMTMgQEAgcHJvdGVjdGVkOgogICAgIAog
ICAgIHZvaWQgYWRkQmVoYXZpb3JSZXN0cmljdGlvbihCZWhhdmlvclJlc3RyaWN0aW9ucyByZXN0
cmljdGlvbikgeyBtX3Jlc3RyaWN0aW9ucyB8PSByZXN0cmljdGlvbjsgfQogICAgIHZvaWQgcmVt
b3ZlQmVoYXZpb3JSZXN0cmljdGlvbihCZWhhdmlvclJlc3RyaWN0aW9ucyByZXN0cmljdGlvbikg
eyBtX3Jlc3RyaWN0aW9ucyAmPSB+cmVzdHJpY3Rpb247IH0KLSAgICAKKworI2lmIEVOQUJMRShW
SURFT19UUkFDSykKKyAgICBib29sIGlnbm9yZVRyYWNrRGlzcGxheVVwZGF0ZVJlcXVlc3RzKCkg
Y29uc3QgeyByZXR1cm4gbV9pZ25vcmVUcmFja0Rpc3BsYXlVcGRhdGUgPiAwOyB9CisgICAgdm9p
ZCBiZWdpbklnbm9yaW5nVHJhY2tEaXNwbGF5VXBkYXRlUmVxdWVzdHMoKTsKKyAgICB2b2lkIGVu
ZElnbm9yaW5nVHJhY2tEaXNwbGF5VXBkYXRlUmVxdWVzdHMoKTsKKyNlbmRpZgorCiBwcml2YXRl
OgogICAgIHZvaWQgY3JlYXRlTWVkaWFQbGF5ZXIoKTsKIApAQCAtNTAxLDEwICs1MDcsNiBAQCBw
cml2YXRlOgogICAgIHZvaWQgdXBkYXRlQWN0aXZlVGV4dFRyYWNrQ3VlcyhmbG9hdCk7CiAgICAg
SFRNTFRyYWNrRWxlbWVudCogc2hvd2luZ1RyYWNrV2l0aFNhbWVLaW5kKEhUTUxUcmFja0VsZW1l
bnQqKSBjb25zdDsKIAotICAgIGJvb2wgaWdub3JlVHJhY2tEaXNwbGF5VXBkYXRlUmVxdWVzdHMo
KSBjb25zdCB7IHJldHVybiBtX2lnbm9yZVRyYWNrRGlzcGxheVVwZGF0ZSA+IDA7IH0KLSAgICB2
b2lkIGJlZ2luSWdub3JpbmdUcmFja0Rpc3BsYXlVcGRhdGVSZXF1ZXN0cygpIHsgKyttX2lnbm9y
ZVRyYWNrRGlzcGxheVVwZGF0ZTsgfQotICAgIHZvaWQgZW5kSWdub3JpbmdUcmFja0Rpc3BsYXlV
cGRhdGVSZXF1ZXN0cygpIHsgQVNTRVJUKG1faWdub3JlVHJhY2tEaXNwbGF5VXBkYXRlKTsgLS1t
X2lnbm9yZVRyYWNrRGlzcGxheVVwZGF0ZTsgfQotCiAgICAgdm9pZCBtYXJrQ2FwdGlvbkFuZFN1
YnRpdGxlVHJhY2tzQXNVbmNvbmZpZ3VyZWQoKTsKICAgICB2aXJ0dWFsIHZvaWQgY2FwdGlvblBy
ZWZlcmVuY2VzQ2hhbmdlZCgpIE9WRVJSSURFOwogI2VuZGlmCkBAIC03MDEsNiArNzAzLDggQEAg
cHJpdmF0ZToKICNpZiBQTEFURk9STShNQUMpCiAgICAgT3duUHRyPERpc3BsYXlTbGVlcERpc2Fi
bGVyPiBtX3NsZWVwRGlzYWJsZXI7CiAjZW5kaWYKKworICAgIGZyaWVuZCBjbGFzcyBUcmFja0Rp
c3BsYXlVcGRhdGVTY29wZTsKIH07CiAKICNpZiBFTkFCTEUoVklERU9fVFJBQ0spCkluZGV4OiBM
YXlvdXRUZXN0cy9DaGFuZ2VMb2cKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvQ2hhbmdlTG9n
CShyZXZpc2lvbiAxMzgxODcpCisrKyBMYXlvdXRUZXN0cy9DaGFuZ2VMb2cJKHdvcmtpbmcgY29w
eSkKQEAgLTEsMyArMSwxMiBAQAorMjAxMi0xMi0xOSAgRXJpYyBDYXJsc29uICA8ZXJpYy5jYXJs
c29uQGFwcGxlLmNvbT4KKworICAgICAgICBDcmFzaCBpbiBUZXh0VHJhY2s6OnRyYWNrSW5kZXhS
ZWxhdGl2ZVRvUmVuZGVyZWRUcmFja3MoKQorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9y
Zy9zaG93X2J1Zy5jZ2k/aWQ9MTA1MzcxCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChP
T1BTISkuCisKKyAgICAgICAgKiBwbGF0Zm9ybS9tYWMvVGVzdEV4cGVjdGF0aW9uczogVW5za2lw
IHZpZGVvLWNvbnRyb2xzLWNhcHRpb25zLXRyYWNrbWVudS5odG1sLgorCiAyMDEyLTEyLTE5ICBM
ZXZpIFdlaW50cmF1YiAgPGxldml3QGNocm9taXVtLm9yZz4KIAogICAgICAgICBSZS1za2lwcGlu
ZyB0b3VjaC1pbnB1dC1lbGVtZW50LWNoYW5nLWRvY3VtZW50cy5odG1sIHNpbmNlIGl0J3Mgc3Rp
bGwKSW5kZXg6IExheW91dFRlc3RzL3BsYXRmb3JtL21hYy9UZXN0RXhwZWN0YXRpb25zCj09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT0KLS0tIExheW91dFRlc3RzL3BsYXRmb3JtL21hYy9UZXN0RXhwZWN0YXRpb25zCShyZXZp
c2lvbiAxMzgxODcpCisrKyBMYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMvVGVzdEV4cGVjdGF0aW9u
cwkod29ya2luZyBjb3B5KQpAQCAtNDczLDkgKzQ3Myw2IEBAIG1lZGlhL3RyYWNrL3RyYWNrLWN1
ZS1yZW5kZXJpbmctc25hcC10by0KIG1lZGlhL3RyYWNrL3RyYWNrLWN1ZS1yZW5kZXJpbmctdmVy
dGljYWwuaHRtbAogbWVkaWEvdHJhY2svdHJhY2std2VidnR0LXRjMDI4LXVuc3VwcG9ydGVkLW1h
cmt1cC5odG1sCiAKLSMgQXNzZXJ0czogaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcu
Y2dpP2lkPTEwNTM3MQotWyBEZWJ1ZyBdIG1lZGlhL3ZpZGVvLWNvbnRyb2xzLWNhcHRpb25zLXRy
YWNrbWVudS5odG1sCi0KICMgT3BlcmEtc3VibWl0dGVkIHRlc3RzIHRvIFczQyBmb3IgPHRyYWNr
PiwgYSBsb3Qgb2YgZmFpbHVyZXMgc3RpbGwuCiAjIE9wZXJhLXN1Ym1pdHRlZCB0ZXN0cyB0byBX
M0MgZm9yIDx0cmFjaz4sIGEgbG90IG9mIGZhaWx1cmVzIHN0aWxsLgogd2Via2l0Lm9yZy9iLzEw
MzkyNiBtZWRpYS90cmFjay9vcGVyYS9pZGwvbWVkaWEtaWRsLXRlc3RzLmh0bWwgWyBTa2lwIF0K
</data>
<flag name="review"
          id="197405"
          type_id="1"
          status="+"
          setter="dino"
    />
    <flag name="commit-queue"
          id="197411"
          type_id="3"
          status="-"
          setter="webkit-ews"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>180216</attachid>
            <date>2012-12-19 13:23:48 -0800</date>
            <delta_ts>2012-12-19 21:51:43 -0800</delta_ts>
            <desc>Put &quot;#if ENABLE(VIDEO_TRACK)&quot; around new code.</desc>
            <filename>patch_4.txt</filename>
            <type>text/plain</type>
            <size>9039</size>
            <attacher name="Eric Carlson">eric.carlson</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDEzODE4NykKKysrIFNvdXJjZS9XZWJDb3JlL0NoYW5n
ZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDMxIEBACisyMDEyLTEyLTE5ICBFcmljIENh
cmxzb24gIDxlcmljLmNhcmxzb25AYXBwbGUuY29tPgorCisgICAgICAgIENyYXNoIGluIFRleHRU
cmFjazo6dHJhY2tJbmRleFJlbGF0aXZlVG9SZW5kZXJlZFRyYWNrcygpCisgICAgICAgIGh0dHBz
Oi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMDUzNzEKKworICAgICAgICBSZXZp
ZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBBZGQgYW4gUkFJSSBvYmplY3QgdG8g
bWFuYWdlIHRleHQgdHJhY2sgdXBkYXRlIGJsb2NraW5nLCB1c2UgaXQgdG8gYWx3YXlzIHByb2Nl
c3MgdGhlIAorICAgICAgICBjdXJyZW50IGN1ZXMgdG8gZW5zdXJlIHRoYXQgY3VlcyBmcm9tIGEg
dHJhY2sgdGhhdCBpcyBkZWxldGVkIGFyZSByZW1vdmVkIGZyb20gdGhlIAorICAgICAgICBzaGFk
b3cgRE9NIGJlZm9yZSB0aGUgbmV4dCBsYXlvdXQuCisKKyAgICAgICAgTm8gbmV3IHRlc3RzLCB0
aGlzIGZpeGVzIGEgY3Jhc2ggaW4gbWVkaWEvdmlkZW8tY29udHJvbHMtY2FwdGlvbnMtdHJhY2tt
ZW51Lmh0bWwuCisKKyAgICAgICAgKiBodG1sL0hUTUxNZWRpYUVsZW1lbnQuY3BwOgorICAgICAg
ICAoV2ViQ29yZTo6VHJhY2tEaXNwbGF5VXBkYXRlU2NvcGU6OlRyYWNrRGlzcGxheVVwZGF0ZVNj
b3BlKTogTmV3LCBjYWxsIGJlZ2luSWdub3JpbmdUcmFja0Rpc3BsYXlVcGRhdGVSZXF1ZXN0cy4K
KyAgICAgICAgKFdlYkNvcmU6OlRyYWNrRGlzcGxheVVwZGF0ZVNjb3BlOjp+VHJhY2tEaXNwbGF5
VXBkYXRlU2NvcGUpOiBOZXcsIGNhbGwgZW5kSWdub3JpbmdUcmFja0Rpc3BsYXlVcGRhdGVSZXF1
ZXN0cy4KKyAgICAgICAgKFdlYkNvcmU6OkhUTUxNZWRpYUVsZW1lbnQ6OmJlZ2luSWdub3JpbmdU
cmFja0Rpc3BsYXlVcGRhdGVSZXF1ZXN0cyk6CisgICAgICAgIChXZWJDb3JlOjpIVE1MTWVkaWFF
bGVtZW50OjplbmRJZ25vcmluZ1RyYWNrRGlzcGxheVVwZGF0ZVJlcXVlc3RzKTogQ2FsbCB1cGRh
dGVBY3RpdmVUZXh0VHJhY2tDdWVzCisgICAgICAgICAgICB3aGVuIHRoZSBpZ25vcmUgY291bnQg
cmVhY2hlcyB6ZXJvLgorICAgICAgICAoV2ViQ29yZTo6SFRNTE1lZGlhRWxlbWVudDo6dGV4dFRy
YWNrQWRkQ3Vlcyk6IFVzZSBUcmFja0Rpc3BsYXlVcGRhdGVTY29wZSBpbnN0ZWFkIG9mIGNhbGxp
bmcgCisgICAgICAgICAgICBiZWdpbklnbm9yaW5nVHJhY2tEaXNwbGF5VXBkYXRlUmVxdWVzdHMg
YW5kIGVuZElnbm9yaW5nVHJhY2tEaXNwbGF5VXBkYXRlUmVxdWVzdHMgZGlyZWN0bHkuCisgICAg
ICAgIChXZWJDb3JlOjpIVE1MTWVkaWFFbGVtZW50Ojp0ZXh0VHJhY2tSZW1vdmVDdWVzKTogRGl0
dG8uCisgICAgICAgIChXZWJDb3JlOjpIVE1MTWVkaWFFbGVtZW50OjpyZW1vdmVUcmFjayk6IERp
dHRvLgorICAgICAgICAoV2ViQ29yZTo6SFRNTE1lZGlhRWxlbWVudDo6cmVtb3ZlQWxsSW5iYW5k
VHJhY2tzKTogRGl0dG8uCisgICAgICAgIChXZWJDb3JlOjpIVE1MTWVkaWFFbGVtZW50OjpkaWRS
ZW1vdmVUcmFjayk6IERpdHRvLiBDYWxsIHJlbW92ZVRyYWNrLgorICAgICAgICAqIGh0bWwvSFRN
TE1lZGlhRWxlbWVudC5oOiBEZWNsYXJlIFRyYWNrRGlzcGxheVVwZGF0ZVNjb3BlIGFzIGEgZnJp
ZW5kIG9mIEhUTUxNZWRpYUVsZW1lbnQgc28gaXQKKyAgICAgICAgICAgIGNhbiBjYWxsIHByb3Rl
Y3RlZCBtZXRob2RzLgorCiAyMDEyLTEyLTE5ICBBbGV4aXMgTWVuYXJkICA8YWxleGlzQHdlYmtp
dC5vcmc+CiAKICAgICAgICAgSW1wbGVtZW50IENTUyBwYXJzaW5nIGZvciBDU1MgdHJhbnNpdGlv
bnMgdW5wcmVmaXhlZC4KSW5kZXg6IFNvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTE1lZGlhRWxlbWVu
dC5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MTWVkaWFFbGVtZW50
LmNwcAkocmV2aXNpb24gMTM4MDM1KQorKysgU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MTWVkaWFF
bGVtZW50LmNwcAkod29ya2luZyBjb3B5KQpAQCAtMjAyLDYgKzIwMiwyNSBAQCBzdGF0aWMgRXhj
ZXB0aW9uQ29kZSBleGNlcHRpb25Db2RlRm9yTWVkCiB9CiAjZW5kaWYKIAorI2lmIEVOQUJMRShW
SURFT19UUkFDSykKK2NsYXNzIFRyYWNrRGlzcGxheVVwZGF0ZVNjb3BlIHsKK3B1YmxpYzoKKyAg
ICBUcmFja0Rpc3BsYXlVcGRhdGVTY29wZShIVE1MTWVkaWFFbGVtZW50KiBtZWRpYUVsZW1lbnQp
CisgICAgeworICAgICAgICBtX21lZGlhRWxlbWVudCA9IG1lZGlhRWxlbWVudDsKKyAgICAgICAg
bV9tZWRpYUVsZW1lbnQtPmJlZ2luSWdub3JpbmdUcmFja0Rpc3BsYXlVcGRhdGVSZXF1ZXN0cygp
OworICAgIH0KKyAgICB+VHJhY2tEaXNwbGF5VXBkYXRlU2NvcGUoKQorICAgIHsKKyAgICAgICAg
QVNTRVJUKG1fbWVkaWFFbGVtZW50KTsKKyAgICAgICAgbV9tZWRpYUVsZW1lbnQtPmVuZElnbm9y
aW5nVHJhY2tEaXNwbGF5VXBkYXRlUmVxdWVzdHMoKTsKKyAgICB9CisgICAgCitwcml2YXRlOgor
ICAgIEhUTUxNZWRpYUVsZW1lbnQqIG1fbWVkaWFFbGVtZW50OworfTsKKyNlbmRpZgorCiBIVE1M
TWVkaWFFbGVtZW50OjpIVE1MTWVkaWFFbGVtZW50KGNvbnN0IFF1YWxpZmllZE5hbWUmIHRhZ05h
bWUsIERvY3VtZW50KiBkb2N1bWVudCwgYm9vbCBjcmVhdGVkQnlQYXJzZXIpCiAgICAgOiBIVE1M
RWxlbWVudCh0YWdOYW1lLCBkb2N1bWVudCkKICAgICAsIEFjdGl2ZURPTU9iamVjdChkb2N1bWVu
dCwgdGhpcykKQEAgLTEzNTIsMjIgKzEzNzEsMzEgQEAgdm9pZCBIVE1MTWVkaWFFbGVtZW50Ojp0
ZXh0VHJhY2tLaW5kQ2hhbgogICAgICAgICB0cmFjay0+c2V0TW9kZShUZXh0VHJhY2s6OmhpZGRl
bktleXdvcmQoKSk7CiB9CiAKK3ZvaWQgSFRNTE1lZGlhRWxlbWVudDo6YmVnaW5JZ25vcmluZ1Ry
YWNrRGlzcGxheVVwZGF0ZVJlcXVlc3RzKCkKK3sKKyAgICArK21faWdub3JlVHJhY2tEaXNwbGF5
VXBkYXRlOworfQorCit2b2lkIEhUTUxNZWRpYUVsZW1lbnQ6OmVuZElnbm9yaW5nVHJhY2tEaXNw
bGF5VXBkYXRlUmVxdWVzdHMoKQoreworICAgIEFTU0VSVChtX2lnbm9yZVRyYWNrRGlzcGxheVVw
ZGF0ZSk7CisgICAgLS1tX2lnbm9yZVRyYWNrRGlzcGxheVVwZGF0ZTsKKyAgICBpZiAoIW1faWdu
b3JlVHJhY2tEaXNwbGF5VXBkYXRlKQorICAgICAgICB1cGRhdGVBY3RpdmVUZXh0VHJhY2tDdWVz
KGN1cnJlbnRUaW1lKCkpOworfQorCiB2b2lkIEhUTUxNZWRpYUVsZW1lbnQ6OnRleHRUcmFja0Fk
ZEN1ZXMoVGV4dFRyYWNrKiwgY29uc3QgVGV4dFRyYWNrQ3VlTGlzdCogY3VlcykgCiB7Ci0gICAg
YmVnaW5JZ25vcmluZ1RyYWNrRGlzcGxheVVwZGF0ZVJlcXVlc3RzKCk7CisgICAgVHJhY2tEaXNw
bGF5VXBkYXRlU2NvcGUodGhpcyk7CiAgICAgZm9yIChzaXplX3QgaSA9IDA7IGkgPCBjdWVzLT5s
ZW5ndGgoKTsgKytpKQogICAgICAgICB0ZXh0VHJhY2tBZGRDdWUoY3Vlcy0+aXRlbShpKS0+dHJh
Y2soKSwgY3Vlcy0+aXRlbShpKSk7Ci0gICAgZW5kSWdub3JpbmdUcmFja0Rpc3BsYXlVcGRhdGVS
ZXF1ZXN0cygpOwotICAgIHVwZGF0ZUFjdGl2ZVRleHRUcmFja0N1ZXMoY3VycmVudFRpbWUoKSk7
CiB9CiAKIHZvaWQgSFRNTE1lZGlhRWxlbWVudDo6dGV4dFRyYWNrUmVtb3ZlQ3VlcyhUZXh0VHJh
Y2sqLCBjb25zdCBUZXh0VHJhY2tDdWVMaXN0KiBjdWVzKSAKIHsKLSAgICBiZWdpbklnbm9yaW5n
VHJhY2tEaXNwbGF5VXBkYXRlUmVxdWVzdHMoKTsKKyAgICBUcmFja0Rpc3BsYXlVcGRhdGVTY29w
ZSh0aGlzKTsKICAgICBmb3IgKHNpemVfdCBpID0gMDsgaSA8IGN1ZXMtPmxlbmd0aCgpOyArK2kp
CiAgICAgICAgIHRleHRUcmFja1JlbW92ZUN1ZShjdWVzLT5pdGVtKGkpLT50cmFjaygpLCBjdWVz
LT5pdGVtKGkpKTsKLSAgICBlbmRJZ25vcmluZ1RyYWNrRGlzcGxheVVwZGF0ZVJlcXVlc3RzKCk7
Ci0gICAgdXBkYXRlQWN0aXZlVGV4dFRyYWNrQ3VlcyhjdXJyZW50VGltZSgpKTsKIH0KIAogdm9p
ZCBIVE1MTWVkaWFFbGVtZW50Ojp0ZXh0VHJhY2tBZGRDdWUoVGV4dFRyYWNrKiwgUGFzc1JlZlB0
cjxUZXh0VHJhY2tDdWU+IGN1ZSkKQEAgLTI3NzMsMTIgKzI4MDEsMTEgQEAgdm9pZCBIVE1MTWVk
aWFFbGVtZW50OjptZWRpYVBsYXllckRpZFJlbQogCiB2b2lkIEhUTUxNZWRpYUVsZW1lbnQ6OnJl
bW92ZVRyYWNrKFRleHRUcmFjayogdHJhY2spCiB7Ci0gICAgYmVnaW5JZ25vcmluZ1RyYWNrRGlz
cGxheVVwZGF0ZVJlcXVlc3RzKCk7Ci0gICAgbV90ZXh0VHJhY2tzLT5yZW1vdmUodHJhY2spOwor
ICAgIFRyYWNrRGlzcGxheVVwZGF0ZVNjb3BlKHRoaXMpOwogICAgIFRleHRUcmFja0N1ZUxpc3Qq
IGN1ZXMgPSB0cmFjay0+Y3VlcygpOwogICAgIGlmIChjdWVzKQogICAgICAgICB0ZXh0VHJhY2tS
ZW1vdmVDdWVzKHRyYWNrLCBjdWVzKTsKLSAgICBlbmRJZ25vcmluZ1RyYWNrRGlzcGxheVVwZGF0
ZVJlcXVlc3RzKCk7CisgICAgbV90ZXh0VHJhY2tzLT5yZW1vdmUodHJhY2spOwogfQogCiB2b2lk
IEhUTUxNZWRpYUVsZW1lbnQ6OnJlbW92ZUFsbEluYmFuZFRyYWNrcygpCkBAIC0yNzg2LDE0ICsy
ODEzLDEzIEBAIHZvaWQgSFRNTE1lZGlhRWxlbWVudDo6cmVtb3ZlQWxsSW5iYW5kVHIKICAgICBp
ZiAoIW1fdGV4dFRyYWNrcykKICAgICAgICAgcmV0dXJuOwogCi0gICAgYmVnaW5JZ25vcmluZ1Ry
YWNrRGlzcGxheVVwZGF0ZVJlcXVlc3RzKCk7CisgICAgVHJhY2tEaXNwbGF5VXBkYXRlU2NvcGUo
dGhpcyk7CiAgICAgZm9yIChpbnQgaSA9IG1fdGV4dFRyYWNrcy0+bGVuZ3RoKCkgLSAxOyBpID49
IDA7IC0taSkgewogICAgICAgICBUZXh0VHJhY2sqIHRyYWNrID0gbV90ZXh0VHJhY2tzLT5pdGVt
KGkpOwogCiAgICAgICAgIGlmICh0cmFjay0+dHJhY2tUeXBlKCkgPT0gVGV4dFRyYWNrOjpJbkJh
bmQpCiAgICAgICAgICAgICByZW1vdmVUcmFjayh0cmFjayk7CiAgICAgfQotICAgIGVuZElnbm9y
aW5nVHJhY2tEaXNwbGF5VXBkYXRlUmVxdWVzdHMoKTsKIH0KIAogUGFzc1JlZlB0cjxUZXh0VHJh
Y2s+IEhUTUxNZWRpYUVsZW1lbnQ6OmFkZFRleHRUcmFjayhjb25zdCBTdHJpbmcmIGtpbmQsIGNv
bnN0IFN0cmluZyYgbGFiZWwsIGNvbnN0IFN0cmluZyYgbGFuZ3VhZ2UsIEV4Y2VwdGlvbkNvZGUm
IGVjKQpAQCAtMjg5NywxNCArMjkyMyw3IEBAIHZvaWQgSFRNTE1lZGlhRWxlbWVudDo6ZGlkUmVt
b3ZlVHJhY2soSFQKICAgICAvLyBXaGVuIGEgdHJhY2sgZWxlbWVudCdzIHBhcmVudCBlbGVtZW50
IGNoYW5nZXMgYW5kIHRoZSBvbGQgcGFyZW50IHdhcyBhIG1lZGlhIGVsZW1lbnQsIAogICAgIC8v
IHRoZW4gdGhlIHVzZXIgYWdlbnQgbXVzdCByZW1vdmUgdGhlIHRyYWNrIGVsZW1lbnQncyBjb3Jy
ZXNwb25kaW5nIHRleHQgdHJhY2sgZnJvbSB0aGUgCiAgICAgLy8gbWVkaWEgZWxlbWVudCdzIGxp
c3Qgb2YgdGV4dCB0cmFja3MuCi0gICAgbV90ZXh0VHJhY2tzLT5yZW1vdmUodGV4dFRyYWNrLmdl
dCgpKTsKLSAgICBpZiAodGV4dFRyYWNrLT5jdWVzKCkpIHsKLSAgICAgICAgVGV4dFRyYWNrQ3Vl
TGlzdCogY3VlcyA9IHRleHRUcmFjay0+Y3VlcygpOwotICAgICAgICBiZWdpbklnbm9yaW5nVHJh
Y2tEaXNwbGF5VXBkYXRlUmVxdWVzdHMoKTsKLSAgICAgICAgZm9yIChzaXplX3QgaSA9IDA7IGkg
PCBjdWVzLT5sZW5ndGgoKTsgKytpKQotICAgICAgICAgICAgdGV4dFRyYWNrUmVtb3ZlQ3VlKGN1
ZXMtPml0ZW0oaSktPnRyYWNrKCksIGN1ZXMtPml0ZW0oaSkpOwotICAgICAgICBlbmRJZ25vcmlu
Z1RyYWNrRGlzcGxheVVwZGF0ZVJlcXVlc3RzKCk7Ci0gICAgfQorICAgIHJlbW92ZVRyYWNrKHRl
eHRUcmFjay5nZXQoKSk7CiAKICAgICBpZiAoaGFzTWVkaWFDb250cm9scygpKQogICAgICAgICBt
ZWRpYUNvbnRyb2xzKCktPmNsb3NlZENhcHRpb25UcmFja3NDaGFuZ2VkKCk7CkluZGV4OiBTb3Vy
Y2UvV2ViQ29yZS9odG1sL0hUTUxNZWRpYUVsZW1lbnQuaAo9PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2Uv
V2ViQ29yZS9odG1sL0hUTUxNZWRpYUVsZW1lbnQuaAkocmV2aXNpb24gMTM4MDM1KQorKysgU291
cmNlL1dlYkNvcmUvaHRtbC9IVE1MTWVkaWFFbGVtZW50LmgJKHdvcmtpbmcgY29weSkKQEAgLTM3
Miw3ICszNzIsMTMgQEAgcHJvdGVjdGVkOgogICAgIAogICAgIHZvaWQgYWRkQmVoYXZpb3JSZXN0
cmljdGlvbihCZWhhdmlvclJlc3RyaWN0aW9ucyByZXN0cmljdGlvbikgeyBtX3Jlc3RyaWN0aW9u
cyB8PSByZXN0cmljdGlvbjsgfQogICAgIHZvaWQgcmVtb3ZlQmVoYXZpb3JSZXN0cmljdGlvbihC
ZWhhdmlvclJlc3RyaWN0aW9ucyByZXN0cmljdGlvbikgeyBtX3Jlc3RyaWN0aW9ucyAmPSB+cmVz
dHJpY3Rpb247IH0KLSAgICAKKworI2lmIEVOQUJMRShWSURFT19UUkFDSykKKyAgICBib29sIGln
bm9yZVRyYWNrRGlzcGxheVVwZGF0ZVJlcXVlc3RzKCkgY29uc3QgeyByZXR1cm4gbV9pZ25vcmVU
cmFja0Rpc3BsYXlVcGRhdGUgPiAwOyB9CisgICAgdm9pZCBiZWdpbklnbm9yaW5nVHJhY2tEaXNw
bGF5VXBkYXRlUmVxdWVzdHMoKTsKKyAgICB2b2lkIGVuZElnbm9yaW5nVHJhY2tEaXNwbGF5VXBk
YXRlUmVxdWVzdHMoKTsKKyNlbmRpZgorCiBwcml2YXRlOgogICAgIHZvaWQgY3JlYXRlTWVkaWFQ
bGF5ZXIoKTsKIApAQCAtNTAxLDEwICs1MDcsNiBAQCBwcml2YXRlOgogICAgIHZvaWQgdXBkYXRl
QWN0aXZlVGV4dFRyYWNrQ3VlcyhmbG9hdCk7CiAgICAgSFRNTFRyYWNrRWxlbWVudCogc2hvd2lu
Z1RyYWNrV2l0aFNhbWVLaW5kKEhUTUxUcmFja0VsZW1lbnQqKSBjb25zdDsKIAotICAgIGJvb2wg
aWdub3JlVHJhY2tEaXNwbGF5VXBkYXRlUmVxdWVzdHMoKSBjb25zdCB7IHJldHVybiBtX2lnbm9y
ZVRyYWNrRGlzcGxheVVwZGF0ZSA+IDA7IH0KLSAgICB2b2lkIGJlZ2luSWdub3JpbmdUcmFja0Rp
c3BsYXlVcGRhdGVSZXF1ZXN0cygpIHsgKyttX2lnbm9yZVRyYWNrRGlzcGxheVVwZGF0ZTsgfQot
ICAgIHZvaWQgZW5kSWdub3JpbmdUcmFja0Rpc3BsYXlVcGRhdGVSZXF1ZXN0cygpIHsgQVNTRVJU
KG1faWdub3JlVHJhY2tEaXNwbGF5VXBkYXRlKTsgLS1tX2lnbm9yZVRyYWNrRGlzcGxheVVwZGF0
ZTsgfQotCiAgICAgdm9pZCBtYXJrQ2FwdGlvbkFuZFN1YnRpdGxlVHJhY2tzQXNVbmNvbmZpZ3Vy
ZWQoKTsKICAgICB2aXJ0dWFsIHZvaWQgY2FwdGlvblByZWZlcmVuY2VzQ2hhbmdlZCgpIE9WRVJS
SURFOwogI2VuZGlmCkBAIC03MDEsNiArNzAzLDggQEAgcHJpdmF0ZToKICNpZiBQTEFURk9STShN
QUMpCiAgICAgT3duUHRyPERpc3BsYXlTbGVlcERpc2FibGVyPiBtX3NsZWVwRGlzYWJsZXI7CiAj
ZW5kaWYKKworICAgIGZyaWVuZCBjbGFzcyBUcmFja0Rpc3BsYXlVcGRhdGVTY29wZTsKIH07CiAK
ICNpZiBFTkFCTEUoVklERU9fVFJBQ0spCkluZGV4OiBMYXlvdXRUZXN0cy9DaGFuZ2VMb2cKPT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PQotLS0gTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCShyZXZpc2lvbiAxMzgxOTApCisrKyBM
YXlvdXRUZXN0cy9DaGFuZ2VMb2cJKHdvcmtpbmcgY29weSkKQEAgLTEsMyArMSwxMiBAQAorMjAx
Mi0xMi0xOSAgRXJpYyBDYXJsc29uICA8ZXJpYy5jYXJsc29uQGFwcGxlLmNvbT4KKworICAgICAg
ICBDcmFzaCBpbiBUZXh0VHJhY2s6OnRyYWNrSW5kZXhSZWxhdGl2ZVRvUmVuZGVyZWRUcmFja3Mo
KQorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTA1Mzcx
CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBwbGF0
Zm9ybS9tYWMvVGVzdEV4cGVjdGF0aW9uczogVW5za2lwIHZpZGVvLWNvbnRyb2xzLWNhcHRpb25z
LXRyYWNrbWVudS5odG1sLgorCiAyMDEyLTEyLTE5ICBMZXZpIFdlaW50cmF1YiAgPGxldml3QGNo
cm9taXVtLm9yZz4KIAogICAgICAgICBSZS1za2lwcGluZyB0b3VjaC1pbnB1dC1lbGVtZW50LWNo
YW5nLWRvY3VtZW50cy5odG1sIHNpbmNlIGl0J3Mgc3RpbGwKSW5kZXg6IExheW91dFRlc3RzL3Bs
YXRmb3JtL21hYy9UZXN0RXhwZWN0YXRpb25zCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL3Bs
YXRmb3JtL21hYy9UZXN0RXhwZWN0YXRpb25zCShyZXZpc2lvbiAxMzgxODcpCisrKyBMYXlvdXRU
ZXN0cy9wbGF0Zm9ybS9tYWMvVGVzdEV4cGVjdGF0aW9ucwkod29ya2luZyBjb3B5KQpAQCAtNDcz
LDkgKzQ3Myw2IEBAIG1lZGlhL3RyYWNrL3RyYWNrLWN1ZS1yZW5kZXJpbmctc25hcC10by0KIG1l
ZGlhL3RyYWNrL3RyYWNrLWN1ZS1yZW5kZXJpbmctdmVydGljYWwuaHRtbAogbWVkaWEvdHJhY2sv
dHJhY2std2VidnR0LXRjMDI4LXVuc3VwcG9ydGVkLW1hcmt1cC5odG1sCiAKLSMgQXNzZXJ0czog
aHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTEwNTM3MQotWyBEZWJ1ZyBd
IG1lZGlhL3ZpZGVvLWNvbnRyb2xzLWNhcHRpb25zLXRyYWNrbWVudS5odG1sCi0KICMgT3BlcmEt
c3VibWl0dGVkIHRlc3RzIHRvIFczQyBmb3IgPHRyYWNrPiwgYSBsb3Qgb2YgZmFpbHVyZXMgc3Rp
bGwuCiAjIE9wZXJhLXN1Ym1pdHRlZCB0ZXN0cyB0byBXM0MgZm9yIDx0cmFjaz4sIGEgbG90IG9m
IGZhaWx1cmVzIHN0aWxsLgogd2Via2l0Lm9yZy9iLzEwMzkyNiBtZWRpYS90cmFjay9vcGVyYS9p
ZGwvbWVkaWEtaWRsLXRlc3RzLmh0bWwgWyBTa2lwIF0K
</data>

          </attachment>
      

    </bug>

</bugzilla>