<?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>77370</bug_id>
          
          <creation_ts>2012-01-30 14:42:09 -0800</creation_ts>
          <short_desc>Before accessing a frame&apos;s script controller in v8 bindings, first check that the frame actually exists</short_desc>
          <delta_ts>2012-04-13 09:34:33 -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>New Bugs</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></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          <dependson>77692</dependson>
          
          <everconfirmed>1</everconfirmed>
          <reporter>jochen</reporter>
          <assigned_to>jochen</assigned_to>
          <cc>abarth</cc>
    
    <cc>ap</cc>
    
    <cc>japhet</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>545427</commentid>
    <comment_count>0</comment_count>
    <who name="">jochen</who>
    <bug_when>2012-01-30 14:42:09 -0800</bug_when>
    <thetext>Before accessing a frame&apos;s script controller in v8 bindings, first check that the frame actually exists</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>545429</commentid>
    <comment_count>1</comment_count>
      <attachid>124602</attachid>
    <who name="">jochen</who>
    <bug_when>2012-01-30 14:43:57 -0800</bug_when>
    <thetext>Created attachment 124602
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>545820</commentid>
    <comment_count>2</comment_count>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2012-01-30 23:58:22 -0800</bug_when>
    <thetext>Is this covered by existing tests?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>545823</commentid>
    <comment_count>3</comment_count>
    <who name="Adam Barth">abarth</who>
    <bug_when>2012-01-31 00:05:35 -0800</bug_when>
    <thetext>&gt; Is this covered by existing tests?

I chatted with Jochen about ideas for how to test this patch.  He&apos;s going to try writing some tests.  This bug also seems related to https://bugs.webkit.org/show_bug.cgi?id=53733, which might be the right way to solve some of these problems.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>545833</commentid>
    <comment_count>4</comment_count>
    <who name="">jochen</who>
    <bug_when>2012-01-31 00:38:17 -0800</bug_when>
    <thetext>(In reply to comment #3)
&gt; &gt; Is this covered by existing tests?
&gt; 
&gt; I chatted with Jochen about ideas for how to test this patch.  He&apos;s going to try writing some tests.  This bug also seems related to https://bugs.webkit.org/show_bug.cgi?id=53733, which might be the right way to solve some of these problems.

Here&apos;s the crash stack btw

Thread 0 *CRASHED* ( EXCEPTION_ACCESS_VIOLATION_READ @ 0x00000428 )

0x65b93127	 [chrome.dll	 - scriptcontrollerbase.cpp:40	WebCore::ScriptController::canExecuteScripts(WebCore::ReasonForCallingCanExecuteScripts)
0x65d984f0	 [chrome.dll	 - scheduledaction.cpp:100	WebCore::ScheduledAction::execute(WebCore::ScriptExecutionContext *)
0x65d97969	 [chrome.dll	 - domtimer.cpp:148	WebCore::DOMTimer::fired()
0x65a84ffa	 [chrome.dll	 - threadspecific.h:251	WTF::ThreadSpecific&lt;WebCore::ThreadGlobalData&gt;::operator WebCore::ThreadGlobalData *()
0x65a84f3c	 [chrome.dll	 - threadglobaldata.h:104	WebCore::threadGlobalData()
0x65ae3c6a	 [chrome.dll	 - algorithm:2022]	std::_Push_heap&lt;WebCore::TimerHeapIterator,int,WebCore::TimerBase *,WebCore::TimerHeapLessThanFunction&gt;(WebCore::TimerHeapIterator,int,int,WebCore::TimerBase *,WebCore::TimerHeapLessThanFunction)
0x65af3604	 [chrome.dll	 - algorithm:2124]	std::_Adjust_heap&lt;WebCore::TimerHeapIterator,int,WebCore::TimerBase *,WebCore::TimerHeapLessThanFunction&gt;(WebCore::TimerHeapIterator,int,int,WebCore::TimerBase *,WebCore::TimerHeapLessThanFunction)
0x65a84ffa	 [chrome.dll	 - threadspecific.h:251	WTF::ThreadSpecific&lt;WebCore::ThreadGlobalData&gt;::operator WebCore::ThreadGlobalData *()
0x74ced362	 [kernel32.dll	 + 0x0002d362]	NlsGetCacheUpdateCount
0x659f6b6a	 [chrome.dll	 - observer_list.h:167	ObserverListBase&lt;base::MessagePumpForIO::IOObserver&gt;::Compact()
0x65a84f3c	 [chrome.dll	 - threadglobaldata.h:104	WebCore::threadGlobalData()
0x65b70047	 [chrome.dll	 - threadtimers.cpp:93	WebCore::ThreadTimers::sharedTimerFired()
0x65a264c0	 [chrome.dll	 - timer.h:174	base::BaseTimer&lt;EnumerateModulesModel,0&gt;::TimerTask::Run()
0x659f0a5c	 [chrome.dll	 - message_loop.cc:458	MessageLoop::RunTask(base::PendingTask const &amp;)
0x659f0734	 [chrome.dll	 - message_loop.cc:660	MessageLoop::DoWork()</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>546084</commentid>
    <comment_count>5</comment_count>
    <who name="">jochen</who>
    <bug_when>2012-01-31 08:25:16 -0800</bug_when>
    <thetext>I tried to reproduce this crash, but failed :(

My working assumption is that a timer fires on a Document without a frame (because it was detached).

However, Document::detach invokes stops all active DOM objects (that includes not yet fired timers), before nulling the frame.

Apparently there&apos;s something that manages to schedule a new timeout after the document was detached?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>549930</commentid>
    <comment_count>6</comment_count>
      <attachid>125625</attachid>
    <who name="">jochen</who>
    <bug_when>2012-02-06 05:49:14 -0800</bug_when>
    <thetext>Created attachment 125625
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>549932</commentid>
    <comment_count>7</comment_count>
    <who name="">jochen</who>
    <bug_when>2012-02-06 05:53:56 -0800</bug_when>
    <thetext>So there are two ways setTimeout can be invoked on a detached Document:

One is during detaching: each from is completely detached before its next sibling is detached. So by keeping a reference to a javascript function in one of you siblings, and invoking it in the unonload handler, you can run javascript on a document without a frame (this is covered by the layout test).

The second way is when the load event of a Document without a frame is fired. I haven&apos;t been able to reproduce this in a layout test, however.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>549967</commentid>
    <comment_count>8</comment_count>
      <attachid>125625</attachid>
    <who name="">jochen</who>
    <bug_when>2012-02-06 06:56:53 -0800</bug_when>
    <thetext>Comment on attachment 125625
Patch

layout test is missing expectations.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>550101</commentid>
    <comment_count>9</comment_count>
      <attachid>125625</attachid>
    <who name="Adam Barth">abarth</who>
    <bug_when>2012-02-06 10:56:51 -0800</bug_when>
    <thetext>Comment on attachment 125625
Patch

Thanks!  This patch is much better with the test.  Feel free to land it once you&apos;ve got expectations.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>550131</commentid>
    <comment_count>10</comment_count>
    <who name="">jochen</who>
    <bug_when>2012-02-06 11:28:37 -0800</bug_when>
    <thetext>(In reply to comment #9)
&gt; (From update of attachment 125625 [details])
&gt; Thanks!  This patch is much better with the test.  Feel free to land it once you&apos;ve got expectations.

Problem is, the test is wrong :(

So it turns out that this test indeed triggers the code path that results in the CRASH() I added (so a DOMTimer is created on a Document without a Frame). However, the FrameLoaderClient will subsequently invoke Frame::createView which ends up invoking Document::detach which kills the timer.

tl;dr the actual error in ScheduledAction::execute is not triggered.

So my guess is that the second code path is leading to the real crash, and I&apos;ll continue to try to find a repro</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>550247</commentid>
    <comment_count>11</comment_count>
      <attachid>125702</attachid>
    <who name="">jochen</who>
    <bug_when>2012-02-06 13:31:49 -0800</bug_when>
    <thetext>Created attachment 125702
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>550250</commentid>
    <comment_count>12</comment_count>
      <attachid>125702</attachid>
    <who name="Adam Barth">abarth</who>
    <bug_when>2012-02-06 13:35:20 -0800</bug_when>
    <thetext>Comment on attachment 125702
Patch

I appreciate the work you&apos;ve done to track down the source of this problem.  Normally we require a test before making changes like this one, but given that effort you&apos;ve put in to finding a test, I think it&apos;s ok to land this patch now and continue to work on finding a test in a subsequent patch.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>550256</commentid>
    <comment_count>13</comment_count>
      <attachid>125702</attachid>
    <who name="">jochen</who>
    <bug_when>2012-02-06 13:56:00 -0800</bug_when>
    <thetext>Comment on attachment 125702
Patch

Clearing flags on attachment: 125702

Committed r106846: &lt;http://trac.webkit.org/changeset/106846&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>550259</commentid>
    <comment_count>14</comment_count>
    <who name="">jochen</who>
    <bug_when>2012-02-06 13:57:07 -0800</bug_when>
    <thetext>I leave this bug open to track this issue until I have a proper layout test.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>602069</commentid>
    <comment_count>15</comment_count>
    <who name="">jochen</who>
    <bug_when>2012-04-13 08:09:43 -0700</bug_when>
    <thetext>I tried to come up with a layout test for this, but I failed. All promising paths turned out to be not desirable behavior and I filed separate bugs for them (80595, 80599, 78240).

So barring any objections, I&apos;d mark this bug as closed?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>602143</commentid>
    <comment_count>16</comment_count>
    <who name="Adam Barth">abarth</who>
    <bug_when>2012-04-13 09:34:33 -0700</bug_when>
    <thetext>Ok.  It&apos;s too bad we weren&apos;t able to find a test here.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>124602</attachid>
            <date>2012-01-30 14:43:57 -0800</date>
            <delta_ts>2012-02-06 05:49:09 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-77370-20120130234355.patch</filename>
            <type>text/plain</type>
            <size>3199</size>
            <attacher>jochen</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTA2MjQwCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggOGY3ODFiNzFmMWQ3OWE4
Yjg0MDBiMzM4ZDk2ZWJhYzQ1ZWFkNTljZC4uY2ZkMjAzZDk2MWFkMDY0ZDQwZjVmZTUzNTgyYTY3
M2E3OTRlMzI2YiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE3IEBACisyMDEyLTAxLTMwICBKb2No
ZW4gRWlzaW5nZXIgIDxqb2NoZW5AY2hyb21pdW0ub3JnPgorCisgICAgICAgIEJlZm9yZSBhY2Nl
c3NpbmcgYSBmcmFtZSdzIHNjcmlwdCBjb250cm9sbGVyIGluIHY4IGJpbmRpbmdzLCBmaXJzdCBj
aGVjayB0aGF0IHRoZSBmcmFtZSBhY3R1YWxseSBleGlzdHMKKyAgICAgICAgaHR0cHM6Ly9idWdz
LndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTc3MzcwCisKKyAgICAgICAgUmV2aWV3ZWQgYnkg
Tk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBiaW5kaW5ncy92OC9QYWdlU2NyaXB0RGVidWdT
ZXJ2ZXIuY3BwOgorICAgICAgICAoV2ViQ29yZTo6UGFnZVNjcmlwdERlYnVnU2VydmVyOjphZGRM
aXN0ZW5lcik6CisgICAgICAgICogYmluZGluZ3MvdjgvU2NoZWR1bGVkQWN0aW9uLmNwcDoKKyAg
ICAgICAgKFdlYkNvcmU6OlNjaGVkdWxlZEFjdGlvbjo6ZXhlY3V0ZSk6CisgICAgICAgICogYmlu
ZGluZ3MvdjgvU2NyaXB0Q2FjaGVkRnJhbWVEYXRhLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlNj
cmlwdENhY2hlZEZyYW1lRGF0YTo6cmVzdG9yZSk6CisKIDIwMTItMDEtMzAgIENhcmxvcyBHYXJj
aWEgQ2FtcG9zICA8Y2dhcmNpYUBpZ2FsaWEuY29tPgogCiAgICAgICAgIFVucmV2aWV3ZWQuIEZp
eCBtYWtlIGRpc3RjaGVjay4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Y4
L1BhZ2VTY3JpcHREZWJ1Z1NlcnZlci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy92OC9Q
YWdlU2NyaXB0RGVidWdTZXJ2ZXIuY3BwCmluZGV4IGRhMjkyNmE1ZjQ0YzhjMjJhNzdhM2NmMzA4
OTkzYjgzODRhN2MyYzQuLjExYjcwZDIwZWZkNTg5NjhhZmY0N2UxYjRhMTVjZWI5MTZjNTlmNzMg
MTAwNzU1Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Y4L1BhZ2VTY3JpcHREZWJ1Z1Nl
cnZlci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvdjgvUGFnZVNjcmlwdERlYnVn
U2VydmVyLmNwcApAQCAtNzYsMTAgKzc2LDEyIEBAIFBhZ2VTY3JpcHREZWJ1Z1NlcnZlcjo6UGFn
ZVNjcmlwdERlYnVnU2VydmVyKCkKIAogdm9pZCBQYWdlU2NyaXB0RGVidWdTZXJ2ZXI6OmFkZExp
c3RlbmVyKFNjcmlwdERlYnVnTGlzdGVuZXIqIGxpc3RlbmVyLCBQYWdlKiBwYWdlKQogeworICAg
IFY4UHJveHkqIHByb3h5ID0gVjhQcm94eTo6cmV0cmlldmUocGFnZS0+bWFpbkZyYW1lKCkpOwor
ICAgIGlmICghcHJveHkpCisgICAgICByZXR1cm47CiAgICAgU2NyaXB0Q29udHJvbGxlciogc2Ny
aXB0Q29udHJvbGxlciA9IHBhZ2UtPm1haW5GcmFtZSgpLT5zY3JpcHQoKTsKICAgICBpZiAoIXNj
cmlwdENvbnRyb2xsZXItPmNhbkV4ZWN1dGVTY3JpcHRzKE5vdEFib3V0VG9FeGVjdXRlU2NyaXB0
KSkKICAgICAgICAgcmV0dXJuOwotICAgIFY4UHJveHkqIHByb3h5ID0gVjhQcm94eTo6cmV0cmll
dmUocGFnZS0+bWFpbkZyYW1lKCkpOwogCiAgICAgdjg6OkhhbmRsZVNjb3BlIHNjb3BlOwogICAg
IHY4OjpMb2NhbDx2ODo6Q29udGV4dD4gZGVidWdnZXJDb250ZXh0ID0gdjg6OkRlYnVnOjpHZXRE
ZWJ1Z0NvbnRleHQoKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Y4L1Nj
aGVkdWxlZEFjdGlvbi5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy92OC9TY2hlZHVsZWRB
Y3Rpb24uY3BwCmluZGV4IGFjN2VkM2FlODFmYzEyYzkyMWRjOGExODAxNzc1N2UxMzY4MjU0M2Qu
LjY1MDA2M2M2NjM0YzdiOGM2NDQ2NTNjMDU1MjVkNDFmMDgxM2I1MjcgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Y4L1NjaGVkdWxlZEFjdGlvbi5jcHAKKysrIGIvU291cmNl
L1dlYkNvcmUvYmluZGluZ3MvdjgvU2NoZWR1bGVkQWN0aW9uLmNwcApAQCAtOTYsNiArOTYsOCBA
QCB2b2lkIFNjaGVkdWxlZEFjdGlvbjo6ZXhlY3V0ZShTY3JpcHRFeGVjdXRpb25Db250ZXh0KiBj
b250ZXh0KQogewogICAgIGlmIChjb250ZXh0LT5pc0RvY3VtZW50KCkpIHsKICAgICAgICAgRnJh
bWUqIGZyYW1lID0gc3RhdGljX2Nhc3Q8RG9jdW1lbnQqPihjb250ZXh0KS0+ZnJhbWUoKTsKKyAg
ICAgICAgaWYgKCFmcmFtZSkKKyAgICAgICAgICAgIHJldHVybjsKICAgICAgICAgU2NyaXB0Q29u
dHJvbGxlciogc2NyaXB0Q29udHJvbGxlciA9IGZyYW1lLT5zY3JpcHQoKTsKICAgICAgICAgaWYg
KCFzY3JpcHRDb250cm9sbGVyLT5jYW5FeGVjdXRlU2NyaXB0cyhOb3RBYm91dFRvRXhlY3V0ZVNj
cmlwdCkpCiAgICAgICAgICAgICByZXR1cm47CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9i
aW5kaW5ncy92OC9TY3JpcHRDYWNoZWRGcmFtZURhdGEuY3BwIGIvU291cmNlL1dlYkNvcmUvYmlu
ZGluZ3MvdjgvU2NyaXB0Q2FjaGVkRnJhbWVEYXRhLmNwcAppbmRleCBhZGNhMGM4MDRiMDBiMDEz
MmJmODdkNDQ5NTljMGNmYzg0YzE5ZTA3Li4wYTg2ZDYxMmVmNmVkODBiYjNiYWU2ZWM4MWNjY2E5
MmYxMTBkOTk1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy92OC9TY3JpcHRD
YWNoZWRGcmFtZURhdGEuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Y4L1Njcmlw
dENhY2hlZEZyYW1lRGF0YS5jcHAKQEAgLTU5LDcgKzU5LDcgQEAgdm9pZCBTY3JpcHRDYWNoZWRG
cmFtZURhdGE6OnJlc3RvcmUoRnJhbWUqIGZyYW1lKQogICAgIGlmIChtX2NvbnRleHQuZ2V0KCku
SXNFbXB0eSgpKQogICAgICAgICByZXR1cm47CiAKLSAgICBpZiAoIWZyYW1lLT5zY3JpcHQoKS0+
Y2FuRXhlY3V0ZVNjcmlwdHMoTm90QWJvdXRUb0V4ZWN1dGVTY3JpcHQpKQorICAgIGlmICghZnJh
bWUgfHwgIWZyYW1lLT5zY3JpcHQoKS0+Y2FuRXhlY3V0ZVNjcmlwdHMoTm90QWJvdXRUb0V4ZWN1
dGVTY3JpcHQpKQogICAgICAgICByZXR1cm47CiAKICAgICB2ODo6SGFuZGxlU2NvcGUgaGFuZGxl
U2NvcGU7Cg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>125625</attachid>
            <date>2012-02-06 05:49:14 -0800</date>
            <delta_ts>2012-02-06 13:31:44 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-77370-20120206144912.patch</filename>
            <type>text/plain</type>
            <size>7275</size>
            <attacher>jochen</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTA2NzgwCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNDdjMzdiMzdhMDU4ZjAx
ZDE0YmQ5ZjZhNTVlZDY5NDJlOWRkM2U2OS4uN2U1NWNiNDZmY2EwMjU1ZmRjZmRiYTY2MmU4YjQx
YjI3ZGQ3YTlmMSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIxIEBACisyMDEyLTAyLTA2ICBKb2No
ZW4gRWlzaW5nZXIgIDxqb2NoZW5AY2hyb21pdW0ub3JnPgorCisgICAgICAgIEJlZm9yZSBhY2Nl
c3NpbmcgYSBmcmFtZSdzIHNjcmlwdCBjb250cm9sbGVyIGluIHY4IGJpbmRpbmdzLCBmaXJzdCBj
aGVjayB0aGF0IHRoZSBmcmFtZSBhY3R1YWxseSBleGlzdHMKKyAgICAgICAgaHR0cHM6Ly9idWdz
LndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTc3MzcwCisKKyAgICAgICAgUmV2aWV3ZWQgYnkg
Tk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgVGVzdDogZmFzdC9ldmVudHMvb251bmxvYWQtc2V0
dGltZW91dC5odG1sCisKKyAgICAgICAgKiBiaW5kaW5ncy92OC9QYWdlU2NyaXB0RGVidWdTZXJ2
ZXIuY3BwOgorICAgICAgICAoV2ViQ29yZTo6UGFnZVNjcmlwdERlYnVnU2VydmVyOjphZGRMaXN0
ZW5lcik6CisgICAgICAgICogYmluZGluZ3MvdjgvU2NoZWR1bGVkQWN0aW9uLmNwcDoKKyAgICAg
ICAgKFdlYkNvcmU6OlNjaGVkdWxlZEFjdGlvbjo6ZXhlY3V0ZSk6CisgICAgICAgICogYmluZGlu
Z3MvdjgvU2NyaXB0Q2FjaGVkRnJhbWVEYXRhLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlNjcmlw
dENhY2hlZEZyYW1lRGF0YTo6cmVzdG9yZSk6CisgICAgICAgICogcGFnZS9ET01UaW1lci5jcHA6
CisgICAgICAgIChXZWJDb3JlOjpET01UaW1lcjo6RE9NVGltZXIpOgorCiAyMDEyLTAyLTA2ICBZ
dXJ5IFNlbWlraGF0c2t5ICA8eXVyeXNAY2hyb21pdW0ub3JnPgogCiAgICAgICAgIFVucmV2aWV3
ZWQuIFF0IG1pbmltYWwgY29tcGlsYXRpb24gZml4IGFmdGVyIHIxMDY3NzcuCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy92OC9QYWdlU2NyaXB0RGVidWdTZXJ2ZXIuY3BwIGIv
U291cmNlL1dlYkNvcmUvYmluZGluZ3MvdjgvUGFnZVNjcmlwdERlYnVnU2VydmVyLmNwcAppbmRl
eCBkYTI5MjZhNWY0NGM4YzIyYTc3YTNjZjMwODk5M2I4Mzg0YTdjMmM0Li4xOGY3ZGY3ZWU0MjU0
MDEwYzFkNzE2MTk3YTRiYjRhNmJmN2M1MDk2IDEwMDc1NQotLS0gYS9Tb3VyY2UvV2ViQ29yZS9i
aW5kaW5ncy92OC9QYWdlU2NyaXB0RGVidWdTZXJ2ZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L2JpbmRpbmdzL3Y4L1BhZ2VTY3JpcHREZWJ1Z1NlcnZlci5jcHAKQEAgLTc2LDEwICs3NiwxMiBA
QCBQYWdlU2NyaXB0RGVidWdTZXJ2ZXI6OlBhZ2VTY3JpcHREZWJ1Z1NlcnZlcigpCiAKIHZvaWQg
UGFnZVNjcmlwdERlYnVnU2VydmVyOjphZGRMaXN0ZW5lcihTY3JpcHREZWJ1Z0xpc3RlbmVyKiBs
aXN0ZW5lciwgUGFnZSogcGFnZSkKIHsKKyAgICBWOFByb3h5KiBwcm94eSA9IFY4UHJveHk6OnJl
dHJpZXZlKHBhZ2UtPm1haW5GcmFtZSgpKTsKKyAgICBpZiAoIXByb3h5KQorICAgICAgICByZXR1
cm47CiAgICAgU2NyaXB0Q29udHJvbGxlciogc2NyaXB0Q29udHJvbGxlciA9IHBhZ2UtPm1haW5G
cmFtZSgpLT5zY3JpcHQoKTsKICAgICBpZiAoIXNjcmlwdENvbnRyb2xsZXItPmNhbkV4ZWN1dGVT
Y3JpcHRzKE5vdEFib3V0VG9FeGVjdXRlU2NyaXB0KSkKICAgICAgICAgcmV0dXJuOwotICAgIFY4
UHJveHkqIHByb3h5ID0gVjhQcm94eTo6cmV0cmlldmUocGFnZS0+bWFpbkZyYW1lKCkpOwogCiAg
ICAgdjg6OkhhbmRsZVNjb3BlIHNjb3BlOwogICAgIHY4OjpMb2NhbDx2ODo6Q29udGV4dD4gZGVi
dWdnZXJDb250ZXh0ID0gdjg6OkRlYnVnOjpHZXREZWJ1Z0NvbnRleHQoKTsKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Y4L1NjaGVkdWxlZEFjdGlvbi5jcHAgYi9Tb3VyY2Uv
V2ViQ29yZS9iaW5kaW5ncy92OC9TY2hlZHVsZWRBY3Rpb24uY3BwCmluZGV4IGQyMjg1NmU1Mzc1
YWM0MmQxZGU3MDM2OTVkMjVkYzQ4OTdkNDA4OWQuLmY3NmI1OGQxY2M2MTQxZmMwYTZhY2QyZGU4
ZWM0MTFjYTk2YWM3MzYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Y4L1Nj
aGVkdWxlZEFjdGlvbi5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvdjgvU2NoZWR1
bGVkQWN0aW9uLmNwcApAQCAtOTYsNiArOTYsOCBAQCB2b2lkIFNjaGVkdWxlZEFjdGlvbjo6ZXhl
Y3V0ZShTY3JpcHRFeGVjdXRpb25Db250ZXh0KiBjb250ZXh0KQogewogICAgIGlmIChjb250ZXh0
LT5pc0RvY3VtZW50KCkpIHsKICAgICAgICAgRnJhbWUqIGZyYW1lID0gc3RhdGljX2Nhc3Q8RG9j
dW1lbnQqPihjb250ZXh0KS0+ZnJhbWUoKTsKKyAgICAgICAgaWYgKCFmcmFtZSkKKyAgICAgICAg
ICAgIHJldHVybjsKICAgICAgICAgU2NyaXB0Q29udHJvbGxlciogc2NyaXB0Q29udHJvbGxlciA9
IGZyYW1lLT5zY3JpcHQoKTsKICAgICAgICAgaWYgKCFzY3JpcHRDb250cm9sbGVyLT5jYW5FeGVj
dXRlU2NyaXB0cyhBYm91dFRvRXhlY3V0ZVNjcmlwdCkpCiAgICAgICAgICAgICByZXR1cm47CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy92OC9TY3JpcHRDYWNoZWRGcmFtZURh
dGEuY3BwIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvdjgvU2NyaXB0Q2FjaGVkRnJhbWVEYXRh
LmNwcAppbmRleCBhZGNhMGM4MDRiMDBiMDEzMmJmODdkNDQ5NTljMGNmYzg0YzE5ZTA3Li4wYTg2
ZDYxMmVmNmVkODBiYjNiYWU2ZWM4MWNjY2E5MmYxMTBkOTk1IDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9iaW5kaW5ncy92OC9TY3JpcHRDYWNoZWRGcmFtZURhdGEuY3BwCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL2JpbmRpbmdzL3Y4L1NjcmlwdENhY2hlZEZyYW1lRGF0YS5jcHAKQEAgLTU5LDcg
KzU5LDcgQEAgdm9pZCBTY3JpcHRDYWNoZWRGcmFtZURhdGE6OnJlc3RvcmUoRnJhbWUqIGZyYW1l
KQogICAgIGlmIChtX2NvbnRleHQuZ2V0KCkuSXNFbXB0eSgpKQogICAgICAgICByZXR1cm47CiAK
LSAgICBpZiAoIWZyYW1lLT5zY3JpcHQoKS0+Y2FuRXhlY3V0ZVNjcmlwdHMoTm90QWJvdXRUb0V4
ZWN1dGVTY3JpcHQpKQorICAgIGlmICghZnJhbWUgfHwgIWZyYW1lLT5zY3JpcHQoKS0+Y2FuRXhl
Y3V0ZVNjcmlwdHMoTm90QWJvdXRUb0V4ZWN1dGVTY3JpcHQpKQogICAgICAgICByZXR1cm47CiAK
ICAgICB2ODo6SGFuZGxlU2NvcGUgaGFuZGxlU2NvcGU7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9wYWdlL0RPTVRpbWVyLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvRE9NVGltZXIuY3Bw
CmluZGV4IGY5ZWIwMWM0Y2Y2YmNmZjc0MDhlMjFmOWM2YzI1ZDQxMmVmNGI3NzMuLjBhOTRlN2Vm
OGM5YjQ1OGUxZmY5N2YwODY3YWY1MTdiOGVmNzgzYzMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL3BhZ2UvRE9NVGltZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvRE9NVGltZXIu
Y3BwCkBAIC0yNyw3ICsyNyw2IEBACiAjaW5jbHVkZSAiY29uZmlnLmgiCiAjaW5jbHVkZSAiRE9N
VGltZXIuaCIKIAotI2luY2x1ZGUgIkRvY3VtZW50LmgiCiAjaW5jbHVkZSAiSW5zcGVjdG9ySW5z
dHJ1bWVudGF0aW9uLmgiCiAjaW5jbHVkZSAiU2NoZWR1bGVkQWN0aW9uLmgiCiAjaW5jbHVkZSAi
U2NyaXB0RXhlY3V0aW9uQ29udGV4dC5oIgpAQCAtNzEsOSArNzAsNiBAQCBET01UaW1lcjo6RE9N
VGltZXIoU2NyaXB0RXhlY3V0aW9uQ29udGV4dCogY29udGV4dCwgUGFzc093blB0cjxTY2hlZHVs
ZWRBY3Rpb24+CiAgICAgLCBtX29yaWdpbmFsSW50ZXJ2YWwoaW50ZXJ2YWwpCiAgICAgLCBtX3No
b3VsZEZvcndhcmRVc2VyR2VzdHVyZShzaG91bGRGb3J3YXJkVXNlckdlc3R1cmUoaW50ZXJ2YWws
IG1fbmVzdGluZ0xldmVsKSkKIHsKLSAgICAvLyBGSVhNRTogcmVtb3ZlIG9uY2Ugd2UgZm91bmQg
b3V0IHRoZSByb290IGNhdXNlIGZvciBodHRwOi8vd2Via2l0Lm9yZy9iLzc3MzcwCi0gICAgaWYg
KHNjcmlwdEV4ZWN1dGlvbkNvbnRleHQoKS0+aXNEb2N1bWVudCgpICYmICFzdGF0aWNfY2FzdDxE
b2N1bWVudCo+KHNjcmlwdEV4ZWN1dGlvbkNvbnRleHQoKSktPmZyYW1lKCkpCi0gICAgICAgIENS
QVNIKCk7CiAgICAgc2NyaXB0RXhlY3V0aW9uQ29udGV4dCgpLT5hZGRUaW1lb3V0KG1fdGltZW91
dElkLCB0aGlzKTsKIAogICAgIGRvdWJsZSBpbnRlcnZhbE1pbGxpc2Vjb25kcyA9IGludGVydmFs
Q2xhbXBlZFRvTWluaW11bShpbnRlcnZhbCwgY29udGV4dC0+bWluaW11bVRpbWVySW50ZXJ2YWwo
KSk7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cgYi9MYXlvdXRUZXN0cy9DaGFu
Z2VMb2cKaW5kZXggYzViYjNlZGNkNzQzZjAxMDA1NGYwMmE5NzZkN2M2YWY4NGM1NTFhZi4uODFj
NmYyNmM1ZDc2MmMwYzhmY2Q1M2ZjNmFlZGU1YzE1NGZjYzg2OSAxMDA2NDQKLS0tIGEvTGF5b3V0
VGVzdHMvQ2hhbmdlTG9nCisrKyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE0
IEBACisyMDEyLTAyLTA2ICBKb2NoZW4gRWlzaW5nZXIgIDxqb2NoZW5AY2hyb21pdW0ub3JnPgor
CisgICAgICAgIEJlZm9yZSBhY2Nlc3NpbmcgYSBmcmFtZSdzIHNjcmlwdCBjb250cm9sbGVyIGlu
IHY4IGJpbmRpbmdzLCBmaXJzdCBjaGVjayB0aGF0IHRoZSBmcmFtZSBhY3R1YWxseSBleGlzdHMK
KyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTc3MzcwCisK
KyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBmYXN0L2V2
ZW50cy9vbnVubG9hZC1zZXR0aW1lb3V0Lmh0bWw6IEFkZGVkLgorICAgICAgICAqIGZhc3QvZXZl
bnRzL3Jlc291cmNlcy9vbnVubG9hZC1zZXR0aW1lb3V0LWlmcmFtZS0xLmh0bWw6IEFkZGVkLgor
ICAgICAgICAqIGZhc3QvZXZlbnRzL3Jlc291cmNlcy9vbnVubG9hZC1zZXR0aW1lb3V0LWlmcmFt
ZS0yLmh0bWw6IEFkZGVkLgorCiAyMDEyLTAyLTA1ICBBZGFtIEJhcnRoICA8YWJhcnRoQHdlYmtp
dC5vcmc+CiAKICAgICAgICAgeHNzLURFTklFRC1mcm9tLWRhdGEtdXJsLWluLWZvcmVpZ24tZG9t
YWluLXN1YmZyYW1lLmh0bWwgaXMgZmxha3kKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3Qv
ZXZlbnRzL29udW5sb2FkLXNldHRpbWVvdXQuaHRtbCBiL0xheW91dFRlc3RzL2Zhc3QvZXZlbnRz
L29udW5sb2FkLXNldHRpbWVvdXQuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4zN2Q5Y2IwYTExY2YwMzQwNTA5
NWQ3ZjBlYzgwMWQ4YjJkNDNjNGI0Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFz
dC9ldmVudHMvb251bmxvYWQtc2V0dGltZW91dC5odG1sCkBAIC0wLDAgKzEsMjQgQEAKKzxodG1s
PgorPGhlYWQ+Cis8c2NyaXB0PgoraWYgKHdpbmRvdy5sYXlvdXRUZXN0Q29udHJvbGxlcikgewor
ICAgIGxheW91dFRlc3RDb250cm9sbGVyLmR1bXBBc1RleHQoKTsKKyAgICBsYXlvdXRUZXN0Q29u
dHJvbGxlci53YWl0VW50aWxEb25lKCk7Cit9CisKK2Z1bmN0aW9uIGRvbmUoKSB7CisgICAgaWYg
KHdpbmRvdy5sYXlvdXRUZXN0Q29udHJvbGxlcikKKyAgICAgICAgbGF5b3V0VGVzdENvbnRyb2xs
ZXIubm90aWZ5RG9uZSgpOworfQorCitmdW5jdGlvbiB0ZXN0KCkgeworICAgIGxvY2F0aW9uLnJl
bG9hZCgpOworfQorPC9zY3JpcHQ+Cis8L2hlYWQ+Cis8Ym9keSBvbmxvYWQ9InRlc3QoKSI+Cis8
cD5Gb3IgdGhlIHRlc3QgdG8gcGFzcyB0aGVyZSBzaG91bGQgYmUgbm8gY3Jhc2guIFJlZ3Jlc3Np
b24gdGVzdCBmb3IgPGEgaHJlZj0iaHR0cDovL3dlYmtpdC5vcmcvYi83NzM3MCI+aHR0cDovL3dl
YmtpdC5vcmcvYi83NzM3MDwvYT48L3A+Cis8aWZyYW1lIHNyYz0icmVzb3VyY2VzL29udW5sb2Fk
LXNldHRpbWVvdXQtaWZyYW1lLTEuaHRtbCIgaWQ9ImZyYW1lMSI+PC9pZnJhbWU+Cis8aWZyYW1l
IHNyYz0icmVzb3VyY2VzL29udW5sb2FkLXNldHRpbWVvdXQtaWZyYW1lLTIuaHRtbCIgaWQ9ImZy
YW1lMiI+PC9pZnJhbWU+Cis8L2JvZHk+Cis8L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0
cy9mYXN0L2V2ZW50cy9yZXNvdXJjZXMvb251bmxvYWQtc2V0dGltZW91dC1pZnJhbWUtMS5odG1s
IGIvTGF5b3V0VGVzdHMvZmFzdC9ldmVudHMvcmVzb3VyY2VzL29udW5sb2FkLXNldHRpbWVvdXQt
aWZyYW1lLTEuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi45YzBlZTUzMDY2NDZjMDViNGEyNGI3YTk3ZjA4YjVh
ZjFjMjQ0NmQ3Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9ldmVudHMvcmVz
b3VyY2VzL29udW5sb2FkLXNldHRpbWVvdXQtaWZyYW1lLTEuaHRtbApAQCAtMCwwICsxLDkgQEAK
KzxzY3JpcHQ+Cit2YXIgdGVzdDsKK2dldFJlZmVyZW5jZSA9IGZ1bmN0aW9uKCkgeworICB0ZXN0
ID0gd2luZG93LnRvcC5kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZnJhbWUyIikuY29udGVudFdp
bmRvdy50ZXN0OworfQorb251bmxvYWQgPSBmdW5jdGlvbigpIHsKKyAgdGVzdCgpOworfQorPC9z
Y3JpcHQ+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2V2ZW50cy9yZXNvdXJjZXMvb251
bmxvYWQtc2V0dGltZW91dC1pZnJhbWUtMi5odG1sIGIvTGF5b3V0VGVzdHMvZmFzdC9ldmVudHMv
cmVzb3VyY2VzL29udW5sb2FkLXNldHRpbWVvdXQtaWZyYW1lLTIuaHRtbApuZXcgZmlsZSBtb2Rl
IDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi43
MjlhZGIzMThhMDVjNDFhMWJiYTdhMmI0ZDVjMWYyODY4MGExNWZmCi0tLSAvZGV2L251bGwKKysr
IGIvTGF5b3V0VGVzdHMvZmFzdC9ldmVudHMvcmVzb3VyY2VzL29udW5sb2FkLXNldHRpbWVvdXQt
aWZyYW1lLTIuaHRtbApAQCAtMCwwICsxLDcgQEAKKzxzY3JpcHQ+Cit0ZXN0ID0gZnVuY3Rpb24o
KSB7CisgIHNldFRpbWVvdXQoZnVuY3Rpb24oKSB7IH0sIDApOworICB3aW5kb3cudG9wLmRvbmUo
KTsKK30KK3dpbmRvdy50b3AuZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImZyYW1lMSIpLmNvbnRl
bnRXaW5kb3cuZ2V0UmVmZXJlbmNlKCk7Cis8L3NjcmlwdD4K
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>125702</attachid>
            <date>2012-02-06 13:31:49 -0800</date>
            <delta_ts>2012-02-06 13:56:00 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-77370-20120206223147.patch</filename>
            <type>text/plain</type>
            <size>4494</size>
            <attacher>jochen</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTA2NzgwCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNDdjMzdiMzdhMDU4ZjAx
ZDE0YmQ5ZjZhNTVlZDY5NDJlOWRkM2U2OS4uNjhlODdmNDVkNTgyMWFjMmJiMGE3NTQ3YTU3YzVk
NDQ5ZmE5NGQ2MSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIyIEBACisyMDEyLTAyLTA2ICBKb2No
ZW4gRWlzaW5nZXIgIDxqb2NoZW5AY2hyb21pdW0ub3JnPgorCisgICAgICAgIEJlZm9yZSBhY2Nl
c3NpbmcgYSBmcmFtZSdzIHNjcmlwdCBjb250cm9sbGVyIGluIFY4IGJpbmRpbmdzLCBmaXJzdCBj
aGVjayB0aGF0IHRoZSBmcmFtZSBhY3R1YWxseSBleGlzdHMKKyAgICAgICAgaHR0cHM6Ly9idWdz
LndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTc3MzcwCisKKyAgICAgICAgUmV2aWV3ZWQgYnkg
Tk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgSSBkb24ndCBoYXZlIGEgd29ya2luZyByZXByb2R1
Y3Rpb24gb2YgdGhlIGNyYXNoIHlldC4gQXMgc29vbiBhcyBJIGhhdmUKKyAgICAgICAgb25lLCAg
SSB3aWxsIGFkZCBuZXcgbGF5b3V0IHRlc3RzLgorCisgICAgICAgICogYmluZGluZ3MvdjgvUGFn
ZVNjcmlwdERlYnVnU2VydmVyLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlBhZ2VTY3JpcHREZWJ1
Z1NlcnZlcjo6YWRkTGlzdGVuZXIpOgorICAgICAgICAqIGJpbmRpbmdzL3Y4L1NjaGVkdWxlZEFj
dGlvbi5jcHA6CisgICAgICAgIChXZWJDb3JlOjpTY2hlZHVsZWRBY3Rpb246OmV4ZWN1dGUpOgor
ICAgICAgICAqIGJpbmRpbmdzL3Y4L1NjcmlwdENhY2hlZEZyYW1lRGF0YS5jcHA6CisgICAgICAg
IChXZWJDb3JlOjpTY3JpcHRDYWNoZWRGcmFtZURhdGE6OnJlc3RvcmUpOgorICAgICAgICAqIHBh
Z2UvRE9NVGltZXIuY3BwOgorICAgICAgICAoV2ViQ29yZTo6RE9NVGltZXI6OkRPTVRpbWVyKTog
cmVtb3ZlIHRlbXBvcmFyeSBkZWJ1ZyBjb2RlCisKIDIwMTItMDItMDYgIFl1cnkgU2VtaWtoYXRz
a3kgIDx5dXJ5c0BjaHJvbWl1bS5vcmc+CiAKICAgICAgICAgVW5yZXZpZXdlZC4gUXQgbWluaW1h
bCBjb21waWxhdGlvbiBmaXggYWZ0ZXIgcjEwNjc3Ny4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL2JpbmRpbmdzL3Y4L1BhZ2VTY3JpcHREZWJ1Z1NlcnZlci5jcHAgYi9Tb3VyY2UvV2ViQ29y
ZS9iaW5kaW5ncy92OC9QYWdlU2NyaXB0RGVidWdTZXJ2ZXIuY3BwCmluZGV4IGRhMjkyNmE1ZjQ0
YzhjMjJhNzdhM2NmMzA4OTkzYjgzODRhN2MyYzQuLjE4ZjdkZjdlZTQyNTQwMTBjMWQ3MTYxOTdh
NGJiNGE2YmY3YzUwOTYgMTAwNzU1Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Y4L1Bh
Z2VTY3JpcHREZWJ1Z1NlcnZlci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvdjgv
UGFnZVNjcmlwdERlYnVnU2VydmVyLmNwcApAQCAtNzYsMTAgKzc2LDEyIEBAIFBhZ2VTY3JpcHRE
ZWJ1Z1NlcnZlcjo6UGFnZVNjcmlwdERlYnVnU2VydmVyKCkKIAogdm9pZCBQYWdlU2NyaXB0RGVi
dWdTZXJ2ZXI6OmFkZExpc3RlbmVyKFNjcmlwdERlYnVnTGlzdGVuZXIqIGxpc3RlbmVyLCBQYWdl
KiBwYWdlKQogeworICAgIFY4UHJveHkqIHByb3h5ID0gVjhQcm94eTo6cmV0cmlldmUocGFnZS0+
bWFpbkZyYW1lKCkpOworICAgIGlmICghcHJveHkpCisgICAgICAgIHJldHVybjsKICAgICBTY3Jp
cHRDb250cm9sbGVyKiBzY3JpcHRDb250cm9sbGVyID0gcGFnZS0+bWFpbkZyYW1lKCktPnNjcmlw
dCgpOwogICAgIGlmICghc2NyaXB0Q29udHJvbGxlci0+Y2FuRXhlY3V0ZVNjcmlwdHMoTm90QWJv
dXRUb0V4ZWN1dGVTY3JpcHQpKQogICAgICAgICByZXR1cm47Ci0gICAgVjhQcm94eSogcHJveHkg
PSBWOFByb3h5OjpyZXRyaWV2ZShwYWdlLT5tYWluRnJhbWUoKSk7CiAKICAgICB2ODo6SGFuZGxl
U2NvcGUgc2NvcGU7CiAgICAgdjg6OkxvY2FsPHY4OjpDb250ZXh0PiBkZWJ1Z2dlckNvbnRleHQg
PSB2ODo6RGVidWc6OkdldERlYnVnQ29udGV4dCgpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvYmluZGluZ3MvdjgvU2NoZWR1bGVkQWN0aW9uLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRp
bmdzL3Y4L1NjaGVkdWxlZEFjdGlvbi5jcHAKaW5kZXggZDIyODU2ZTUzNzVhYzQyZDFkZTcwMzY5
NWQyNWRjNDg5N2Q0MDg5ZC4uZjc2YjU4ZDFjYzYxNDFmYzBhNmFjZDJkZThlYzQxMWNhOTZhYzcz
NiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvdjgvU2NoZWR1bGVkQWN0aW9u
LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy92OC9TY2hlZHVsZWRBY3Rpb24uY3Bw
CkBAIC05Niw2ICs5Niw4IEBAIHZvaWQgU2NoZWR1bGVkQWN0aW9uOjpleGVjdXRlKFNjcmlwdEV4
ZWN1dGlvbkNvbnRleHQqIGNvbnRleHQpCiB7CiAgICAgaWYgKGNvbnRleHQtPmlzRG9jdW1lbnQo
KSkgewogICAgICAgICBGcmFtZSogZnJhbWUgPSBzdGF0aWNfY2FzdDxEb2N1bWVudCo+KGNvbnRl
eHQpLT5mcmFtZSgpOworICAgICAgICBpZiAoIWZyYW1lKQorICAgICAgICAgICAgcmV0dXJuOwog
ICAgICAgICBTY3JpcHRDb250cm9sbGVyKiBzY3JpcHRDb250cm9sbGVyID0gZnJhbWUtPnNjcmlw
dCgpOwogICAgICAgICBpZiAoIXNjcmlwdENvbnRyb2xsZXItPmNhbkV4ZWN1dGVTY3JpcHRzKEFi
b3V0VG9FeGVjdXRlU2NyaXB0KSkKICAgICAgICAgICAgIHJldHVybjsKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Y4L1NjcmlwdENhY2hlZEZyYW1lRGF0YS5jcHAgYi9Tb3Vy
Y2UvV2ViQ29yZS9iaW5kaW5ncy92OC9TY3JpcHRDYWNoZWRGcmFtZURhdGEuY3BwCmluZGV4IGFk
Y2EwYzgwNGIwMGIwMTMyYmY4N2Q0NDk1OWMwY2ZjODRjMTllMDcuLjBhODZkNjEyZWY2ZWQ4MGJi
M2JhZTZlYzgxY2NjYTkyZjExMGQ5OTUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRp
bmdzL3Y4L1NjcmlwdENhY2hlZEZyYW1lRGF0YS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYmlu
ZGluZ3MvdjgvU2NyaXB0Q2FjaGVkRnJhbWVEYXRhLmNwcApAQCAtNTksNyArNTksNyBAQCB2b2lk
IFNjcmlwdENhY2hlZEZyYW1lRGF0YTo6cmVzdG9yZShGcmFtZSogZnJhbWUpCiAgICAgaWYgKG1f
Y29udGV4dC5nZXQoKS5Jc0VtcHR5KCkpCiAgICAgICAgIHJldHVybjsKIAotICAgIGlmICghZnJh
bWUtPnNjcmlwdCgpLT5jYW5FeGVjdXRlU2NyaXB0cyhOb3RBYm91dFRvRXhlY3V0ZVNjcmlwdCkp
CisgICAgaWYgKCFmcmFtZSB8fCAhZnJhbWUtPnNjcmlwdCgpLT5jYW5FeGVjdXRlU2NyaXB0cyhO
b3RBYm91dFRvRXhlY3V0ZVNjcmlwdCkpCiAgICAgICAgIHJldHVybjsKIAogICAgIHY4OjpIYW5k
bGVTY29wZSBoYW5kbGVTY29wZTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvRE9N
VGltZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvcGFnZS9ET01UaW1lci5jcHAKaW5kZXggZjllYjAx
YzRjZjZiY2ZmNzQwOGUyMWY5YzZjMjVkNDEyZWY0Yjc3My4uMGE5NGU3ZWY4YzliNDU4ZTFmZjk3
ZjA4NjdhZjUxN2I4ZWY3ODNjMyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGFnZS9ET01U
aW1lci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGFnZS9ET01UaW1lci5jcHAKQEAgLTI3LDcg
KzI3LDYgQEAKICNpbmNsdWRlICJjb25maWcuaCIKICNpbmNsdWRlICJET01UaW1lci5oIgogCi0j
aW5jbHVkZSAiRG9jdW1lbnQuaCIKICNpbmNsdWRlICJJbnNwZWN0b3JJbnN0cnVtZW50YXRpb24u
aCIKICNpbmNsdWRlICJTY2hlZHVsZWRBY3Rpb24uaCIKICNpbmNsdWRlICJTY3JpcHRFeGVjdXRp
b25Db250ZXh0LmgiCkBAIC03MSw5ICs3MCw2IEBAIERPTVRpbWVyOjpET01UaW1lcihTY3JpcHRF
eGVjdXRpb25Db250ZXh0KiBjb250ZXh0LCBQYXNzT3duUHRyPFNjaGVkdWxlZEFjdGlvbj4KICAg
ICAsIG1fb3JpZ2luYWxJbnRlcnZhbChpbnRlcnZhbCkKICAgICAsIG1fc2hvdWxkRm9yd2FyZFVz
ZXJHZXN0dXJlKHNob3VsZEZvcndhcmRVc2VyR2VzdHVyZShpbnRlcnZhbCwgbV9uZXN0aW5nTGV2
ZWwpKQogewotICAgIC8vIEZJWE1FOiByZW1vdmUgb25jZSB3ZSBmb3VuZCBvdXQgdGhlIHJvb3Qg
Y2F1c2UgZm9yIGh0dHA6Ly93ZWJraXQub3JnL2IvNzczNzAKLSAgICBpZiAoc2NyaXB0RXhlY3V0
aW9uQ29udGV4dCgpLT5pc0RvY3VtZW50KCkgJiYgIXN0YXRpY19jYXN0PERvY3VtZW50Kj4oc2Ny
aXB0RXhlY3V0aW9uQ29udGV4dCgpKS0+ZnJhbWUoKSkKLSAgICAgICAgQ1JBU0goKTsKICAgICBz
Y3JpcHRFeGVjdXRpb25Db250ZXh0KCktPmFkZFRpbWVvdXQobV90aW1lb3V0SWQsIHRoaXMpOwog
CiAgICAgZG91YmxlIGludGVydmFsTWlsbGlzZWNvbmRzID0gaW50ZXJ2YWxDbGFtcGVkVG9NaW5p
bXVtKGludGVydmFsLCBjb250ZXh0LT5taW5pbXVtVGltZXJJbnRlcnZhbCgpKTsK
</data>

          </attachment>
      

    </bug>

</bugzilla>