<?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>104947</bug_id>
          
          <creation_ts>2012-12-13 13:53:08 -0800</creation_ts>
          <short_desc>Send a message from WebViewImpl to the compositor to inform about end of flings</short_desc>
          <delta_ts>2012-12-14 18:30:04 -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>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>105067</dependson>
          
          <everconfirmed>1</everconfirmed>
          <reporter>yusufo</reporter>
          <assigned_to>yusufo</assigned_to>
          <cc>abarth</cc>
    
    <cc>aelias</cc>
    
    <cc>dglazkov</cc>
    
    <cc>fishd</cc>
    
    <cc>jamesr</cc>
    
    <cc>klobag</cc>
    
    <cc>noel.gordon</cc>
    
    <cc>rjkroege</cc>
    
    <cc>tkent+wkapi</cc>
    
    <cc>webkit.review.bot</cc>
    
    <cc>yusufo</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>790884</commentid>
    <comment_count>0</comment_count>
    <who name="">yusufo</who>
    <bug_when>2012-12-13 13:53:08 -0800</bug_when>
    <thetext>Send a message from WebViewImpl to the compositor to inform about end of flings</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>790893</commentid>
    <comment_count>1</comment_count>
      <attachid>179329</attachid>
    <who name="">yusufo</who>
    <bug_when>2012-12-13 13:56:22 -0800</bug_when>
    <thetext>Created attachment 179329
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>790944</commentid>
    <comment_count>2</comment_count>
      <attachid>179339</attachid>
    <who name="">yusufo</who>
    <bug_when>2012-12-13 14:37:45 -0800</bug_when>
    <thetext>Created attachment 179339
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>790959</commentid>
    <comment_count>3</comment_count>
      <attachid>179329</attachid>
    <who name="James Robinson">jamesr</who>
    <bug_when>2012-12-13 14:45:41 -0800</bug_when>
    <thetext>Comment on attachment 179329
Patch

View in context: https://bugs.webkit.org/attachment.cgi?id=179329&amp;action=review

I swear I put this feedback up earlier but must have imagined it or a gremlin ate it.  Logic looks sound, needs a bit of naming love methinks

&gt; Source/Platform/chromium/public/WebLayerTreeView.h:162
&gt; +    virtual void mainThreadHasStoppedFlinging() { };

no trailing ;

the &quot;mainThread&quot; part of this isn&apos;t very informative - this API (WebLayerTreeView) is single threaded, so all calls on it are on the main thread.

maybe &quot;didStopFlinging&quot; or something like that?

&gt; Source/WebKit/chromium/src/WebCompositorInputHandlerImpl.h:102
&gt; +    bool m_flingActiveOnMainThread;

you should note either in the variable name or some clear comments that this is conservative - i.e. if this is false, we know definitely that the main thread is not flinging, but if it is true the main thread may or may not be flinging</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>790979</commentid>
    <comment_count>4</comment_count>
    <who name="">yusufo</who>
    <bug_when>2012-12-13 15:00:28 -0800</bug_when>
    <thetext>How about using didStopFlinging for WebLayerTreeView and web_layer_tree_view_impl and using either mainThreadHasStoppedFLinging or mainHasStoppedFlinging starting from and including layer_tree_host? I feel like when it gets to the input handler we should have some mention of it not being a fling on the compositor, but not sure where to make the name switch.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>790984</commentid>
    <comment_count>5</comment_count>
    <who name="James Robinson">jamesr</who>
    <bug_when>2012-12-13 15:06:22 -0800</bug_when>
    <thetext>(In reply to comment #4)
&gt; How about using didStopFlinging for WebLayerTreeView 

Sounds good

&gt; and web_layer_tree_view_impl

soungs good

&gt;  and using either mainThreadHasStoppedFLinging or mainHasStoppedFlinging starting from and including layer_tree_host? I feel like when it gets to the input handler we should have some mention of it not being a fling on the compositor, but not sure where to make the name switch.

Yeah, we should definitely flip names once we switch threads.  Maybe have the call to the proxy be the switching point?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>790989</commentid>
    <comment_count>6</comment_count>
      <attachid>179351</attachid>
    <who name="">yusufo</who>
    <bug_when>2012-12-13 15:17:28 -0800</bug_when>
    <thetext>Created attachment 179351
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>790993</commentid>
    <comment_count>7</comment_count>
      <attachid>179351</attachid>
    <who name="James Robinson">jamesr</who>
    <bug_when>2012-12-13 15:19:27 -0800</bug_when>
    <thetext>Comment on attachment 179351
Patch

R=me</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>790994</commentid>
    <comment_count>8</comment_count>
    <who name="James Robinson">jamesr</who>
    <bug_when>2012-12-13 15:19:39 -0800</bug_when>
    <thetext>Guess this means we have to iterate again on the chromium side - sorry about that.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>791007</commentid>
    <comment_count>9</comment_count>
    <who name="">yusufo</who>
    <bug_when>2012-12-13 15:25:00 -0800</bug_when>
    <thetext>Uploaded the chromium side changes. Looks like I will have to wait for the other change in WebCompositorInputHandlerImpl to be gardened in anyway.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>791033</commentid>
    <comment_count>10</comment_count>
      <attachid>179358</attachid>
    <who name="">yusufo</who>
    <bug_when>2012-12-13 15:48:07 -0800</bug_when>
    <thetext>Created attachment 179358
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>791046</commentid>
    <comment_count>11</comment_count>
    <who name="">yusufo</who>
    <bug_when>2012-12-13 15:55:57 -0800</bug_when>
    <thetext>I think my local repo is up to date now. jamesr@ would you mind giving this a final review and pushing it to the CQ whenever possible?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>791049</commentid>
    <comment_count>12</comment_count>
      <attachid>179358</attachid>
    <who name="James Robinson">jamesr</who>
    <bug_when>2012-12-13 15:57:51 -0800</bug_when>
    <thetext>Comment on attachment 179358
Patch

R+ CQ- for now, will set CQ once the chromium-side implementation of WebInputHandler has landed (and please remind me if I forget).</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>791077</commentid>
    <comment_count>13</comment_count>
    <who name="">yusufo</who>
    <bug_when>2012-12-13 16:22:05 -0800</bug_when>
    <thetext>(In reply to comment #12)
&gt; (From update of attachment 179358 [details])
&gt; R+ CQ- for now, will set CQ once the chromium-side implementation of WebInputHandler has landed (and please remind me if I forget).

I think this one has to go in first? The change to WebInputHandler won&apos;t be an issue, since WebCompositorInputHandlerImpl is the one extending that. WebToCCInputHandlerAdapter extends InputHandler and own a WebInputHandler. So I can&apos;t land the chromium side if WebInputHandler mainThreadHasStoppedFLinginng is not there yet.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>791121</commentid>
    <comment_count>14</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-12-13 16:51:09 -0800</bug_when>
    <thetext>Please wait for approval from abarth@webkit.org, dglazkov@chromium.org, fishd@chromium.org, jamesr@chromium.org or tkent@chromium.org before submitting, as this patch contains changes to the Chromium public API. See also https://trac.webkit.org/wiki/ChromiumWebKitAPI.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>791150</commentid>
    <comment_count>15</comment_count>
      <attachid>179358</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-12-13 17:21:10 -0800</bug_when>
    <thetext>Comment on attachment 179358
Patch

Attachment 179358 did not pass chromium-ews (chromium-xvfb):
Output: http://queues.webkit.org/results/15311478

New failing tests:
accessibility/aria-checkbox-checked.html
animations/3d/matrix-transform-type-animation.html
http/tests/appcache/cyrillic-uri.html
accessibility/anchor-linked-anonymous-block-crash.html
animations/animation-add-events-in-handler.html
http/tests/appcache/deferred-events-delete-while-raising.html
animations/additive-transform-animations.html
animations/3d/replace-filling-transform.html
http/tests/appcache/deferred-events-delete-while-raising-timer.html
accessibility/aria-disabled.html
http/tests/appcache/crash-when-navigating-away-then-back.html
animations/animation-border-overflow.html
animations/animation-direction-alternate-reverse.html
accessibility/accessibility-object-detached.html
http/tests/appcache/abort-cache-ondownloading-manifest-404.html
http/tests/appcache/credential-url.html
animations/animation-controller-drt-api.html
animations/3d/change-transform-in-end-event.html
canvas/philip/tests/2d.canvas.readonly.html
animations/3d/transform-perspective.html
accessibility/accessibility-node-reparent.html
http/tests/appcache/access-via-redirect.php
http/tests/appcache/deferred-events.html
animations/3d/state-at-end-event-transform.html
animations/animation-direction-normal.html
animations/3d/transform-origin-vs-functions.html
accessibility/accessibility-node-memory-management.html
animations/animation-css-rule-types.html
accessibility/adjacent-continuations-cause-assertion-failure.html
accessibility/aria-describedby-on-input.html</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>791192</commentid>
    <comment_count>16</comment_count>
    <who name="">yusufo</who>
    <bug_when>2012-12-13 18:09:58 -0800</bug_when>
    <thetext>Yes, I just verified locally that this one is building by itself(the linux failure for tests is a flake?) and the chromium side one doesn&apos;t pass without the WebInputHandler.h change here.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>791310</commentid>
    <comment_count>17</comment_count>
      <attachid>179358</attachid>
    <who name="James Robinson">jamesr</who>
    <bug_when>2012-12-13 21:20:29 -0800</bug_when>
    <thetext>Comment on attachment 179358
Patch

Oh yes!  Quite right.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>791334</commentid>
    <comment_count>18</comment_count>
      <attachid>179358</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-12-13 22:22:31 -0800</bug_when>
    <thetext>Comment on attachment 179358
Patch

Rejecting attachment 179358 from commit-queue.

New failing tests:
accessibility/aria-checkbox-checked.html
animations/3d/matrix-transform-type-animation.html
http/tests/appcache/cyrillic-uri.html
accessibility/anchor-linked-anonymous-block-crash.html
animations/animation-add-events-in-handler.html
http/tests/appcache/deferred-events-delete-while-raising.html
animations/additive-transform-animations.html
animations/3d/replace-filling-transform.html
http/tests/appcache/deferred-events-delete-while-raising-timer.html
accessibility/aria-disabled.html
http/tests/appcache/crash-when-navigating-away-then-back.html
animations/animation-border-overflow.html
animations/animation-direction-alternate-reverse.html
accessibility/accessibility-object-detached.html
http/tests/appcache/abort-cache-ondownloading-manifest-404.html
http/tests/appcache/credential-url.html
animations/animation-controller-drt-api.html
animations/3d/change-transform-in-end-event.html
canvas/philip/tests/2d.canvas.readonly.html
animations/3d/transform-perspective.html
accessibility/accessibility-node-reparent.html
http/tests/appcache/access-via-redirect.php
http/tests/appcache/deferred-events.html
animations/3d/state-at-end-event-transform.html
animations/animation-direction-normal.html
animations/3d/transform-origin-vs-functions.html
accessibility/accessibility-node-memory-management.html
animations/animation-css-rule-types.html
accessibility/adjacent-continuations-cause-assertion-failure.html
accessibility/aria-describedby-on-input.html
Full output: http://queues.webkit.org/results/15311546</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>791339</commentid>
    <comment_count>19</comment_count>
    <who name="">yusufo</who>
    <bug_when>2012-12-13 22:38:44 -0800</bug_when>
    <thetext>Can&apos;t really tell if the issue is a bot failure/tree breakage but I see &quot;DumpRenderTree crash&quot; on all test failures. Maybe this one will also need to be manually landed?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>791715</commentid>
    <comment_count>20</comment_count>
      <attachid>179358</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-12-14 11:02:03 -0800</bug_when>
    <thetext>Comment on attachment 179358
Patch

Rejecting attachment 179358 from commit-queue.

New failing tests:
accessibility/aria-checkbox-checked.html
animations/3d/matrix-transform-type-animation.html
http/tests/appcache/cyrillic-uri.html
accessibility/anchor-linked-anonymous-block-crash.html
animations/animation-add-events-in-handler.html
http/tests/appcache/deferred-events-delete-while-raising.html
animations/additive-transform-animations.html
animations/3d/replace-filling-transform.html
http/tests/appcache/deferred-events-delete-while-raising-timer.html
accessibility/aria-disabled.html
http/tests/appcache/crash-when-navigating-away-then-back.html
animations/animation-border-overflow.html
animations/animation-direction-alternate-reverse.html
accessibility/accessibility-object-detached.html
http/tests/appcache/abort-cache-ondownloading-manifest-404.html
http/tests/appcache/credential-url.html
http/tests/appcache/access-via-redirect.php
animations/3d/change-transform-in-end-event.html
animations/animation-controller-drt-api.html
animations/3d/transform-perspective.html
accessibility/accessibility-node-reparent.html
http/tests/appcache/deferred-events.html
animations/3d/state-at-end-event-transform.html
animations/animation-direction-normal.html
animations/3d/transform-origin-vs-functions.html
accessibility/accessibility-node-memory-management.html
animations/animation-css-rule-types.html
animations/animation-direction-reverse-fill-mode-hardware.html
accessibility/adjacent-continuations-cause-assertion-failure.html
accessibility/aria-describedby-on-input.html
Full output: http://queues.webkit.org/results/15316789</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>791722</commentid>
    <comment_count>21</comment_count>
      <attachid>179358</attachid>
    <who name="James Robinson">jamesr</who>
    <bug_when>2012-12-14 11:18:14 -0800</bug_when>
    <thetext>Comment on attachment 179358
Patch

View in context: https://bugs.webkit.org/attachment.cgi?id=179358&amp;action=review

&gt; Source/WebKit/chromium/src/WebViewImpl.cpp:710
&gt; +            m_layerTreeView-&gt;didStopFlinging();

or maybe DRT is actually crashing - you need to null check m_layerTreeView here and other places before you deref it</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>791728</commentid>
    <comment_count>22</comment_count>
    <who name="">yusufo</who>
    <bug_when>2012-12-14 11:32:15 -0800</bug_when>
    <thetext>(In reply to comment #21)
&gt; (From update of attachment 179358 [details])
&gt; View in context: https://bugs.webkit.org/attachment.cgi?id=179358&amp;action=review
&gt; 
&gt; &gt; Source/WebKit/chromium/src/WebViewImpl.cpp:710
&gt; &gt; +            m_layerTreeView-&gt;didStopFlinging();
&gt; 
&gt; or maybe DRT is actually crashing - you need to null check m_layerTreeView here and other places before you deref it

Ooops! Yes, I think the one in didCommitLoad was the one biting me. Uploaded another patch with null checks. But it is possible for it to be non-null in didCommitLoad right? Or should I not even bother calling it there?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>791729</commentid>
    <comment_count>23</comment_count>
      <attachid>179505</attachid>
    <who name="">yusufo</who>
    <bug_when>2012-12-14 11:33:15 -0800</bug_when>
    <thetext>Created attachment 179505
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>791774</commentid>
    <comment_count>24</comment_count>
      <attachid>179505</attachid>
    <who name="James Robinson">jamesr</who>
    <bug_when>2012-12-14 12:37:43 -0800</bug_when>
    <thetext>Comment on attachment 179505
Patch

I think it&apos;s possible for m_layerTreeView to be null in any of these calls.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>791805</commentid>
    <comment_count>25</comment_count>
      <attachid>179505</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-12-14 13:18:11 -0800</bug_when>
    <thetext>Comment on attachment 179505
Patch

Clearing flags on attachment: 179505

Committed r137765: &lt;http://trac.webkit.org/changeset/137765&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>791806</commentid>
    <comment_count>26</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-12-14 13:18:16 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>791876</commentid>
    <comment_count>27</comment_count>
    <who name="noel gordon">noel.gordon</who>
    <bug_when>2012-12-14 14:47:46 -0800</bug_when>
    <thetext>webkit-unit-tests began failing with the patch I think.

http://build.webkit.org/builders/Chromium%20Linux%20Release%20%28Tests%29/builds/42406

[----------] Global test environment tear-down
[==========] 490 tests from 63 test cases ran. (7061 ms total)
[  PASSED  ] 485 tests.
[  FAILED  ] 5 tests, listed below:
[  FAILED  ] WebCompositorInputHandlerImplTest.gestureFlingIgnoredTouchpad
[  FAILED  ] WebCompositorInputHandlerImplTest.gestureFlingAnimatesTouchpad
[  FAILED  ] WebCompositorInputHandlerImplTest.gestureFlingTransferResetsTouchpad
[  FAILED  ] WebCompositorInputHandlerImplTest.gestureFlingIgnoredTouchscreen
[  FAILED  ] WebCompositorInputHandlerImplTest.lastInputEventForVSync

Expected?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>791878</commentid>
    <comment_count>28</comment_count>
    <who name="">yusufo</who>
    <bug_when>2012-12-14 14:56:18 -0800</bug_when>
    <thetext>(In reply to comment #27)
&gt; webkit-unit-tests began failing with the patch I think.
&gt; 
&gt; http://build.webkit.org/builders/Chromium%20Linux%20Release%20%28Tests%29/builds/42406
&gt; 
&gt; [----------] Global test environment tear-down
&gt; [==========] 490 tests from 63 test cases ran. (7061 ms total)
&gt; [  PASSED  ] 485 tests.
&gt; [  FAILED  ] 5 tests, listed below:
&gt; [  FAILED  ] WebCompositorInputHandlerImplTest.gestureFlingIgnoredTouchpad
&gt; [  FAILED  ] WebCompositorInputHandlerImplTest.gestureFlingAnimatesTouchpad
&gt; [  FAILED  ] WebCompositorInputHandlerImplTest.gestureFlingTransferResetsTouchpad
&gt; [  FAILED  ] WebCompositorInputHandlerImplTest.gestureFlingIgnoredTouchscreen
&gt; [  FAILED  ] WebCompositorInputHandlerImplTest.lastInputEventForVSync
&gt; 
&gt; Expected?

It might be. This has a chromium side change that is waiting for this to be gardened in. https://codereview.chromium.org/11565022/

(In reply to comment #27)
&gt; webkit-unit-tests began failing with the patch I think.
&gt; 
&gt; http://build.webkit.org/builders/Chromium%20Linux%20Release%20%28Tests%29/builds/42406
&gt; 
&gt; [----------] Global test environment tear-down
&gt; [==========] 490 tests from 63 test cases ran. (7061 ms total)
&gt; [  PASSED  ] 485 tests.
&gt; [  FAILED  ] 5 tests, listed below:
&gt; [  FAILED  ] WebCompositorInputHandlerImplTest.gestureFlingIgnoredTouchpad
&gt; [  FAILED  ] WebCompositorInputHandlerImplTest.gestureFlingAnimatesTouchpad
&gt; [  FAILED  ] WebCompositorInputHandlerImplTest.gestureFlingTransferResetsTouchpad
&gt; [  FAILED  ] WebCompositorInputHandlerImplTest.gestureFlingIgnoredTouchscreen
&gt; [  FAILED  ] WebCompositorInputHandlerImplTest.lastInputEventForVSync
&gt; 
&gt; Expected?

Yes, it looks like I missed to update expected results on some of the tests. Would you like to roll this back or should I upload another one that fixes the test expectations?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>791886</commentid>
    <comment_count>29</comment_count>
    <who name="James Robinson">jamesr</who>
    <bug_when>2012-12-14 15:03:02 -0800</bug_when>
    <thetext>Hmm, I wonder why cr-linux was green, then.

We need this patch to land the chromium side, so I think updating or suppressing the test failures for now is the only option.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>791907</commentid>
    <comment_count>30</comment_count>
    <who name="">yusufo</who>
    <bug_when>2012-12-14 15:24:40 -0800</bug_when>
    <thetext>Uploaded https://bugs.webkit.org/process_bug.cgi

Testing locally to verify</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>791928</commentid>
    <comment_count>31</comment_count>
    <who name="">yusufo</who>
    <bug_when>2012-12-14 15:46:31 -0800</bug_when>
    <thetext>Tested and verified https://bugs.webkit.org/show_bug.cgi?id=105059 resolves these issues.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>791950</commentid>
    <comment_count>32</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-12-14 16:25:05 -0800</bug_when>
    <thetext>Re-opened since this is blocked by bug 105067</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>791952</commentid>
    <comment_count>33</comment_count>
    <who name="James Robinson">jamesr</who>
    <bug_when>2012-12-14 16:26:08 -0800</bug_when>
    <thetext>There are real bugs uncovered by the tests, we&apos;re gonna roll out and try again more carefully.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>791978</commentid>
    <comment_count>34</comment_count>
      <attachid>179560</attachid>
    <who name="">yusufo</who>
    <bug_when>2012-12-14 17:00:16 -0800</bug_when>
    <thetext>Created attachment 179560
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>792020</commentid>
    <comment_count>35</comment_count>
      <attachid>179560</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-12-14 18:29:58 -0800</bug_when>
    <thetext>Comment on attachment 179560
Patch

Clearing flags on attachment: 179560

Committed r137793: &lt;http://trac.webkit.org/changeset/137793&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>792021</commentid>
    <comment_count>36</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-12-14 18:30:04 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>179329</attachid>
            <date>2012-12-13 13:56:22 -0800</date>
            <delta_ts>2012-12-13 14:45:41 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-104947-20121213135342.patch</filename>
            <type>text/plain</type>
            <size>8472</size>
            <attacher>yusufo</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTM3NTcwCmRpZmYgLS1naXQgYS9Tb3VyY2UvUGxhdGZvcm0v
Q2hhbmdlTG9nIGIvU291cmNlL1BsYXRmb3JtL0NoYW5nZUxvZwppbmRleCBhN2RlNGU0NzhhYmRj
N2MxOWVkNWI1YmQ3NzM2OGQwMzE4YmM2MTA3Li44N2JjOGU4NzkxMDQ5MGZkNzkxZjdmOThjOGU5
ODdjZTNkZDEyNjM0IDEwMDY0NAotLS0gYS9Tb3VyY2UvUGxhdGZvcm0vQ2hhbmdlTG9nCisrKyBi
L1NvdXJjZS9QbGF0Zm9ybS9DaGFuZ2VMb2cKQEAgLTEsMyArMSwyMSBAQAorMjAxMi0xMi0xMyAg
WXVzdWYgT3p1eXNhbCAgPHl1c3Vmb0Bnb29nbGUuY29tPgorCisgICAgICAgIFNlbmQgYSBtZXNz
YWdlIGZyb20gV2ViVmlld0ltcGwgdG8gdGhlIGNvbXBvc2l0b3IgdG8gaW5mb3JtIGFib3V0IGVu
ZCBvZiBmbGluZ3MKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dp
P2lkPTEwNDk0NworCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAg
ICAgIFdoZW5ldmVyIHdlIGhhdmUgYSBmbGluZyBhbmltYXRpb24gZmluaXNoZWQgb24gY2FuY2Vs
bGVkIG9uIG1haW4gdGhyZWFkIHRoaXMgc2VuZHMKKyAgICAgICAgYSBtZXNzYWdlIHRoYXQgd2ls
bCBiZSByZWxheWVkIHRvIHRoZSBjb21wb3NpdG9yIGlucHV0IGhhbmRsZXIuIFRoZW4gdGhlIGlu
cHV0IGhhbmRsZXIKKyAgICAgICAga2VlcHMgdHJhY2sgb2YgbWFpbiB0aHJlYWQgZmxpbmcgd2l0
aCBhIGJvb2xlYW4gYW5kIGRvZXNuJ3Qgc2VuZCBmbGluZ0NhbmNlbHMKKyAgICAgICAgdW5uZWNl
c3NhcmlseQorCisgICAgICAgICogY2hyb21pdW0vcHVibGljL1dlYklucHV0SGFuZGxlci5oOgor
ICAgICAgICAoV2ViSW5wdXRIYW5kbGVyKToKKyAgICAgICAgKiBjaHJvbWl1bS9wdWJsaWMvV2Vi
TGF5ZXJUcmVlVmlldy5oOgorICAgICAgICAoV2ViTGF5ZXJUcmVlVmlldyk6CisgICAgICAgIChX
ZWJLaXQ6OldlYkxheWVyVHJlZVZpZXc6Om1haW5UaHJlYWRIYXNTdG9wcGVkRmxpbmdpbmcpOgor
CiAyMDEyLTEyLTEyICBHYXZpbiBQZXRlcnMgIDxnYXZpbnBAY2hyb21pdW0ub3JnPgogCiAgICAg
ICAgIFtjaHJvbWl1bV0gQWRkIGRlc3RydWN0b3IgdG8gV2ViUHJlcmVuZGVyCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvY2hyb21p
dW0vQ2hhbmdlTG9nCmluZGV4IDc5YzQwZGNmNjRmNDQ3MWJhNTE5MmYyMWQwNGRiZGVjMWUzNmYy
NWUuLjUwZGYwNGQ4NjVkNzQzYzZhNjc3YTFiMDExMTBiMGI5NGY4MTM0NGEgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJLaXQvY2hy
b21pdW0vQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjkgQEAKKzIwMTItMTItMTMgIFl1c3VmIE96dXlz
YWwgIDx5dXN1Zm9AZ29vZ2xlLmNvbT4KKworICAgICAgICBTZW5kIGEgbWVzc2FnZSBmcm9tIFdl
YlZpZXdJbXBsIHRvIHRoZSBjb21wb3NpdG9yIHRvIGluZm9ybSBhYm91dCBlbmQgb2YgZmxpbmdz
CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMDQ5NDcK
KworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBXaGVuZXZl
ciB3ZSBoYXZlIGEgZmxpbmcgYW5pbWF0aW9uIGZpbmlzaGVkIG9uIGNhbmNlbGxlZCBvbiBtYWlu
IHRocmVhZCB0aGlzIHNlbmRzCisgICAgICAgIGEgbWVzc2FnZSB0aGF0IHdpbGwgYmUgcmVsYXll
ZCB0byB0aGUgY29tcG9zaXRvciBpbnB1dCBoYW5kbGVyLiBUaGVuIHRoZSBpbnB1dCBoYW5kbGVy
CisgICAgICAgIGtlZXBzIHRyYWNrIG9mIG1haW4gdGhyZWFkIGZsaW5nIHdpdGggYSBib29sZWFu
IGFuZCBkb2Vzbid0IHNlbmQgZmxpbmdDYW5jZWxzCisgICAgICAgIHVubmVjZXNzYXJpbHkKKwor
ICAgICAgICAqIHNyYy9XZWJDb21wb3NpdG9ySW5wdXRIYW5kbGVySW1wbC5jcHA6CisgICAgICAg
IChXZWJLaXQ6OldlYkNvbXBvc2l0b3JJbnB1dEhhbmRsZXJJbXBsOjpXZWJDb21wb3NpdG9ySW5w
dXRIYW5kbGVySW1wbCk6CisgICAgICAgIChXZWJLaXQ6OldlYkNvbXBvc2l0b3JJbnB1dEhhbmRs
ZXJJbXBsOjpoYW5kbGVJbnB1dEV2ZW50SW50ZXJuYWwpOgorICAgICAgICAoV2ViS2l0OjpXZWJD
b21wb3NpdG9ySW5wdXRIYW5kbGVySW1wbDo6aGFuZGxlR2VzdHVyZUZsaW5nKToKKyAgICAgICAg
KFdlYktpdDo6V2ViQ29tcG9zaXRvcklucHV0SGFuZGxlckltcGw6Om1haW5UaHJlYWRIYXNTdG9w
cGVkRmxpbmdpbmcpOgorICAgICAgICAoV2ViS2l0KToKKyAgICAgICAgKiBzcmMvV2ViQ29tcG9z
aXRvcklucHV0SGFuZGxlckltcGwuaDoKKyAgICAgICAgKFdlYkNvbXBvc2l0b3JJbnB1dEhhbmRs
ZXJJbXBsKToKKyAgICAgICAgKiBzcmMvV2ViVmlld0ltcGwuY3BwOgorICAgICAgICAoV2ViS2l0
OjpXZWJWaWV3SW1wbDo6aGFuZGxlR2VzdHVyZUV2ZW50KToKKyAgICAgICAgKFdlYktpdDo6V2Vi
Vmlld0ltcGw6OmhhbmRsZUtleUV2ZW50KToKKyAgICAgICAgKFdlYktpdDo6V2ViVmlld0ltcGw6
OnVwZGF0ZUFuaW1hdGlvbnMpOgorICAgICAgICAoV2ViS2l0OjpXZWJWaWV3SW1wbDo6ZGlkQ29t
bWl0TG9hZCk6CisKIDIwMTItMTItMDcgIExldmkgV2VpbnRyYXViICA8bGV2aXdAY2hyb21pdW0u
b3JnPgogCiAgICAgICAgIEFkZCBzdXBwb3J0IGZvciB0cmFja2luZyBoaXQgdGVzdCByZWN0YW5n
bGVzIHRvIGVuYWJsZSBmYXN0IGV2ZW50IHJlamVjdGlvbiBpbiB0aGUgY29tcG9zaXRvcgpkaWZm
IC0tZ2l0IGEvU291cmNlL1BsYXRmb3JtL2Nocm9taXVtL3B1YmxpYy9XZWJJbnB1dEhhbmRsZXIu
aCBiL1NvdXJjZS9QbGF0Zm9ybS9jaHJvbWl1bS9wdWJsaWMvV2ViSW5wdXRIYW5kbGVyLmgKaW5k
ZXggZGZiMjNkNTI3MTFhODNjYjg1MjdhOGU5YjNhOGMxOTE4NDEyNWVlNS4uZGVjNTE0OTBmMzBk
ZDVmNjc1NmNjMTliZWQ2NTA3Yjc0YWQwNmNlMiAxMDA2NDQKLS0tIGEvU291cmNlL1BsYXRmb3Jt
L2Nocm9taXVtL3B1YmxpYy9XZWJJbnB1dEhhbmRsZXIuaAorKysgYi9Tb3VyY2UvUGxhdGZvcm0v
Y2hyb21pdW0vcHVibGljL1dlYklucHV0SGFuZGxlci5oCkBAIC0zMyw2ICszMyw3IEBAIHB1Ymxp
YzoKIAogICAgIHZpcnR1YWwgdm9pZCBiaW5kVG9DbGllbnQoV2ViSW5wdXRIYW5kbGVyQ2xpZW50
KikgPSAwOwogICAgIHZpcnR1YWwgdm9pZCBhbmltYXRlKGRvdWJsZSBtb25vdG9uaWNUaW1lKSA9
IDA7CisgICAgdmlydHVhbCB2b2lkIG1haW5UaHJlYWRIYXNTdG9wcGVkRmxpbmdpbmcoKSA9IDA7
CiB9OwogCiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvUGxhdGZvcm0vY2hyb21pdW0vcHVibGljL1dl
YkxheWVyVHJlZVZpZXcuaCBiL1NvdXJjZS9QbGF0Zm9ybS9jaHJvbWl1bS9wdWJsaWMvV2ViTGF5
ZXJUcmVlVmlldy5oCmluZGV4IDc4MGJhNWRkYWJmZmU1NDIwYThmYjc0ZjM4YjkyZTkwOTg2MDAw
MGUuLjg0MDM2ODY2ZmE2ZTFmZDNmMWRiOGEzOGQwYzJhYTQxOTc3OGI3YWUgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9QbGF0Zm9ybS9jaHJvbWl1bS9wdWJsaWMvV2ViTGF5ZXJUcmVlVmlldy5oCisrKyBi
L1NvdXJjZS9QbGF0Zm9ybS9jaHJvbWl1bS9wdWJsaWMvV2ViTGF5ZXJUcmVlVmlldy5oCkBAIC0x
NTgsNiArMTU4LDkgQEAgcHVibGljOgogICAgIC8vIG1vZGUuCiAgICAgdmlydHVhbCB2b2lkIHVw
ZGF0ZUFuaW1hdGlvbnMoZG91YmxlIGZyYW1lQmVnaW5UaW1lKSA9IDA7CiAKKyAgICAvLyBSZWxh
eXMgdGhlIGVuZCBvZiBhIGZsaW5nIGFuaW1hdGlvbiBvbiBtYWluIHRocmVhZC4KKyAgICB2aXJ0
dWFsIHZvaWQgbWFpblRocmVhZEhhc1N0b3BwZWRGbGluZ2luZygpIHsgfTsKKwogICAgIC8vIENv
bXBvc2l0ZXMgYW5kIGF0dGVtcHRzIHRvIHJlYWQgYmFjayB0aGUgcmVzdWx0IGludG8gdGhlIHBy
b3ZpZGVkCiAgICAgLy8gYnVmZmVyLiBJZiBpdCB3YXNuJ3QgcG9zc2libGUsIGUuZy4gZHVlIHRv
IGNvbnRleHQgbG9zdCwgd2lsbCByZXR1cm4KICAgICAvLyBmYWxzZS4gUGl4ZWwgZm9ybWF0IGlz
IDMyYml0IChSR0JBKSwgYW5kIHRoZSBwcm92aWRlZCBidWZmZXIgbXVzdCBiZQpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMvV2ViQ29tcG9zaXRvcklucHV0SGFuZGxlcklt
cGwuY3BwIGIvU291cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMvV2ViQ29tcG9zaXRvcklucHV0SGFu
ZGxlckltcGwuY3BwCmluZGV4IDA1ODVmYzkxZTEyN2Y4OTIyNDJlZDE0Njg3YzZkOGU1ZGFkOGRh
MjEuLmY4YzJlNzAzYzE0OWU3Mjg1Y2JhMTc5YjMxYzg5ZWZmZWRhNDVkM2YgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vc3JjL1dlYkNvbXBvc2l0b3JJbnB1dEhhbmRsZXJJbXBs
LmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3NyYy9XZWJDb21wb3NpdG9ySW5wdXRI
YW5kbGVySW1wbC5jcHAKQEAgLTcxLDYgKzcxLDcgQEAgV2ViQ29tcG9zaXRvcklucHV0SGFuZGxl
ckltcGw6OldlYkNvbXBvc2l0b3JJbnB1dEhhbmRsZXJJbXBsKCkKICNlbmRpZgogICAgICwgbV9n
ZXN0dXJlU2Nyb2xsT25JbXBsVGhyZWFkKGZhbHNlKQogICAgICwgbV9nZXN0dXJlUGluY2hPbklt
cGxUaHJlYWQoZmFsc2UpCisgICAgLCBtX2ZsaW5nQWN0aXZlT25NYWluVGhyZWFkKGZhbHNlKQog
ewogfQogCkBAIC0xOTgsNiArMTk5LDggQEAgV2ViQ29tcG9zaXRvcklucHV0SGFuZGxlckltcGw6
OkV2ZW50RGlzcG9zaXRpb24gV2ViQ29tcG9zaXRvcklucHV0SGFuZGxlckltcGw6OmgKICAgICB9
IGVsc2UgaWYgKGV2ZW50LnR5cGUgPT0gV2ViSW5wdXRFdmVudDo6R2VzdHVyZUZsaW5nQ2FuY2Vs
KSB7CiAgICAgICAgIGlmIChjYW5jZWxDdXJyZW50RmxpbmcoKSkKICAgICAgICAgICAgIHJldHVy
biBEaWRIYW5kbGU7CisgICAgICAgIGVsc2UgaWYgKCFtX2ZsaW5nQWN0aXZlT25NYWluVGhyZWFk
KQorICAgICAgICAgICAgcmV0dXJuIERyb3BFdmVudDsKICAgICB9IGVsc2UgaWYgKFdlYklucHV0
RXZlbnQ6OmlzS2V5Ym9hcmRFdmVudFR5cGUoZXZlbnQudHlwZSkpIHsKICAgICAgICAgIGNhbmNl
bEN1cnJlbnRGbGluZygpOwogICAgIH0KQEAgLTIyNCw2ICsyMjcsNyBAQCBXZWJDb21wb3NpdG9y
SW5wdXRIYW5kbGVySW1wbDo6RXZlbnREaXNwb3NpdGlvbiBXZWJDb21wb3NpdG9ySW5wdXRIYW5k
bGVySW1wbDo6aAogICAgIH0KICAgICBjYXNlIFdlYklucHV0SGFuZGxlckNsaWVudDo6U2Nyb2xs
U3RhdHVzT25NYWluVGhyZWFkOiB7CiAgICAgICAgIFRSQUNFX0VWRU5UX0lOU1RBTlQwKCJ3ZWJr
aXQiLCAiV2ViQ29tcG9zaXRvcklucHV0SGFuZGxlckltcGw6OmhhbmRsZUdlc3R1cmVGbGluZzo6
c2Nyb2xsT25NYWluVGhyZWFkIik7CisgICAgICAgIG1fZmxpbmdBY3RpdmVPbk1haW5UaHJlYWQg
PSAgdHJ1ZTsKICAgICAgICAgcmV0dXJuIERpZE5vdEhhbmRsZTsKICAgICB9CiAgICAgY2FzZSBX
ZWJJbnB1dEhhbmRsZXJDbGllbnQ6OlNjcm9sbFN0YXR1c0lnbm9yZWQ6IHsKQEAgLTM0Myw0ICsz
NDcsOSBAQCB2b2lkIFdlYkNvbXBvc2l0b3JJbnB1dEhhbmRsZXJJbXBsOjpzY3JvbGxCeShjb25z
dCBXZWJQb2ludCYgaW5jcmVtZW50KQogICAgIH0KIH0KIAordm9pZCBXZWJDb21wb3NpdG9ySW5w
dXRIYW5kbGVySW1wbDo6bWFpblRocmVhZEhhc1N0b3BwZWRGbGluZ2luZygpCit7CisgICAgbV9m
bGluZ0FjdGl2ZU9uTWFpblRocmVhZCA9ICBmYWxzZTsKK30KKwogfQpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMvV2ViQ29tcG9zaXRvcklucHV0SGFuZGxlckltcGwuaCBi
L1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vc3JjL1dlYkNvbXBvc2l0b3JJbnB1dEhhbmRsZXJJbXBs
LmgKaW5kZXggNWM3OWFkZGZmZTQ5ZDY1MDFiMDU4YzI3MzA5ODA2OTVlYWUxZTBkMy4uYjY1NTIw
YTgzMzgyMGVmYjY1ODE3OWM3NjU3ZDZmMzViOGI4N2FhYiAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YktpdC9jaHJvbWl1bS9zcmMvV2ViQ29tcG9zaXRvcklucHV0SGFuZGxlckltcGwuaAorKysgYi9T
b3VyY2UvV2ViS2l0L2Nocm9taXVtL3NyYy9XZWJDb21wb3NpdG9ySW5wdXRIYW5kbGVySW1wbC5o
CkBAIC02Myw2ICs2Myw3IEBAIHB1YmxpYzoKICAgICAvLyBXZWJJbnB1dEhhbmRsZXIgaW1wbGVt
ZW50YXRpb24uCiAgICAgdmlydHVhbCB2b2lkIGJpbmRUb0NsaWVudChXZWJJbnB1dEhhbmRsZXJD
bGllbnQqKTsKICAgICB2aXJ0dWFsIHZvaWQgYW5pbWF0ZShkb3VibGUgbW9ub3RvbmljVGltZSk7
CisgICAgdmlydHVhbCB2b2lkIG1haW5UaHJlYWRIYXNTdG9wcGVkRmxpbmdpbmcoKTsKIAogICAg
IC8vIFdlYkdlc3R1cmVDdXJ2ZVRhcmdldCBpbXBsZW1lbnRhdGlvbi4KICAgICB2aXJ0dWFsIHZv
aWQgc2Nyb2xsQnkoY29uc3QgV2ViUG9pbnQmKTsKQEAgLTk4LDYgKzk5LDcgQEAgcHJpdmF0ZToK
ICNlbmRpZgogICAgIGJvb2wgbV9nZXN0dXJlU2Nyb2xsT25JbXBsVGhyZWFkOwogICAgIGJvb2wg
bV9nZXN0dXJlUGluY2hPbkltcGxUaHJlYWQ7CisgICAgYm9vbCBtX2ZsaW5nQWN0aXZlT25NYWlu
VGhyZWFkOwogCiAgICAgc3RhdGljIGludCBzX25leHRBdmFpbGFibGVJZGVudGlmaWVyOwogICAg
IHN0YXRpYyBIYXNoU2V0PFdlYkNvbXBvc2l0b3JJbnB1dEhhbmRsZXJJbXBsKj4qIHNfY29tcG9z
aXRvcnM7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3NyYy9XZWJWaWV3SW1w
bC5jcHAgYi9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3NyYy9XZWJWaWV3SW1wbC5jcHAKaW5kZXgg
Njk5MzQxYzNmYzRkYjhhOGYzZjNhMWU2N2RiNjg3Yzk4NzI4YzhmOS4uZTE1MWY0OWYyOWNjM2Y1
NjAwOWQzZTc3MzQ1NDhlNTY1NDQ5ZTI0MyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9jaHJv
bWl1bS9zcmMvV2ViVmlld0ltcGwuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vc3Jj
L1dlYlZpZXdJbXBsLmNwcApAQCAtNzA3LDYgKzcwNyw3IEBAIGJvb2wgV2ViVmlld0ltcGw6Omhh
bmRsZUdlc3R1cmVFdmVudChjb25zdCBXZWJHZXN0dXJlRXZlbnQmIGV2ZW50KQogICAgIGNhc2Ug
V2ViSW5wdXRFdmVudDo6R2VzdHVyZUZsaW5nQ2FuY2VsOgogICAgICAgICBpZiAobV9nZXN0dXJl
QW5pbWF0aW9uKSB7CiAgICAgICAgICAgICBtX2dlc3R1cmVBbmltYXRpb24uY2xlYXIoKTsKKyAg
ICAgICAgICAgIG1fbGF5ZXJUcmVlVmlldy0+bWFpblRocmVhZEhhc1N0b3BwZWRGbGluZ2luZygp
OwogICAgICAgICAgICAgZXZlbnRTd2FsbG93ZWQgPSB0cnVlOwogICAgICAgICB9CiAgICAgICAg
IGJyZWFrOwpAQCAtODU4LDggKzg1OSwxMCBAQCBib29sIFdlYlZpZXdJbXBsOjpoYW5kbGVLZXlF
dmVudChjb25zdCBXZWJLZXlib2FyZEV2ZW50JiBldmVudCkKICAgICAgICAgfHwgKGV2ZW50LnR5
cGUgPT0gV2ViSW5wdXRFdmVudDo6S2V5VXApKTsKIAogICAgIC8vIEhhbHQgYW4gaW4tcHJvZ3Jl
c3MgZmxpbmcgb24gYSBrZXkgZXZlbnQuCi0gICAgaWYgKG1fZ2VzdHVyZUFuaW1hdGlvbikKKyAg
ICBpZiAobV9nZXN0dXJlQW5pbWF0aW9uKSB7CiAgICAgICAgIG1fZ2VzdHVyZUFuaW1hdGlvbi5j
bGVhcigpOworICAgICAgICBtX2xheWVyVHJlZVZpZXctPm1haW5UaHJlYWRIYXNTdG9wcGVkRmxp
bmdpbmcoKTsKKyAgICB9CiAKICAgICAvLyBQbGVhc2UgcmVmZXIgdG8gdGhlIGNvbW1lbnRzIGV4
cGxhaW5pbmcgdGhlIG1fc3VwcHJlc3NOZXh0S2V5cHJlc3NFdmVudAogICAgIC8vIG1lbWJlci4K
QEAgLTE3NjAsOCArMTc2MywxMCBAQCB2b2lkIFdlYlZpZXdJbXBsOjp1cGRhdGVBbmltYXRpb25z
KGRvdWJsZSBtb25vdG9uaWNGcmFtZUJlZ2luVGltZSkKICAgICBpZiAobV9nZXN0dXJlQW5pbWF0
aW9uKSB7CiAgICAgICAgIGlmIChtX2dlc3R1cmVBbmltYXRpb24tPmFuaW1hdGUobW9ub3Rvbmlj
RnJhbWVCZWdpblRpbWUpKQogICAgICAgICAgICAgc2NoZWR1bGVBbmltYXRpb24oKTsKLSAgICAg
ICAgZWxzZQorICAgICAgICBlbHNlIHsKICAgICAgICAgICAgIG1fZ2VzdHVyZUFuaW1hdGlvbi5j
bGVhcigpOworICAgICAgICAgICAgbV9sYXllclRyZWVWaWV3LT5tYWluVGhyZWFkSGFzU3RvcHBl
ZEZsaW5naW5nKCk7CisgICAgICAgIH0KICAgICB9CiAKICAgICBpZiAoIW1fcGFnZSkKQEAgLTM2
NDEsNiArMzY0Niw3IEBAIHZvaWQgV2ViVmlld0ltcGw6OmRpZENvbW1pdExvYWQoYm9vbCogaXNO
ZXdOYXZpZ2F0aW9uLCBib29sIGlzTmF2aWdhdGlvbldpdGhpblBhCiAgICAgLy8gTWFrZSBzdXJl
IGxpbmsgaGlnaGxpZ2h0IGZyb20gcHJldmlvdXMgcGFnZSBpcyBjbGVhcmVkLgogICAgIG1fbGlu
a0hpZ2hsaWdodC5jbGVhcigpOwogICAgIG1fZ2VzdHVyZUFuaW1hdGlvbi5jbGVhcigpOworICAg
IG1fbGF5ZXJUcmVlVmlldy0+bWFpblRocmVhZEhhc1N0b3BwZWRGbGluZ2luZygpOwogICAgIHJl
c2V0U2F2ZWRTY3JvbGxBbmRTY2FsZVN0YXRlKCk7CiB9CiAK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>179339</attachid>
            <date>2012-12-13 14:37:45 -0800</date>
            <delta_ts>2012-12-13 15:17:26 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-104947-20121213143505.patch</filename>
            <type>text/plain</type>
            <size>8472</size>
            <attacher>yusufo</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTM3NTcwCmRpZmYgLS1naXQgYS9Tb3VyY2UvUGxhdGZvcm0v
Q2hhbmdlTG9nIGIvU291cmNlL1BsYXRmb3JtL0NoYW5nZUxvZwppbmRleCBhN2RlNGU0NzhhYmRj
N2MxOWVkNWI1YmQ3NzM2OGQwMzE4YmM2MTA3Li44N2JjOGU4NzkxMDQ5MGZkNzkxZjdmOThjOGU5
ODdjZTNkZDEyNjM0IDEwMDY0NAotLS0gYS9Tb3VyY2UvUGxhdGZvcm0vQ2hhbmdlTG9nCisrKyBi
L1NvdXJjZS9QbGF0Zm9ybS9DaGFuZ2VMb2cKQEAgLTEsMyArMSwyMSBAQAorMjAxMi0xMi0xMyAg
WXVzdWYgT3p1eXNhbCAgPHl1c3Vmb0Bnb29nbGUuY29tPgorCisgICAgICAgIFNlbmQgYSBtZXNz
YWdlIGZyb20gV2ViVmlld0ltcGwgdG8gdGhlIGNvbXBvc2l0b3IgdG8gaW5mb3JtIGFib3V0IGVu
ZCBvZiBmbGluZ3MKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dp
P2lkPTEwNDk0NworCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAg
ICAgIFdoZW5ldmVyIHdlIGhhdmUgYSBmbGluZyBhbmltYXRpb24gZmluaXNoZWQgb24gY2FuY2Vs
bGVkIG9uIG1haW4gdGhyZWFkIHRoaXMgc2VuZHMKKyAgICAgICAgYSBtZXNzYWdlIHRoYXQgd2ls
bCBiZSByZWxheWVkIHRvIHRoZSBjb21wb3NpdG9yIGlucHV0IGhhbmRsZXIuIFRoZW4gdGhlIGlu
cHV0IGhhbmRsZXIKKyAgICAgICAga2VlcHMgdHJhY2sgb2YgbWFpbiB0aHJlYWQgZmxpbmcgd2l0
aCBhIGJvb2xlYW4gYW5kIGRvZXNuJ3Qgc2VuZCBmbGluZ0NhbmNlbHMKKyAgICAgICAgdW5uZWNl
c3NhcmlseQorCisgICAgICAgICogY2hyb21pdW0vcHVibGljL1dlYklucHV0SGFuZGxlci5oOgor
ICAgICAgICAoV2ViSW5wdXRIYW5kbGVyKToKKyAgICAgICAgKiBjaHJvbWl1bS9wdWJsaWMvV2Vi
TGF5ZXJUcmVlVmlldy5oOgorICAgICAgICAoV2ViTGF5ZXJUcmVlVmlldyk6CisgICAgICAgIChX
ZWJLaXQ6OldlYkxheWVyVHJlZVZpZXc6Om1haW5UaHJlYWRIYXNTdG9wcGVkRmxpbmdpbmcpOgor
CiAyMDEyLTEyLTEyICBHYXZpbiBQZXRlcnMgIDxnYXZpbnBAY2hyb21pdW0ub3JnPgogCiAgICAg
ICAgIFtjaHJvbWl1bV0gQWRkIGRlc3RydWN0b3IgdG8gV2ViUHJlcmVuZGVyCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvY2hyb21p
dW0vQ2hhbmdlTG9nCmluZGV4IDc5YzQwZGNmNjRmNDQ3MWJhNTE5MmYyMWQwNGRiZGVjMWUzNmYy
NWUuLjUwZGYwNGQ4NjVkNzQzYzZhNjc3YTFiMDExMTBiMGI5NGY4MTM0NGEgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJLaXQvY2hy
b21pdW0vQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjkgQEAKKzIwMTItMTItMTMgIFl1c3VmIE96dXlz
YWwgIDx5dXN1Zm9AZ29vZ2xlLmNvbT4KKworICAgICAgICBTZW5kIGEgbWVzc2FnZSBmcm9tIFdl
YlZpZXdJbXBsIHRvIHRoZSBjb21wb3NpdG9yIHRvIGluZm9ybSBhYm91dCBlbmQgb2YgZmxpbmdz
CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMDQ5NDcK
KworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBXaGVuZXZl
ciB3ZSBoYXZlIGEgZmxpbmcgYW5pbWF0aW9uIGZpbmlzaGVkIG9uIGNhbmNlbGxlZCBvbiBtYWlu
IHRocmVhZCB0aGlzIHNlbmRzCisgICAgICAgIGEgbWVzc2FnZSB0aGF0IHdpbGwgYmUgcmVsYXll
ZCB0byB0aGUgY29tcG9zaXRvciBpbnB1dCBoYW5kbGVyLiBUaGVuIHRoZSBpbnB1dCBoYW5kbGVy
CisgICAgICAgIGtlZXBzIHRyYWNrIG9mIG1haW4gdGhyZWFkIGZsaW5nIHdpdGggYSBib29sZWFu
IGFuZCBkb2Vzbid0IHNlbmQgZmxpbmdDYW5jZWxzCisgICAgICAgIHVubmVjZXNzYXJpbHkKKwor
ICAgICAgICAqIHNyYy9XZWJDb21wb3NpdG9ySW5wdXRIYW5kbGVySW1wbC5jcHA6CisgICAgICAg
IChXZWJLaXQ6OldlYkNvbXBvc2l0b3JJbnB1dEhhbmRsZXJJbXBsOjpXZWJDb21wb3NpdG9ySW5w
dXRIYW5kbGVySW1wbCk6CisgICAgICAgIChXZWJLaXQ6OldlYkNvbXBvc2l0b3JJbnB1dEhhbmRs
ZXJJbXBsOjpoYW5kbGVJbnB1dEV2ZW50SW50ZXJuYWwpOgorICAgICAgICAoV2ViS2l0OjpXZWJD
b21wb3NpdG9ySW5wdXRIYW5kbGVySW1wbDo6aGFuZGxlR2VzdHVyZUZsaW5nKToKKyAgICAgICAg
KFdlYktpdDo6V2ViQ29tcG9zaXRvcklucHV0SGFuZGxlckltcGw6Om1haW5UaHJlYWRIYXNTdG9w
cGVkRmxpbmdpbmcpOgorICAgICAgICAoV2ViS2l0KToKKyAgICAgICAgKiBzcmMvV2ViQ29tcG9z
aXRvcklucHV0SGFuZGxlckltcGwuaDoKKyAgICAgICAgKFdlYkNvbXBvc2l0b3JJbnB1dEhhbmRs
ZXJJbXBsKToKKyAgICAgICAgKiBzcmMvV2ViVmlld0ltcGwuY3BwOgorICAgICAgICAoV2ViS2l0
OjpXZWJWaWV3SW1wbDo6aGFuZGxlR2VzdHVyZUV2ZW50KToKKyAgICAgICAgKFdlYktpdDo6V2Vi
Vmlld0ltcGw6OmhhbmRsZUtleUV2ZW50KToKKyAgICAgICAgKFdlYktpdDo6V2ViVmlld0ltcGw6
OnVwZGF0ZUFuaW1hdGlvbnMpOgorICAgICAgICAoV2ViS2l0OjpXZWJWaWV3SW1wbDo6ZGlkQ29t
bWl0TG9hZCk6CisKIDIwMTItMTItMDcgIExldmkgV2VpbnRyYXViICA8bGV2aXdAY2hyb21pdW0u
b3JnPgogCiAgICAgICAgIEFkZCBzdXBwb3J0IGZvciB0cmFja2luZyBoaXQgdGVzdCByZWN0YW5n
bGVzIHRvIGVuYWJsZSBmYXN0IGV2ZW50IHJlamVjdGlvbiBpbiB0aGUgY29tcG9zaXRvcgpkaWZm
IC0tZ2l0IGEvU291cmNlL1BsYXRmb3JtL2Nocm9taXVtL3B1YmxpYy9XZWJJbnB1dEhhbmRsZXIu
aCBiL1NvdXJjZS9QbGF0Zm9ybS9jaHJvbWl1bS9wdWJsaWMvV2ViSW5wdXRIYW5kbGVyLmgKaW5k
ZXggZGZiMjNkNTI3MTFhODNjYjg1MjdhOGU5YjNhOGMxOTE4NDEyNWVlNS4uZGVjNTE0OTBmMzBk
ZDVmNjc1NmNjMTliZWQ2NTA3Yjc0YWQwNmNlMiAxMDA2NDQKLS0tIGEvU291cmNlL1BsYXRmb3Jt
L2Nocm9taXVtL3B1YmxpYy9XZWJJbnB1dEhhbmRsZXIuaAorKysgYi9Tb3VyY2UvUGxhdGZvcm0v
Y2hyb21pdW0vcHVibGljL1dlYklucHV0SGFuZGxlci5oCkBAIC0zMyw2ICszMyw3IEBAIHB1Ymxp
YzoKIAogICAgIHZpcnR1YWwgdm9pZCBiaW5kVG9DbGllbnQoV2ViSW5wdXRIYW5kbGVyQ2xpZW50
KikgPSAwOwogICAgIHZpcnR1YWwgdm9pZCBhbmltYXRlKGRvdWJsZSBtb25vdG9uaWNUaW1lKSA9
IDA7CisgICAgdmlydHVhbCB2b2lkIG1haW5UaHJlYWRIYXNTdG9wcGVkRmxpbmdpbmcoKSA9IDA7
CiB9OwogCiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvUGxhdGZvcm0vY2hyb21pdW0vcHVibGljL1dl
YkxheWVyVHJlZVZpZXcuaCBiL1NvdXJjZS9QbGF0Zm9ybS9jaHJvbWl1bS9wdWJsaWMvV2ViTGF5
ZXJUcmVlVmlldy5oCmluZGV4IDc4MGJhNWRkYWJmZmU1NDIwYThmYjc0ZjM4YjkyZTkwOTg2MDAw
MGUuLjg0MDM2ODY2ZmE2ZTFmZDNmMWRiOGEzOGQwYzJhYTQxOTc3OGI3YWUgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9QbGF0Zm9ybS9jaHJvbWl1bS9wdWJsaWMvV2ViTGF5ZXJUcmVlVmlldy5oCisrKyBi
L1NvdXJjZS9QbGF0Zm9ybS9jaHJvbWl1bS9wdWJsaWMvV2ViTGF5ZXJUcmVlVmlldy5oCkBAIC0x
NTgsNiArMTU4LDkgQEAgcHVibGljOgogICAgIC8vIG1vZGUuCiAgICAgdmlydHVhbCB2b2lkIHVw
ZGF0ZUFuaW1hdGlvbnMoZG91YmxlIGZyYW1lQmVnaW5UaW1lKSA9IDA7CiAKKyAgICAvLyBSZWxh
eXMgdGhlIGVuZCBvZiBhIGZsaW5nIGFuaW1hdGlvbiBvbiBtYWluIHRocmVhZC4KKyAgICB2aXJ0
dWFsIHZvaWQgbWFpblRocmVhZEhhc1N0b3BwZWRGbGluZ2luZygpIHsgfTsKKwogICAgIC8vIENv
bXBvc2l0ZXMgYW5kIGF0dGVtcHRzIHRvIHJlYWQgYmFjayB0aGUgcmVzdWx0IGludG8gdGhlIHBy
b3ZpZGVkCiAgICAgLy8gYnVmZmVyLiBJZiBpdCB3YXNuJ3QgcG9zc2libGUsIGUuZy4gZHVlIHRv
IGNvbnRleHQgbG9zdCwgd2lsbCByZXR1cm4KICAgICAvLyBmYWxzZS4gUGl4ZWwgZm9ybWF0IGlz
IDMyYml0IChSR0JBKSwgYW5kIHRoZSBwcm92aWRlZCBidWZmZXIgbXVzdCBiZQpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMvV2ViQ29tcG9zaXRvcklucHV0SGFuZGxlcklt
cGwuY3BwIGIvU291cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMvV2ViQ29tcG9zaXRvcklucHV0SGFu
ZGxlckltcGwuY3BwCmluZGV4IDA1ODVmYzkxZTEyN2Y4OTIyNDJlZDE0Njg3YzZkOGU1ZGFkOGRh
MjEuLmY4YzJlNzAzYzE0OWU3Mjg1Y2JhMTc5YjMxYzg5ZWZmZWRhNDVkM2YgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vc3JjL1dlYkNvbXBvc2l0b3JJbnB1dEhhbmRsZXJJbXBs
LmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3NyYy9XZWJDb21wb3NpdG9ySW5wdXRI
YW5kbGVySW1wbC5jcHAKQEAgLTcxLDYgKzcxLDcgQEAgV2ViQ29tcG9zaXRvcklucHV0SGFuZGxl
ckltcGw6OldlYkNvbXBvc2l0b3JJbnB1dEhhbmRsZXJJbXBsKCkKICNlbmRpZgogICAgICwgbV9n
ZXN0dXJlU2Nyb2xsT25JbXBsVGhyZWFkKGZhbHNlKQogICAgICwgbV9nZXN0dXJlUGluY2hPbklt
cGxUaHJlYWQoZmFsc2UpCisgICAgLCBtX2ZsaW5nQWN0aXZlT25NYWluVGhyZWFkKGZhbHNlKQog
ewogfQogCkBAIC0xOTgsNiArMTk5LDggQEAgV2ViQ29tcG9zaXRvcklucHV0SGFuZGxlckltcGw6
OkV2ZW50RGlzcG9zaXRpb24gV2ViQ29tcG9zaXRvcklucHV0SGFuZGxlckltcGw6OmgKICAgICB9
IGVsc2UgaWYgKGV2ZW50LnR5cGUgPT0gV2ViSW5wdXRFdmVudDo6R2VzdHVyZUZsaW5nQ2FuY2Vs
KSB7CiAgICAgICAgIGlmIChjYW5jZWxDdXJyZW50RmxpbmcoKSkKICAgICAgICAgICAgIHJldHVy
biBEaWRIYW5kbGU7CisgICAgICAgIGVsc2UgaWYgKCFtX2ZsaW5nQWN0aXZlT25NYWluVGhyZWFk
KQorICAgICAgICAgICAgcmV0dXJuIERyb3BFdmVudDsKICAgICB9IGVsc2UgaWYgKFdlYklucHV0
RXZlbnQ6OmlzS2V5Ym9hcmRFdmVudFR5cGUoZXZlbnQudHlwZSkpIHsKICAgICAgICAgIGNhbmNl
bEN1cnJlbnRGbGluZygpOwogICAgIH0KQEAgLTIyNCw2ICsyMjcsNyBAQCBXZWJDb21wb3NpdG9y
SW5wdXRIYW5kbGVySW1wbDo6RXZlbnREaXNwb3NpdGlvbiBXZWJDb21wb3NpdG9ySW5wdXRIYW5k
bGVySW1wbDo6aAogICAgIH0KICAgICBjYXNlIFdlYklucHV0SGFuZGxlckNsaWVudDo6U2Nyb2xs
U3RhdHVzT25NYWluVGhyZWFkOiB7CiAgICAgICAgIFRSQUNFX0VWRU5UX0lOU1RBTlQwKCJ3ZWJr
aXQiLCAiV2ViQ29tcG9zaXRvcklucHV0SGFuZGxlckltcGw6OmhhbmRsZUdlc3R1cmVGbGluZzo6
c2Nyb2xsT25NYWluVGhyZWFkIik7CisgICAgICAgIG1fZmxpbmdBY3RpdmVPbk1haW5UaHJlYWQg
PSAgdHJ1ZTsKICAgICAgICAgcmV0dXJuIERpZE5vdEhhbmRsZTsKICAgICB9CiAgICAgY2FzZSBX
ZWJJbnB1dEhhbmRsZXJDbGllbnQ6OlNjcm9sbFN0YXR1c0lnbm9yZWQ6IHsKQEAgLTM0Myw0ICsz
NDcsOSBAQCB2b2lkIFdlYkNvbXBvc2l0b3JJbnB1dEhhbmRsZXJJbXBsOjpzY3JvbGxCeShjb25z
dCBXZWJQb2ludCYgaW5jcmVtZW50KQogICAgIH0KIH0KIAordm9pZCBXZWJDb21wb3NpdG9ySW5w
dXRIYW5kbGVySW1wbDo6bWFpblRocmVhZEhhc1N0b3BwZWRGbGluZ2luZygpCit7CisgICAgbV9m
bGluZ0FjdGl2ZU9uTWFpblRocmVhZCA9ICBmYWxzZTsKK30KKwogfQpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMvV2ViQ29tcG9zaXRvcklucHV0SGFuZGxlckltcGwuaCBi
L1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vc3JjL1dlYkNvbXBvc2l0b3JJbnB1dEhhbmRsZXJJbXBs
LmgKaW5kZXggNWM3OWFkZGZmZTQ5ZDY1MDFiMDU4YzI3MzA5ODA2OTVlYWUxZTBkMy4uYjY1NTIw
YTgzMzgyMGVmYjY1ODE3OWM3NjU3ZDZmMzViOGI4N2FhYiAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YktpdC9jaHJvbWl1bS9zcmMvV2ViQ29tcG9zaXRvcklucHV0SGFuZGxlckltcGwuaAorKysgYi9T
b3VyY2UvV2ViS2l0L2Nocm9taXVtL3NyYy9XZWJDb21wb3NpdG9ySW5wdXRIYW5kbGVySW1wbC5o
CkBAIC02Myw2ICs2Myw3IEBAIHB1YmxpYzoKICAgICAvLyBXZWJJbnB1dEhhbmRsZXIgaW1wbGVt
ZW50YXRpb24uCiAgICAgdmlydHVhbCB2b2lkIGJpbmRUb0NsaWVudChXZWJJbnB1dEhhbmRsZXJD
bGllbnQqKTsKICAgICB2aXJ0dWFsIHZvaWQgYW5pbWF0ZShkb3VibGUgbW9ub3RvbmljVGltZSk7
CisgICAgdmlydHVhbCB2b2lkIG1haW5UaHJlYWRIYXNTdG9wcGVkRmxpbmdpbmcoKTsKIAogICAg
IC8vIFdlYkdlc3R1cmVDdXJ2ZVRhcmdldCBpbXBsZW1lbnRhdGlvbi4KICAgICB2aXJ0dWFsIHZv
aWQgc2Nyb2xsQnkoY29uc3QgV2ViUG9pbnQmKTsKQEAgLTk4LDYgKzk5LDcgQEAgcHJpdmF0ZToK
ICNlbmRpZgogICAgIGJvb2wgbV9nZXN0dXJlU2Nyb2xsT25JbXBsVGhyZWFkOwogICAgIGJvb2wg
bV9nZXN0dXJlUGluY2hPbkltcGxUaHJlYWQ7CisgICAgYm9vbCBtX2ZsaW5nQWN0aXZlT25NYWlu
VGhyZWFkOwogCiAgICAgc3RhdGljIGludCBzX25leHRBdmFpbGFibGVJZGVudGlmaWVyOwogICAg
IHN0YXRpYyBIYXNoU2V0PFdlYkNvbXBvc2l0b3JJbnB1dEhhbmRsZXJJbXBsKj4qIHNfY29tcG9z
aXRvcnM7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3NyYy9XZWJWaWV3SW1w
bC5jcHAgYi9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3NyYy9XZWJWaWV3SW1wbC5jcHAKaW5kZXgg
Njk5MzQxYzNmYzRkYjhhOGYzZjNhMWU2N2RiNjg3Yzk4NzI4YzhmOS4uZTE1MWY0OWYyOWNjM2Y1
NjAwOWQzZTc3MzQ1NDhlNTY1NDQ5ZTI0MyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9jaHJv
bWl1bS9zcmMvV2ViVmlld0ltcGwuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vc3Jj
L1dlYlZpZXdJbXBsLmNwcApAQCAtNzA3LDYgKzcwNyw3IEBAIGJvb2wgV2ViVmlld0ltcGw6Omhh
bmRsZUdlc3R1cmVFdmVudChjb25zdCBXZWJHZXN0dXJlRXZlbnQmIGV2ZW50KQogICAgIGNhc2Ug
V2ViSW5wdXRFdmVudDo6R2VzdHVyZUZsaW5nQ2FuY2VsOgogICAgICAgICBpZiAobV9nZXN0dXJl
QW5pbWF0aW9uKSB7CiAgICAgICAgICAgICBtX2dlc3R1cmVBbmltYXRpb24uY2xlYXIoKTsKKyAg
ICAgICAgICAgIG1fbGF5ZXJUcmVlVmlldy0+bWFpblRocmVhZEhhc1N0b3BwZWRGbGluZ2luZygp
OwogICAgICAgICAgICAgZXZlbnRTd2FsbG93ZWQgPSB0cnVlOwogICAgICAgICB9CiAgICAgICAg
IGJyZWFrOwpAQCAtODU4LDggKzg1OSwxMCBAQCBib29sIFdlYlZpZXdJbXBsOjpoYW5kbGVLZXlF
dmVudChjb25zdCBXZWJLZXlib2FyZEV2ZW50JiBldmVudCkKICAgICAgICAgfHwgKGV2ZW50LnR5
cGUgPT0gV2ViSW5wdXRFdmVudDo6S2V5VXApKTsKIAogICAgIC8vIEhhbHQgYW4gaW4tcHJvZ3Jl
c3MgZmxpbmcgb24gYSBrZXkgZXZlbnQuCi0gICAgaWYgKG1fZ2VzdHVyZUFuaW1hdGlvbikKKyAg
ICBpZiAobV9nZXN0dXJlQW5pbWF0aW9uKSB7CiAgICAgICAgIG1fZ2VzdHVyZUFuaW1hdGlvbi5j
bGVhcigpOworICAgICAgICBtX2xheWVyVHJlZVZpZXctPm1haW5UaHJlYWRIYXNTdG9wcGVkRmxp
bmdpbmcoKTsKKyAgICB9CiAKICAgICAvLyBQbGVhc2UgcmVmZXIgdG8gdGhlIGNvbW1lbnRzIGV4
cGxhaW5pbmcgdGhlIG1fc3VwcHJlc3NOZXh0S2V5cHJlc3NFdmVudAogICAgIC8vIG1lbWJlci4K
QEAgLTE3NjAsOCArMTc2MywxMCBAQCB2b2lkIFdlYlZpZXdJbXBsOjp1cGRhdGVBbmltYXRpb25z
KGRvdWJsZSBtb25vdG9uaWNGcmFtZUJlZ2luVGltZSkKICAgICBpZiAobV9nZXN0dXJlQW5pbWF0
aW9uKSB7CiAgICAgICAgIGlmIChtX2dlc3R1cmVBbmltYXRpb24tPmFuaW1hdGUobW9ub3Rvbmlj
RnJhbWVCZWdpblRpbWUpKQogICAgICAgICAgICAgc2NoZWR1bGVBbmltYXRpb24oKTsKLSAgICAg
ICAgZWxzZQorICAgICAgICBlbHNlIHsKICAgICAgICAgICAgIG1fZ2VzdHVyZUFuaW1hdGlvbi5j
bGVhcigpOworICAgICAgICAgICAgbV9sYXllclRyZWVWaWV3LT5tYWluVGhyZWFkSGFzU3RvcHBl
ZEZsaW5naW5nKCk7CisgICAgICAgIH0KICAgICB9CiAKICAgICBpZiAoIW1fcGFnZSkKQEAgLTM2
NDEsNiArMzY0Niw3IEBAIHZvaWQgV2ViVmlld0ltcGw6OmRpZENvbW1pdExvYWQoYm9vbCogaXNO
ZXdOYXZpZ2F0aW9uLCBib29sIGlzTmF2aWdhdGlvbldpdGhpblBhCiAgICAgLy8gTWFrZSBzdXJl
IGxpbmsgaGlnaGxpZ2h0IGZyb20gcHJldmlvdXMgcGFnZSBpcyBjbGVhcmVkLgogICAgIG1fbGlu
a0hpZ2hsaWdodC5jbGVhcigpOwogICAgIG1fZ2VzdHVyZUFuaW1hdGlvbi5jbGVhcigpOworICAg
IG1fbGF5ZXJUcmVlVmlldy0+bWFpblRocmVhZEhhc1N0b3BwZWRGbGluZ2luZygpOwogICAgIHJl
c2V0U2F2ZWRTY3JvbGxBbmRTY2FsZVN0YXRlKCk7CiB9CiAK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>179351</attachid>
            <date>2012-12-13 15:17:28 -0800</date>
            <delta_ts>2012-12-13 15:48:04 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-104947-20121213151448.patch</filename>
            <type>text/plain</type>
            <size>8559</size>
            <attacher>yusufo</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTM3NTg3CmRpZmYgLS1naXQgYS9Tb3VyY2UvUGxhdGZvcm0v
Q2hhbmdlTG9nIGIvU291cmNlL1BsYXRmb3JtL0NoYW5nZUxvZwppbmRleCBhN2RlNGU0NzhhYmRj
N2MxOWVkNWI1YmQ3NzM2OGQwMzE4YmM2MTA3Li44N2JjOGU4NzkxMDQ5MGZkNzkxZjdmOThjOGU5
ODdjZTNkZDEyNjM0IDEwMDY0NAotLS0gYS9Tb3VyY2UvUGxhdGZvcm0vQ2hhbmdlTG9nCisrKyBi
L1NvdXJjZS9QbGF0Zm9ybS9DaGFuZ2VMb2cKQEAgLTEsMyArMSwyMSBAQAorMjAxMi0xMi0xMyAg
WXVzdWYgT3p1eXNhbCAgPHl1c3Vmb0Bnb29nbGUuY29tPgorCisgICAgICAgIFNlbmQgYSBtZXNz
YWdlIGZyb20gV2ViVmlld0ltcGwgdG8gdGhlIGNvbXBvc2l0b3IgdG8gaW5mb3JtIGFib3V0IGVu
ZCBvZiBmbGluZ3MKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dp
P2lkPTEwNDk0NworCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAg
ICAgIFdoZW5ldmVyIHdlIGhhdmUgYSBmbGluZyBhbmltYXRpb24gZmluaXNoZWQgb24gY2FuY2Vs
bGVkIG9uIG1haW4gdGhyZWFkIHRoaXMgc2VuZHMKKyAgICAgICAgYSBtZXNzYWdlIHRoYXQgd2ls
bCBiZSByZWxheWVkIHRvIHRoZSBjb21wb3NpdG9yIGlucHV0IGhhbmRsZXIuIFRoZW4gdGhlIGlu
cHV0IGhhbmRsZXIKKyAgICAgICAga2VlcHMgdHJhY2sgb2YgbWFpbiB0aHJlYWQgZmxpbmcgd2l0
aCBhIGJvb2xlYW4gYW5kIGRvZXNuJ3Qgc2VuZCBmbGluZ0NhbmNlbHMKKyAgICAgICAgdW5uZWNl
c3NhcmlseQorCisgICAgICAgICogY2hyb21pdW0vcHVibGljL1dlYklucHV0SGFuZGxlci5oOgor
ICAgICAgICAoV2ViSW5wdXRIYW5kbGVyKToKKyAgICAgICAgKiBjaHJvbWl1bS9wdWJsaWMvV2Vi
TGF5ZXJUcmVlVmlldy5oOgorICAgICAgICAoV2ViTGF5ZXJUcmVlVmlldyk6CisgICAgICAgIChX
ZWJLaXQ6OldlYkxheWVyVHJlZVZpZXc6Om1haW5UaHJlYWRIYXNTdG9wcGVkRmxpbmdpbmcpOgor
CiAyMDEyLTEyLTEyICBHYXZpbiBQZXRlcnMgIDxnYXZpbnBAY2hyb21pdW0ub3JnPgogCiAgICAg
ICAgIFtjaHJvbWl1bV0gQWRkIGRlc3RydWN0b3IgdG8gV2ViUHJlcmVuZGVyCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvY2hyb21p
dW0vQ2hhbmdlTG9nCmluZGV4IDc5YzQwZGNmNjRmNDQ3MWJhNTE5MmYyMWQwNGRiZGVjMWUzNmYy
NWUuLjUwZGYwNGQ4NjVkNzQzYzZhNjc3YTFiMDExMTBiMGI5NGY4MTM0NGEgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJLaXQvY2hy
b21pdW0vQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjkgQEAKKzIwMTItMTItMTMgIFl1c3VmIE96dXlz
YWwgIDx5dXN1Zm9AZ29vZ2xlLmNvbT4KKworICAgICAgICBTZW5kIGEgbWVzc2FnZSBmcm9tIFdl
YlZpZXdJbXBsIHRvIHRoZSBjb21wb3NpdG9yIHRvIGluZm9ybSBhYm91dCBlbmQgb2YgZmxpbmdz
CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMDQ5NDcK
KworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBXaGVuZXZl
ciB3ZSBoYXZlIGEgZmxpbmcgYW5pbWF0aW9uIGZpbmlzaGVkIG9uIGNhbmNlbGxlZCBvbiBtYWlu
IHRocmVhZCB0aGlzIHNlbmRzCisgICAgICAgIGEgbWVzc2FnZSB0aGF0IHdpbGwgYmUgcmVsYXll
ZCB0byB0aGUgY29tcG9zaXRvciBpbnB1dCBoYW5kbGVyLiBUaGVuIHRoZSBpbnB1dCBoYW5kbGVy
CisgICAgICAgIGtlZXBzIHRyYWNrIG9mIG1haW4gdGhyZWFkIGZsaW5nIHdpdGggYSBib29sZWFu
IGFuZCBkb2Vzbid0IHNlbmQgZmxpbmdDYW5jZWxzCisgICAgICAgIHVubmVjZXNzYXJpbHkKKwor
ICAgICAgICAqIHNyYy9XZWJDb21wb3NpdG9ySW5wdXRIYW5kbGVySW1wbC5jcHA6CisgICAgICAg
IChXZWJLaXQ6OldlYkNvbXBvc2l0b3JJbnB1dEhhbmRsZXJJbXBsOjpXZWJDb21wb3NpdG9ySW5w
dXRIYW5kbGVySW1wbCk6CisgICAgICAgIChXZWJLaXQ6OldlYkNvbXBvc2l0b3JJbnB1dEhhbmRs
ZXJJbXBsOjpoYW5kbGVJbnB1dEV2ZW50SW50ZXJuYWwpOgorICAgICAgICAoV2ViS2l0OjpXZWJD
b21wb3NpdG9ySW5wdXRIYW5kbGVySW1wbDo6aGFuZGxlR2VzdHVyZUZsaW5nKToKKyAgICAgICAg
KFdlYktpdDo6V2ViQ29tcG9zaXRvcklucHV0SGFuZGxlckltcGw6Om1haW5UaHJlYWRIYXNTdG9w
cGVkRmxpbmdpbmcpOgorICAgICAgICAoV2ViS2l0KToKKyAgICAgICAgKiBzcmMvV2ViQ29tcG9z
aXRvcklucHV0SGFuZGxlckltcGwuaDoKKyAgICAgICAgKFdlYkNvbXBvc2l0b3JJbnB1dEhhbmRs
ZXJJbXBsKToKKyAgICAgICAgKiBzcmMvV2ViVmlld0ltcGwuY3BwOgorICAgICAgICAoV2ViS2l0
OjpXZWJWaWV3SW1wbDo6aGFuZGxlR2VzdHVyZUV2ZW50KToKKyAgICAgICAgKFdlYktpdDo6V2Vi
Vmlld0ltcGw6OmhhbmRsZUtleUV2ZW50KToKKyAgICAgICAgKFdlYktpdDo6V2ViVmlld0ltcGw6
OnVwZGF0ZUFuaW1hdGlvbnMpOgorICAgICAgICAoV2ViS2l0OjpXZWJWaWV3SW1wbDo6ZGlkQ29t
bWl0TG9hZCk6CisKIDIwMTItMTItMDcgIExldmkgV2VpbnRyYXViICA8bGV2aXdAY2hyb21pdW0u
b3JnPgogCiAgICAgICAgIEFkZCBzdXBwb3J0IGZvciB0cmFja2luZyBoaXQgdGVzdCByZWN0YW5n
bGVzIHRvIGVuYWJsZSBmYXN0IGV2ZW50IHJlamVjdGlvbiBpbiB0aGUgY29tcG9zaXRvcgpkaWZm
IC0tZ2l0IGEvU291cmNlL1BsYXRmb3JtL2Nocm9taXVtL3B1YmxpYy9XZWJJbnB1dEhhbmRsZXIu
aCBiL1NvdXJjZS9QbGF0Zm9ybS9jaHJvbWl1bS9wdWJsaWMvV2ViSW5wdXRIYW5kbGVyLmgKaW5k
ZXggZGZiMjNkNTI3MTFhODNjYjg1MjdhOGU5YjNhOGMxOTE4NDEyNWVlNS4uZGVjNTE0OTBmMzBk
ZDVmNjc1NmNjMTliZWQ2NTA3Yjc0YWQwNmNlMiAxMDA2NDQKLS0tIGEvU291cmNlL1BsYXRmb3Jt
L2Nocm9taXVtL3B1YmxpYy9XZWJJbnB1dEhhbmRsZXIuaAorKysgYi9Tb3VyY2UvUGxhdGZvcm0v
Y2hyb21pdW0vcHVibGljL1dlYklucHV0SGFuZGxlci5oCkBAIC0zMyw2ICszMyw3IEBAIHB1Ymxp
YzoKIAogICAgIHZpcnR1YWwgdm9pZCBiaW5kVG9DbGllbnQoV2ViSW5wdXRIYW5kbGVyQ2xpZW50
KikgPSAwOwogICAgIHZpcnR1YWwgdm9pZCBhbmltYXRlKGRvdWJsZSBtb25vdG9uaWNUaW1lKSA9
IDA7CisgICAgdmlydHVhbCB2b2lkIG1haW5UaHJlYWRIYXNTdG9wcGVkRmxpbmdpbmcoKSA9IDA7
CiB9OwogCiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvUGxhdGZvcm0vY2hyb21pdW0vcHVibGljL1dl
YkxheWVyVHJlZVZpZXcuaCBiL1NvdXJjZS9QbGF0Zm9ybS9jaHJvbWl1bS9wdWJsaWMvV2ViTGF5
ZXJUcmVlVmlldy5oCmluZGV4IDc4MGJhNWRkYWJmZmU1NDIwYThmYjc0ZjM4YjkyZTkwOTg2MDAw
MGUuLjk4MTk2ZThlN2E0N2U5N2IxZmE5NDRjOTc4YjAzNjlkYmYwZmMxN2IgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9QbGF0Zm9ybS9jaHJvbWl1bS9wdWJsaWMvV2ViTGF5ZXJUcmVlVmlldy5oCisrKyBi
L1NvdXJjZS9QbGF0Zm9ybS9jaHJvbWl1bS9wdWJsaWMvV2ViTGF5ZXJUcmVlVmlldy5oCkBAIC0x
NTgsNiArMTU4LDkgQEAgcHVibGljOgogICAgIC8vIG1vZGUuCiAgICAgdmlydHVhbCB2b2lkIHVw
ZGF0ZUFuaW1hdGlvbnMoZG91YmxlIGZyYW1lQmVnaW5UaW1lKSA9IDA7CiAKKyAgICAvLyBSZWxh
eXMgdGhlIGVuZCBvZiBhIGZsaW5nIGFuaW1hdGlvbi4KKyAgICB2aXJ0dWFsIHZvaWQgZGlkU3Rv
cEZsaW5naW5nKCkgeyB9CisKICAgICAvLyBDb21wb3NpdGVzIGFuZCBhdHRlbXB0cyB0byByZWFk
IGJhY2sgdGhlIHJlc3VsdCBpbnRvIHRoZSBwcm92aWRlZAogICAgIC8vIGJ1ZmZlci4gSWYgaXQg
d2Fzbid0IHBvc3NpYmxlLCBlLmcuIGR1ZSB0byBjb250ZXh0IGxvc3QsIHdpbGwgcmV0dXJuCiAg
ICAgLy8gZmFsc2UuIFBpeGVsIGZvcm1hdCBpcyAzMmJpdCAoUkdCQSksIGFuZCB0aGUgcHJvdmlk
ZWQgYnVmZmVyIG11c3QgYmUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vc3Jj
L1dlYkNvbXBvc2l0b3JJbnB1dEhhbmRsZXJJbXBsLmNwcCBiL1NvdXJjZS9XZWJLaXQvY2hyb21p
dW0vc3JjL1dlYkNvbXBvc2l0b3JJbnB1dEhhbmRsZXJJbXBsLmNwcAppbmRleCAwNTg1ZmM5MWUx
MjdmODkyMjQyZWQxNDY4N2M2ZDhlNWRhZDhkYTIxLi5mOGMyZTcwM2MxNDllNzI4NWNiYTE3OWIz
MWM4OWVmZmVkYTQ1ZDNmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3NyYy9X
ZWJDb21wb3NpdG9ySW5wdXRIYW5kbGVySW1wbC5jcHAKKysrIGIvU291cmNlL1dlYktpdC9jaHJv
bWl1bS9zcmMvV2ViQ29tcG9zaXRvcklucHV0SGFuZGxlckltcGwuY3BwCkBAIC03MSw2ICs3MSw3
IEBAIFdlYkNvbXBvc2l0b3JJbnB1dEhhbmRsZXJJbXBsOjpXZWJDb21wb3NpdG9ySW5wdXRIYW5k
bGVySW1wbCgpCiAjZW5kaWYKICAgICAsIG1fZ2VzdHVyZVNjcm9sbE9uSW1wbFRocmVhZChmYWxz
ZSkKICAgICAsIG1fZ2VzdHVyZVBpbmNoT25JbXBsVGhyZWFkKGZhbHNlKQorICAgICwgbV9mbGlu
Z0FjdGl2ZU9uTWFpblRocmVhZChmYWxzZSkKIHsKIH0KIApAQCAtMTk4LDYgKzE5OSw4IEBAIFdl
YkNvbXBvc2l0b3JJbnB1dEhhbmRsZXJJbXBsOjpFdmVudERpc3Bvc2l0aW9uIFdlYkNvbXBvc2l0
b3JJbnB1dEhhbmRsZXJJbXBsOjpoCiAgICAgfSBlbHNlIGlmIChldmVudC50eXBlID09IFdlYklu
cHV0RXZlbnQ6Okdlc3R1cmVGbGluZ0NhbmNlbCkgewogICAgICAgICBpZiAoY2FuY2VsQ3VycmVu
dEZsaW5nKCkpCiAgICAgICAgICAgICByZXR1cm4gRGlkSGFuZGxlOworICAgICAgICBlbHNlIGlm
ICghbV9mbGluZ0FjdGl2ZU9uTWFpblRocmVhZCkKKyAgICAgICAgICAgIHJldHVybiBEcm9wRXZl
bnQ7CiAgICAgfSBlbHNlIGlmIChXZWJJbnB1dEV2ZW50Ojppc0tleWJvYXJkRXZlbnRUeXBlKGV2
ZW50LnR5cGUpKSB7CiAgICAgICAgICBjYW5jZWxDdXJyZW50RmxpbmcoKTsKICAgICB9CkBAIC0y
MjQsNiArMjI3LDcgQEAgV2ViQ29tcG9zaXRvcklucHV0SGFuZGxlckltcGw6OkV2ZW50RGlzcG9z
aXRpb24gV2ViQ29tcG9zaXRvcklucHV0SGFuZGxlckltcGw6OmgKICAgICB9CiAgICAgY2FzZSBX
ZWJJbnB1dEhhbmRsZXJDbGllbnQ6OlNjcm9sbFN0YXR1c09uTWFpblRocmVhZDogewogICAgICAg
ICBUUkFDRV9FVkVOVF9JTlNUQU5UMCgid2Via2l0IiwgIldlYkNvbXBvc2l0b3JJbnB1dEhhbmRs
ZXJJbXBsOjpoYW5kbGVHZXN0dXJlRmxpbmc6OnNjcm9sbE9uTWFpblRocmVhZCIpOworICAgICAg
ICBtX2ZsaW5nQWN0aXZlT25NYWluVGhyZWFkID0gIHRydWU7CiAgICAgICAgIHJldHVybiBEaWRO
b3RIYW5kbGU7CiAgICAgfQogICAgIGNhc2UgV2ViSW5wdXRIYW5kbGVyQ2xpZW50OjpTY3JvbGxT
dGF0dXNJZ25vcmVkOiB7CkBAIC0zNDMsNCArMzQ3LDkgQEAgdm9pZCBXZWJDb21wb3NpdG9ySW5w
dXRIYW5kbGVySW1wbDo6c2Nyb2xsQnkoY29uc3QgV2ViUG9pbnQmIGluY3JlbWVudCkKICAgICB9
CiB9CiAKK3ZvaWQgV2ViQ29tcG9zaXRvcklucHV0SGFuZGxlckltcGw6Om1haW5UaHJlYWRIYXNT
dG9wcGVkRmxpbmdpbmcoKQoreworICAgIG1fZmxpbmdBY3RpdmVPbk1haW5UaHJlYWQgPSAgZmFs
c2U7Cit9CisKIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vc3JjL1dlYkNv
bXBvc2l0b3JJbnB1dEhhbmRsZXJJbXBsLmggYi9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3NyYy9X
ZWJDb21wb3NpdG9ySW5wdXRIYW5kbGVySW1wbC5oCmluZGV4IDVjNzlhZGRmZmU0OWQ2NTAxYjA1
OGMyNzMwOTgwNjk1ZWFlMWUwZDMuLjlkZmFkNjAyYWExODZiMzI0MDBjZDJjMzViYjFkM2JiOGNl
YmNlZGUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vc3JjL1dlYkNvbXBvc2l0
b3JJbnB1dEhhbmRsZXJJbXBsLmgKKysrIGIvU291cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMvV2Vi
Q29tcG9zaXRvcklucHV0SGFuZGxlckltcGwuaApAQCAtNjMsNiArNjMsNyBAQCBwdWJsaWM6CiAg
ICAgLy8gV2ViSW5wdXRIYW5kbGVyIGltcGxlbWVudGF0aW9uLgogICAgIHZpcnR1YWwgdm9pZCBi
aW5kVG9DbGllbnQoV2ViSW5wdXRIYW5kbGVyQ2xpZW50Kik7CiAgICAgdmlydHVhbCB2b2lkIGFu
aW1hdGUoZG91YmxlIG1vbm90b25pY1RpbWUpOworICAgIHZpcnR1YWwgdm9pZCBtYWluVGhyZWFk
SGFzU3RvcHBlZEZsaW5naW5nKCk7CiAKICAgICAvLyBXZWJHZXN0dXJlQ3VydmVUYXJnZXQgaW1w
bGVtZW50YXRpb24uCiAgICAgdmlydHVhbCB2b2lkIHNjcm9sbEJ5KGNvbnN0IFdlYlBvaW50Jik7
CkBAIC05OCw2ICs5OSw5IEBAIHByaXZhdGU6CiAjZW5kaWYKICAgICBib29sIG1fZ2VzdHVyZVNj
cm9sbE9uSW1wbFRocmVhZDsKICAgICBib29sIG1fZ2VzdHVyZVBpbmNoT25JbXBsVGhyZWFkOwor
ICAgIC8vIFRoaXMgaXMgYWx3YXlzIGZhbHNlIHdoZW4gdGhlcmUgYXJlIG5vIGZsaW5ncyBvbiB0
aGUgbWFpbiB0aHJlYWQsIGJ1dCBjb25zZXJ2YXRpdmUgaW4gdGhlCisgICAgLy8gc2Vuc2UgdGhh
dCB3ZSBtaWdodCBub3QgYmUgYWN0dWFsbHkgZmxpbmdpbmcgd2hlbiBpdCBpcyB0cnVlLgorICAg
IGJvb2wgbV9mbGluZ0FjdGl2ZU9uTWFpblRocmVhZDsKIAogICAgIHN0YXRpYyBpbnQgc19uZXh0
QXZhaWxhYmxlSWRlbnRpZmllcjsKICAgICBzdGF0aWMgSGFzaFNldDxXZWJDb21wb3NpdG9ySW5w
dXRIYW5kbGVySW1wbCo+KiBzX2NvbXBvc2l0b3JzOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktp
dC9jaHJvbWl1bS9zcmMvV2ViVmlld0ltcGwuY3BwIGIvU291cmNlL1dlYktpdC9jaHJvbWl1bS9z
cmMvV2ViVmlld0ltcGwuY3BwCmluZGV4IDY5OTM0MWMzZmM0ZGI4YThmM2YzYTFlNjdkYjY4N2M5
ODcyOGM4ZjkuLmIwN2JhZjQwMDVkMGNjOTYyNTViNmNjZTI3Njc0NmUyOTgyNjk2NTEgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vc3JjL1dlYlZpZXdJbXBsLmNwcAorKysgYi9T
b3VyY2UvV2ViS2l0L2Nocm9taXVtL3NyYy9XZWJWaWV3SW1wbC5jcHAKQEAgLTcwNyw2ICs3MDcs
NyBAQCBib29sIFdlYlZpZXdJbXBsOjpoYW5kbGVHZXN0dXJlRXZlbnQoY29uc3QgV2ViR2VzdHVy
ZUV2ZW50JiBldmVudCkKICAgICBjYXNlIFdlYklucHV0RXZlbnQ6Okdlc3R1cmVGbGluZ0NhbmNl
bDoKICAgICAgICAgaWYgKG1fZ2VzdHVyZUFuaW1hdGlvbikgewogICAgICAgICAgICAgbV9nZXN0
dXJlQW5pbWF0aW9uLmNsZWFyKCk7CisgICAgICAgICAgICBtX2xheWVyVHJlZVZpZXctPmRpZFN0
b3BGbGluZ2luZygpOwogICAgICAgICAgICAgZXZlbnRTd2FsbG93ZWQgPSB0cnVlOwogICAgICAg
ICB9CiAgICAgICAgIGJyZWFrOwpAQCAtODU4LDggKzg1OSwxMCBAQCBib29sIFdlYlZpZXdJbXBs
OjpoYW5kbGVLZXlFdmVudChjb25zdCBXZWJLZXlib2FyZEV2ZW50JiBldmVudCkKICAgICAgICAg
fHwgKGV2ZW50LnR5cGUgPT0gV2ViSW5wdXRFdmVudDo6S2V5VXApKTsKIAogICAgIC8vIEhhbHQg
YW4gaW4tcHJvZ3Jlc3MgZmxpbmcgb24gYSBrZXkgZXZlbnQuCi0gICAgaWYgKG1fZ2VzdHVyZUFu
aW1hdGlvbikKKyAgICBpZiAobV9nZXN0dXJlQW5pbWF0aW9uKSB7CiAgICAgICAgIG1fZ2VzdHVy
ZUFuaW1hdGlvbi5jbGVhcigpOworICAgICAgICBtX2xheWVyVHJlZVZpZXctPmRpZFN0b3BGbGlu
Z2luZygpOworICAgIH0KIAogICAgIC8vIFBsZWFzZSByZWZlciB0byB0aGUgY29tbWVudHMgZXhw
bGFpbmluZyB0aGUgbV9zdXBwcmVzc05leHRLZXlwcmVzc0V2ZW50CiAgICAgLy8gbWVtYmVyLgpA
QCAtMTc2MCw4ICsxNzYzLDEwIEBAIHZvaWQgV2ViVmlld0ltcGw6OnVwZGF0ZUFuaW1hdGlvbnMo
ZG91YmxlIG1vbm90b25pY0ZyYW1lQmVnaW5UaW1lKQogICAgIGlmIChtX2dlc3R1cmVBbmltYXRp
b24pIHsKICAgICAgICAgaWYgKG1fZ2VzdHVyZUFuaW1hdGlvbi0+YW5pbWF0ZShtb25vdG9uaWNG
cmFtZUJlZ2luVGltZSkpCiAgICAgICAgICAgICBzY2hlZHVsZUFuaW1hdGlvbigpOwotICAgICAg
ICBlbHNlCisgICAgICAgIGVsc2UgewogICAgICAgICAgICAgbV9nZXN0dXJlQW5pbWF0aW9uLmNs
ZWFyKCk7CisgICAgICAgICAgICBtX2xheWVyVHJlZVZpZXctPmRpZFN0b3BGbGluZ2luZygpOwor
ICAgICAgICB9CiAgICAgfQogCiAgICAgaWYgKCFtX3BhZ2UpCkBAIC0zNjQxLDYgKzM2NDYsNyBA
QCB2b2lkIFdlYlZpZXdJbXBsOjpkaWRDb21taXRMb2FkKGJvb2wqIGlzTmV3TmF2aWdhdGlvbiwg
Ym9vbCBpc05hdmlnYXRpb25XaXRoaW5QYQogICAgIC8vIE1ha2Ugc3VyZSBsaW5rIGhpZ2hsaWdo
dCBmcm9tIHByZXZpb3VzIHBhZ2UgaXMgY2xlYXJlZC4KICAgICBtX2xpbmtIaWdobGlnaHQuY2xl
YXIoKTsKICAgICBtX2dlc3R1cmVBbmltYXRpb24uY2xlYXIoKTsKKyAgICBtX2xheWVyVHJlZVZp
ZXctPmRpZFN0b3BGbGluZ2luZygpOwogICAgIHJlc2V0U2F2ZWRTY3JvbGxBbmRTY2FsZVN0YXRl
KCk7CiB9CiAK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>179358</attachid>
            <date>2012-12-13 15:48:07 -0800</date>
            <delta_ts>2012-12-14 11:33:12 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-104947-20121213154527.patch</filename>
            <type>text/plain</type>
            <size>8599</size>
            <attacher>yusufo</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTM3NjY3CmRpZmYgLS1naXQgYS9Tb3VyY2UvUGxhdGZvcm0v
Q2hhbmdlTG9nIGIvU291cmNlL1BsYXRmb3JtL0NoYW5nZUxvZwppbmRleCBhN2RlNGU0NzhhYmRj
N2MxOWVkNWI1YmQ3NzM2OGQwMzE4YmM2MTA3Li44N2JjOGU4NzkxMDQ5MGZkNzkxZjdmOThjOGU5
ODdjZTNkZDEyNjM0IDEwMDY0NAotLS0gYS9Tb3VyY2UvUGxhdGZvcm0vQ2hhbmdlTG9nCisrKyBi
L1NvdXJjZS9QbGF0Zm9ybS9DaGFuZ2VMb2cKQEAgLTEsMyArMSwyMSBAQAorMjAxMi0xMi0xMyAg
WXVzdWYgT3p1eXNhbCAgPHl1c3Vmb0Bnb29nbGUuY29tPgorCisgICAgICAgIFNlbmQgYSBtZXNz
YWdlIGZyb20gV2ViVmlld0ltcGwgdG8gdGhlIGNvbXBvc2l0b3IgdG8gaW5mb3JtIGFib3V0IGVu
ZCBvZiBmbGluZ3MKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dp
P2lkPTEwNDk0NworCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAg
ICAgIFdoZW5ldmVyIHdlIGhhdmUgYSBmbGluZyBhbmltYXRpb24gZmluaXNoZWQgb24gY2FuY2Vs
bGVkIG9uIG1haW4gdGhyZWFkIHRoaXMgc2VuZHMKKyAgICAgICAgYSBtZXNzYWdlIHRoYXQgd2ls
bCBiZSByZWxheWVkIHRvIHRoZSBjb21wb3NpdG9yIGlucHV0IGhhbmRsZXIuIFRoZW4gdGhlIGlu
cHV0IGhhbmRsZXIKKyAgICAgICAga2VlcHMgdHJhY2sgb2YgbWFpbiB0aHJlYWQgZmxpbmcgd2l0
aCBhIGJvb2xlYW4gYW5kIGRvZXNuJ3Qgc2VuZCBmbGluZ0NhbmNlbHMKKyAgICAgICAgdW5uZWNl
c3NhcmlseQorCisgICAgICAgICogY2hyb21pdW0vcHVibGljL1dlYklucHV0SGFuZGxlci5oOgor
ICAgICAgICAoV2ViSW5wdXRIYW5kbGVyKToKKyAgICAgICAgKiBjaHJvbWl1bS9wdWJsaWMvV2Vi
TGF5ZXJUcmVlVmlldy5oOgorICAgICAgICAoV2ViTGF5ZXJUcmVlVmlldyk6CisgICAgICAgIChX
ZWJLaXQ6OldlYkxheWVyVHJlZVZpZXc6Om1haW5UaHJlYWRIYXNTdG9wcGVkRmxpbmdpbmcpOgor
CiAyMDEyLTEyLTEyICBHYXZpbiBQZXRlcnMgIDxnYXZpbnBAY2hyb21pdW0ub3JnPgogCiAgICAg
ICAgIFtjaHJvbWl1bV0gQWRkIGRlc3RydWN0b3IgdG8gV2ViUHJlcmVuZGVyCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvY2hyb21p
dW0vQ2hhbmdlTG9nCmluZGV4IDM0MjlhZTM5ODI4YjQyZDUxMTBmMDQwNWNkYzM1ZmQxMDc3NjI4
Y2QuLjQ4MDM5NzMwYjc4N2EyY2VhOGZjYjUyZDc4N2VlMTA0OTEyZmU5YzQgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJLaXQvY2hy
b21pdW0vQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjkgQEAKKzIwMTItMTItMTMgIFl1c3VmIE96dXlz
YWwgIDx5dXN1Zm9AZ29vZ2xlLmNvbT4KKworICAgICAgICBTZW5kIGEgbWVzc2FnZSBmcm9tIFdl
YlZpZXdJbXBsIHRvIHRoZSBjb21wb3NpdG9yIHRvIGluZm9ybSBhYm91dCBlbmQgb2YgZmxpbmdz
CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMDQ5NDcK
KworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBXaGVuZXZl
ciB3ZSBoYXZlIGEgZmxpbmcgYW5pbWF0aW9uIGZpbmlzaGVkIG9uIGNhbmNlbGxlZCBvbiBtYWlu
IHRocmVhZCB0aGlzIHNlbmRzCisgICAgICAgIGEgbWVzc2FnZSB0aGF0IHdpbGwgYmUgcmVsYXll
ZCB0byB0aGUgY29tcG9zaXRvciBpbnB1dCBoYW5kbGVyLiBUaGVuIHRoZSBpbnB1dCBoYW5kbGVy
CisgICAgICAgIGtlZXBzIHRyYWNrIG9mIG1haW4gdGhyZWFkIGZsaW5nIHdpdGggYSBib29sZWFu
IGFuZCBkb2Vzbid0IHNlbmQgZmxpbmdDYW5jZWxzCisgICAgICAgIHVubmVjZXNzYXJpbHkKKwor
ICAgICAgICAqIHNyYy9XZWJDb21wb3NpdG9ySW5wdXRIYW5kbGVySW1wbC5jcHA6CisgICAgICAg
IChXZWJLaXQ6OldlYkNvbXBvc2l0b3JJbnB1dEhhbmRsZXJJbXBsOjpXZWJDb21wb3NpdG9ySW5w
dXRIYW5kbGVySW1wbCk6CisgICAgICAgIChXZWJLaXQ6OldlYkNvbXBvc2l0b3JJbnB1dEhhbmRs
ZXJJbXBsOjpoYW5kbGVJbnB1dEV2ZW50SW50ZXJuYWwpOgorICAgICAgICAoV2ViS2l0OjpXZWJD
b21wb3NpdG9ySW5wdXRIYW5kbGVySW1wbDo6aGFuZGxlR2VzdHVyZUZsaW5nKToKKyAgICAgICAg
KFdlYktpdDo6V2ViQ29tcG9zaXRvcklucHV0SGFuZGxlckltcGw6Om1haW5UaHJlYWRIYXNTdG9w
cGVkRmxpbmdpbmcpOgorICAgICAgICAoV2ViS2l0KToKKyAgICAgICAgKiBzcmMvV2ViQ29tcG9z
aXRvcklucHV0SGFuZGxlckltcGwuaDoKKyAgICAgICAgKFdlYkNvbXBvc2l0b3JJbnB1dEhhbmRs
ZXJJbXBsKToKKyAgICAgICAgKiBzcmMvV2ViVmlld0ltcGwuY3BwOgorICAgICAgICAoV2ViS2l0
OjpXZWJWaWV3SW1wbDo6aGFuZGxlR2VzdHVyZUV2ZW50KToKKyAgICAgICAgKFdlYktpdDo6V2Vi
Vmlld0ltcGw6OmhhbmRsZUtleUV2ZW50KToKKyAgICAgICAgKFdlYktpdDo6V2ViVmlld0ltcGw6
OnVwZGF0ZUFuaW1hdGlvbnMpOgorICAgICAgICAoV2ViS2l0OjpXZWJWaWV3SW1wbDo6ZGlkQ29t
bWl0TG9hZCk6CisKIDIwMTItMTItMTMgIEFudG9pbmUgTGFib3VyICA8cGltYW5AY2hyb21pdW0u
b3JnPgogCiAgICAgICAgIFtjaHJvbWl1bV0gU21hbGwgZml4ZXMgZm9yIFdlYlBsdWdpbkNvbnRh
aW5lcjo6c2V0V2ViTGF5ZXIKZGlmZiAtLWdpdCBhL1NvdXJjZS9QbGF0Zm9ybS9jaHJvbWl1bS9w
dWJsaWMvV2ViSW5wdXRIYW5kbGVyLmggYi9Tb3VyY2UvUGxhdGZvcm0vY2hyb21pdW0vcHVibGlj
L1dlYklucHV0SGFuZGxlci5oCmluZGV4IGRmYjIzZDUyNzExYTgzY2I4NTI3YThlOWIzYThjMTkx
ODQxMjVlZTUuLmRlYzUxNDkwZjMwZGQ1ZjY3NTZjYzE5YmVkNjUwN2I3NGFkMDZjZTIgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9QbGF0Zm9ybS9jaHJvbWl1bS9wdWJsaWMvV2ViSW5wdXRIYW5kbGVyLmgK
KysrIGIvU291cmNlL1BsYXRmb3JtL2Nocm9taXVtL3B1YmxpYy9XZWJJbnB1dEhhbmRsZXIuaApA
QCAtMzMsNiArMzMsNyBAQCBwdWJsaWM6CiAKICAgICB2aXJ0dWFsIHZvaWQgYmluZFRvQ2xpZW50
KFdlYklucHV0SGFuZGxlckNsaWVudCopID0gMDsKICAgICB2aXJ0dWFsIHZvaWQgYW5pbWF0ZShk
b3VibGUgbW9ub3RvbmljVGltZSkgPSAwOworICAgIHZpcnR1YWwgdm9pZCBtYWluVGhyZWFkSGFz
U3RvcHBlZEZsaW5naW5nKCkgPSAwOwogfTsKIAogfQpkaWZmIC0tZ2l0IGEvU291cmNlL1BsYXRm
b3JtL2Nocm9taXVtL3B1YmxpYy9XZWJMYXllclRyZWVWaWV3LmggYi9Tb3VyY2UvUGxhdGZvcm0v
Y2hyb21pdW0vcHVibGljL1dlYkxheWVyVHJlZVZpZXcuaAppbmRleCA3ODBiYTVkZGFiZmZlNTQy
MGE4ZmI3NGYzOGI5MmU5MDk4NjAwMDBlLi45ODE5NmU4ZTdhNDdlOTdiMWZhOTQ0Yzk3OGIwMzY5
ZGJmMGZjMTdiIDEwMDY0NAotLS0gYS9Tb3VyY2UvUGxhdGZvcm0vY2hyb21pdW0vcHVibGljL1dl
YkxheWVyVHJlZVZpZXcuaAorKysgYi9Tb3VyY2UvUGxhdGZvcm0vY2hyb21pdW0vcHVibGljL1dl
YkxheWVyVHJlZVZpZXcuaApAQCAtMTU4LDYgKzE1OCw5IEBAIHB1YmxpYzoKICAgICAvLyBtb2Rl
LgogICAgIHZpcnR1YWwgdm9pZCB1cGRhdGVBbmltYXRpb25zKGRvdWJsZSBmcmFtZUJlZ2luVGlt
ZSkgPSAwOwogCisgICAgLy8gUmVsYXlzIHRoZSBlbmQgb2YgYSBmbGluZyBhbmltYXRpb24uCisg
ICAgdmlydHVhbCB2b2lkIGRpZFN0b3BGbGluZ2luZygpIHsgfQorCiAgICAgLy8gQ29tcG9zaXRl
cyBhbmQgYXR0ZW1wdHMgdG8gcmVhZCBiYWNrIHRoZSByZXN1bHQgaW50byB0aGUgcHJvdmlkZWQK
ICAgICAvLyBidWZmZXIuIElmIGl0IHdhc24ndCBwb3NzaWJsZSwgZS5nLiBkdWUgdG8gY29udGV4
dCBsb3N0LCB3aWxsIHJldHVybgogICAgIC8vIGZhbHNlLiBQaXhlbCBmb3JtYXQgaXMgMzJiaXQg
KFJHQkEpLCBhbmQgdGhlIHByb3ZpZGVkIGJ1ZmZlciBtdXN0IGJlCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViS2l0L2Nocm9taXVtL3NyYy9XZWJDb21wb3NpdG9ySW5wdXRIYW5kbGVySW1wbC5jcHAg
Yi9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3NyYy9XZWJDb21wb3NpdG9ySW5wdXRIYW5kbGVySW1w
bC5jcHAKaW5kZXggYTZhZDQxMjJlZGY3ZDVhZjIzY2Y0NTgwMWFlMTZlNGFkZThlZmM2ZS4uODkz
NTBjZTQ1YWQ2NGZhYTQ3MWI4OGQ4MzcyY2YyMzJhNDkxZGRkNyAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYktpdC9jaHJvbWl1bS9zcmMvV2ViQ29tcG9zaXRvcklucHV0SGFuZGxlckltcGwuY3BwCisr
KyBiL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vc3JjL1dlYkNvbXBvc2l0b3JJbnB1dEhhbmRsZXJJ
bXBsLmNwcApAQCAtNzEsNiArNzEsNyBAQCBXZWJDb21wb3NpdG9ySW5wdXRIYW5kbGVySW1wbDo6
V2ViQ29tcG9zaXRvcklucHV0SGFuZGxlckltcGwoKQogI2VuZGlmCiAgICAgLCBtX2dlc3R1cmVT
Y3JvbGxPbkltcGxUaHJlYWQoZmFsc2UpCiAgICAgLCBtX2dlc3R1cmVQaW5jaE9uSW1wbFRocmVh
ZChmYWxzZSkKKyAgICAsIG1fZmxpbmdBY3RpdmVPbk1haW5UaHJlYWQoZmFsc2UpCiB7CiB9CiAK
QEAgLTE5OCw2ICsxOTksOCBAQCBXZWJDb21wb3NpdG9ySW5wdXRIYW5kbGVySW1wbDo6RXZlbnRE
aXNwb3NpdGlvbiBXZWJDb21wb3NpdG9ySW5wdXRIYW5kbGVySW1wbDo6aAogICAgIH0gZWxzZSBp
ZiAoZXZlbnQudHlwZSA9PSBXZWJJbnB1dEV2ZW50OjpHZXN0dXJlRmxpbmdDYW5jZWwpIHsKICAg
ICAgICAgaWYgKGNhbmNlbEN1cnJlbnRGbGluZygpKQogICAgICAgICAgICAgcmV0dXJuIERpZEhh
bmRsZTsKKyAgICAgICAgZWxzZSBpZiAoIW1fZmxpbmdBY3RpdmVPbk1haW5UaHJlYWQpCisgICAg
ICAgICAgICByZXR1cm4gRHJvcEV2ZW50OwogI2lmIEVOQUJMRShUT1VDSF9FVkVOVF9UUkFDS0lO
RykKICAgICB9IGVsc2UgaWYgKGV2ZW50LnR5cGUgPT0gV2ViSW5wdXRFdmVudDo6VG91Y2hTdGFy
dCkgewogICAgICAgICBjb25zdCBXZWJUb3VjaEV2ZW50JiB0b3VjaEV2ZW50ID0gKnN0YXRpY19j
YXN0PGNvbnN0IFdlYlRvdWNoRXZlbnQqPigmZXZlbnQpOwpAQCAtMjMwLDYgKzIzMyw3IEBAIFdl
YkNvbXBvc2l0b3JJbnB1dEhhbmRsZXJJbXBsOjpFdmVudERpc3Bvc2l0aW9uIFdlYkNvbXBvc2l0
b3JJbnB1dEhhbmRsZXJJbXBsOjpoCiAgICAgfQogICAgIGNhc2UgV2ViSW5wdXRIYW5kbGVyQ2xp
ZW50OjpTY3JvbGxTdGF0dXNPbk1haW5UaHJlYWQ6IHsKICAgICAgICAgVFJBQ0VfRVZFTlRfSU5T
VEFOVDAoIndlYmtpdCIsICJXZWJDb21wb3NpdG9ySW5wdXRIYW5kbGVySW1wbDo6aGFuZGxlR2Vz
dHVyZUZsaW5nOjpzY3JvbGxPbk1haW5UaHJlYWQiKTsKKyAgICAgICAgbV9mbGluZ0FjdGl2ZU9u
TWFpblRocmVhZCA9ICB0cnVlOwogICAgICAgICByZXR1cm4gRGlkTm90SGFuZGxlOwogICAgIH0K
ICAgICBjYXNlIFdlYklucHV0SGFuZGxlckNsaWVudDo6U2Nyb2xsU3RhdHVzSWdub3JlZDogewpA
QCAtMzQ5LDQgKzM1Myw5IEBAIHZvaWQgV2ViQ29tcG9zaXRvcklucHV0SGFuZGxlckltcGw6OnNj
cm9sbEJ5KGNvbnN0IFdlYlBvaW50JiBpbmNyZW1lbnQpCiAgICAgfQogfQogCit2b2lkIFdlYkNv
bXBvc2l0b3JJbnB1dEhhbmRsZXJJbXBsOjptYWluVGhyZWFkSGFzU3RvcHBlZEZsaW5naW5nKCkK
K3sKKyAgICBtX2ZsaW5nQWN0aXZlT25NYWluVGhyZWFkID0gIGZhbHNlOworfQorCiB9CmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3NyYy9XZWJDb21wb3NpdG9ySW5wdXRIYW5k
bGVySW1wbC5oIGIvU291cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMvV2ViQ29tcG9zaXRvcklucHV0
SGFuZGxlckltcGwuaAppbmRleCA1Yzc5YWRkZmZlNDlkNjUwMWIwNThjMjczMDk4MDY5NWVhZTFl
MGQzLi45ZGZhZDYwMmFhMTg2YjMyNDAwY2QyYzM1YmIxZDNiYjhjZWJjZWRlIDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3NyYy9XZWJDb21wb3NpdG9ySW5wdXRIYW5kbGVySW1w
bC5oCisrKyBiL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vc3JjL1dlYkNvbXBvc2l0b3JJbnB1dEhh
bmRsZXJJbXBsLmgKQEAgLTYzLDYgKzYzLDcgQEAgcHVibGljOgogICAgIC8vIFdlYklucHV0SGFu
ZGxlciBpbXBsZW1lbnRhdGlvbi4KICAgICB2aXJ0dWFsIHZvaWQgYmluZFRvQ2xpZW50KFdlYklu
cHV0SGFuZGxlckNsaWVudCopOwogICAgIHZpcnR1YWwgdm9pZCBhbmltYXRlKGRvdWJsZSBtb25v
dG9uaWNUaW1lKTsKKyAgICB2aXJ0dWFsIHZvaWQgbWFpblRocmVhZEhhc1N0b3BwZWRGbGluZ2lu
ZygpOwogCiAgICAgLy8gV2ViR2VzdHVyZUN1cnZlVGFyZ2V0IGltcGxlbWVudGF0aW9uLgogICAg
IHZpcnR1YWwgdm9pZCBzY3JvbGxCeShjb25zdCBXZWJQb2ludCYpOwpAQCAtOTgsNiArOTksOSBA
QCBwcml2YXRlOgogI2VuZGlmCiAgICAgYm9vbCBtX2dlc3R1cmVTY3JvbGxPbkltcGxUaHJlYWQ7
CiAgICAgYm9vbCBtX2dlc3R1cmVQaW5jaE9uSW1wbFRocmVhZDsKKyAgICAvLyBUaGlzIGlzIGFs
d2F5cyBmYWxzZSB3aGVuIHRoZXJlIGFyZSBubyBmbGluZ3Mgb24gdGhlIG1haW4gdGhyZWFkLCBi
dXQgY29uc2VydmF0aXZlIGluIHRoZQorICAgIC8vIHNlbnNlIHRoYXQgd2UgbWlnaHQgbm90IGJl
IGFjdHVhbGx5IGZsaW5naW5nIHdoZW4gaXQgaXMgdHJ1ZS4KKyAgICBib29sIG1fZmxpbmdBY3Rp
dmVPbk1haW5UaHJlYWQ7CiAKICAgICBzdGF0aWMgaW50IHNfbmV4dEF2YWlsYWJsZUlkZW50aWZp
ZXI7CiAgICAgc3RhdGljIEhhc2hTZXQ8V2ViQ29tcG9zaXRvcklucHV0SGFuZGxlckltcGwqPiog
c19jb21wb3NpdG9yczsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vc3JjL1dl
YlZpZXdJbXBsLmNwcCBiL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vc3JjL1dlYlZpZXdJbXBsLmNw
cAppbmRleCA2OTkzNDFjM2ZjNGRiOGE4ZjNmM2ExZTY3ZGI2ODdjOTg3MjhjOGY5Li5iMDdiYWY0
MDA1ZDBjYzk2MjU1YjZjY2UyNzY3NDZlMjk4MjY5NjUxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
S2l0L2Nocm9taXVtL3NyYy9XZWJWaWV3SW1wbC5jcHAKKysrIGIvU291cmNlL1dlYktpdC9jaHJv
bWl1bS9zcmMvV2ViVmlld0ltcGwuY3BwCkBAIC03MDcsNiArNzA3LDcgQEAgYm9vbCBXZWJWaWV3
SW1wbDo6aGFuZGxlR2VzdHVyZUV2ZW50KGNvbnN0IFdlYkdlc3R1cmVFdmVudCYgZXZlbnQpCiAg
ICAgY2FzZSBXZWJJbnB1dEV2ZW50OjpHZXN0dXJlRmxpbmdDYW5jZWw6CiAgICAgICAgIGlmICht
X2dlc3R1cmVBbmltYXRpb24pIHsKICAgICAgICAgICAgIG1fZ2VzdHVyZUFuaW1hdGlvbi5jbGVh
cigpOworICAgICAgICAgICAgbV9sYXllclRyZWVWaWV3LT5kaWRTdG9wRmxpbmdpbmcoKTsKICAg
ICAgICAgICAgIGV2ZW50U3dhbGxvd2VkID0gdHJ1ZTsKICAgICAgICAgfQogICAgICAgICBicmVh
azsKQEAgLTg1OCw4ICs4NTksMTAgQEAgYm9vbCBXZWJWaWV3SW1wbDo6aGFuZGxlS2V5RXZlbnQo
Y29uc3QgV2ViS2V5Ym9hcmRFdmVudCYgZXZlbnQpCiAgICAgICAgIHx8IChldmVudC50eXBlID09
IFdlYklucHV0RXZlbnQ6OktleVVwKSk7CiAKICAgICAvLyBIYWx0IGFuIGluLXByb2dyZXNzIGZs
aW5nIG9uIGEga2V5IGV2ZW50LgotICAgIGlmIChtX2dlc3R1cmVBbmltYXRpb24pCisgICAgaWYg
KG1fZ2VzdHVyZUFuaW1hdGlvbikgewogICAgICAgICBtX2dlc3R1cmVBbmltYXRpb24uY2xlYXIo
KTsKKyAgICAgICAgbV9sYXllclRyZWVWaWV3LT5kaWRTdG9wRmxpbmdpbmcoKTsKKyAgICB9CiAK
ICAgICAvLyBQbGVhc2UgcmVmZXIgdG8gdGhlIGNvbW1lbnRzIGV4cGxhaW5pbmcgdGhlIG1fc3Vw
cHJlc3NOZXh0S2V5cHJlc3NFdmVudAogICAgIC8vIG1lbWJlci4KQEAgLTE3NjAsOCArMTc2Mywx
MCBAQCB2b2lkIFdlYlZpZXdJbXBsOjp1cGRhdGVBbmltYXRpb25zKGRvdWJsZSBtb25vdG9uaWNG
cmFtZUJlZ2luVGltZSkKICAgICBpZiAobV9nZXN0dXJlQW5pbWF0aW9uKSB7CiAgICAgICAgIGlm
IChtX2dlc3R1cmVBbmltYXRpb24tPmFuaW1hdGUobW9ub3RvbmljRnJhbWVCZWdpblRpbWUpKQog
ICAgICAgICAgICAgc2NoZWR1bGVBbmltYXRpb24oKTsKLSAgICAgICAgZWxzZQorICAgICAgICBl
bHNlIHsKICAgICAgICAgICAgIG1fZ2VzdHVyZUFuaW1hdGlvbi5jbGVhcigpOworICAgICAgICAg
ICAgbV9sYXllclRyZWVWaWV3LT5kaWRTdG9wRmxpbmdpbmcoKTsKKyAgICAgICAgfQogICAgIH0K
IAogICAgIGlmICghbV9wYWdlKQpAQCAtMzY0MSw2ICszNjQ2LDcgQEAgdm9pZCBXZWJWaWV3SW1w
bDo6ZGlkQ29tbWl0TG9hZChib29sKiBpc05ld05hdmlnYXRpb24sIGJvb2wgaXNOYXZpZ2F0aW9u
V2l0aGluUGEKICAgICAvLyBNYWtlIHN1cmUgbGluayBoaWdobGlnaHQgZnJvbSBwcmV2aW91cyBw
YWdlIGlzIGNsZWFyZWQuCiAgICAgbV9saW5rSGlnaGxpZ2h0LmNsZWFyKCk7CiAgICAgbV9nZXN0
dXJlQW5pbWF0aW9uLmNsZWFyKCk7CisgICAgbV9sYXllclRyZWVWaWV3LT5kaWRTdG9wRmxpbmdp
bmcoKTsKICAgICByZXNldFNhdmVkU2Nyb2xsQW5kU2NhbGVTdGF0ZSgpOwogfQogCg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>179505</attachid>
            <date>2012-12-14 11:33:15 -0800</date>
            <delta_ts>2012-12-14 17:00:12 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-104947-20121214113034.patch</filename>
            <type>text/plain</type>
            <size>8711</size>
            <attacher>yusufo</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTM3NzUxCmRpZmYgLS1naXQgYS9Tb3VyY2UvUGxhdGZvcm0v
Q2hhbmdlTG9nIGIvU291cmNlL1BsYXRmb3JtL0NoYW5nZUxvZwppbmRleCBhN2RlNGU0NzhhYmRj
N2MxOWVkNWI1YmQ3NzM2OGQwMzE4YmM2MTA3Li44N2JjOGU4NzkxMDQ5MGZkNzkxZjdmOThjOGU5
ODdjZTNkZDEyNjM0IDEwMDY0NAotLS0gYS9Tb3VyY2UvUGxhdGZvcm0vQ2hhbmdlTG9nCisrKyBi
L1NvdXJjZS9QbGF0Zm9ybS9DaGFuZ2VMb2cKQEAgLTEsMyArMSwyMSBAQAorMjAxMi0xMi0xMyAg
WXVzdWYgT3p1eXNhbCAgPHl1c3Vmb0Bnb29nbGUuY29tPgorCisgICAgICAgIFNlbmQgYSBtZXNz
YWdlIGZyb20gV2ViVmlld0ltcGwgdG8gdGhlIGNvbXBvc2l0b3IgdG8gaW5mb3JtIGFib3V0IGVu
ZCBvZiBmbGluZ3MKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dp
P2lkPTEwNDk0NworCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAg
ICAgIFdoZW5ldmVyIHdlIGhhdmUgYSBmbGluZyBhbmltYXRpb24gZmluaXNoZWQgb24gY2FuY2Vs
bGVkIG9uIG1haW4gdGhyZWFkIHRoaXMgc2VuZHMKKyAgICAgICAgYSBtZXNzYWdlIHRoYXQgd2ls
bCBiZSByZWxheWVkIHRvIHRoZSBjb21wb3NpdG9yIGlucHV0IGhhbmRsZXIuIFRoZW4gdGhlIGlu
cHV0IGhhbmRsZXIKKyAgICAgICAga2VlcHMgdHJhY2sgb2YgbWFpbiB0aHJlYWQgZmxpbmcgd2l0
aCBhIGJvb2xlYW4gYW5kIGRvZXNuJ3Qgc2VuZCBmbGluZ0NhbmNlbHMKKyAgICAgICAgdW5uZWNl
c3NhcmlseQorCisgICAgICAgICogY2hyb21pdW0vcHVibGljL1dlYklucHV0SGFuZGxlci5oOgor
ICAgICAgICAoV2ViSW5wdXRIYW5kbGVyKToKKyAgICAgICAgKiBjaHJvbWl1bS9wdWJsaWMvV2Vi
TGF5ZXJUcmVlVmlldy5oOgorICAgICAgICAoV2ViTGF5ZXJUcmVlVmlldyk6CisgICAgICAgIChX
ZWJLaXQ6OldlYkxheWVyVHJlZVZpZXc6Om1haW5UaHJlYWRIYXNTdG9wcGVkRmxpbmdpbmcpOgor
CiAyMDEyLTEyLTEyICBHYXZpbiBQZXRlcnMgIDxnYXZpbnBAY2hyb21pdW0ub3JnPgogCiAgICAg
ICAgIFtjaHJvbWl1bV0gQWRkIGRlc3RydWN0b3IgdG8gV2ViUHJlcmVuZGVyCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvY2hyb21p
dW0vQ2hhbmdlTG9nCmluZGV4IDdhYzY0YjQyZDE2M2IwYWMyNjQ5MDU1NTZkODc1YTQyNDczMWEy
OWQuLjQzYTRhZDZhY2FkMDY4ODRiNTA4NmJhMjMxMDI5YWNjMjBiMjk0YjcgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJLaXQvY2hy
b21pdW0vQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjkgQEAKKzIwMTItMTItMTMgIFl1c3VmIE96dXlz
YWwgIDx5dXN1Zm9AZ29vZ2xlLmNvbT4KKworICAgICAgICBTZW5kIGEgbWVzc2FnZSBmcm9tIFdl
YlZpZXdJbXBsIHRvIHRoZSBjb21wb3NpdG9yIHRvIGluZm9ybSBhYm91dCBlbmQgb2YgZmxpbmdz
CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMDQ5NDcK
KworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBXaGVuZXZl
ciB3ZSBoYXZlIGEgZmxpbmcgYW5pbWF0aW9uIGZpbmlzaGVkIG9uIGNhbmNlbGxlZCBvbiBtYWlu
IHRocmVhZCB0aGlzIHNlbmRzCisgICAgICAgIGEgbWVzc2FnZSB0aGF0IHdpbGwgYmUgcmVsYXll
ZCB0byB0aGUgY29tcG9zaXRvciBpbnB1dCBoYW5kbGVyLiBUaGVuIHRoZSBpbnB1dCBoYW5kbGVy
CisgICAgICAgIGtlZXBzIHRyYWNrIG9mIG1haW4gdGhyZWFkIGZsaW5nIHdpdGggYSBib29sZWFu
IGFuZCBkb2Vzbid0IHNlbmQgZmxpbmdDYW5jZWxzCisgICAgICAgIHVubmVjZXNzYXJpbHkKKwor
ICAgICAgICAqIHNyYy9XZWJDb21wb3NpdG9ySW5wdXRIYW5kbGVySW1wbC5jcHA6CisgICAgICAg
IChXZWJLaXQ6OldlYkNvbXBvc2l0b3JJbnB1dEhhbmRsZXJJbXBsOjpXZWJDb21wb3NpdG9ySW5w
dXRIYW5kbGVySW1wbCk6CisgICAgICAgIChXZWJLaXQ6OldlYkNvbXBvc2l0b3JJbnB1dEhhbmRs
ZXJJbXBsOjpoYW5kbGVJbnB1dEV2ZW50SW50ZXJuYWwpOgorICAgICAgICAoV2ViS2l0OjpXZWJD
b21wb3NpdG9ySW5wdXRIYW5kbGVySW1wbDo6aGFuZGxlR2VzdHVyZUZsaW5nKToKKyAgICAgICAg
KFdlYktpdDo6V2ViQ29tcG9zaXRvcklucHV0SGFuZGxlckltcGw6Om1haW5UaHJlYWRIYXNTdG9w
cGVkRmxpbmdpbmcpOgorICAgICAgICAoV2ViS2l0KToKKyAgICAgICAgKiBzcmMvV2ViQ29tcG9z
aXRvcklucHV0SGFuZGxlckltcGwuaDoKKyAgICAgICAgKFdlYkNvbXBvc2l0b3JJbnB1dEhhbmRs
ZXJJbXBsKToKKyAgICAgICAgKiBzcmMvV2ViVmlld0ltcGwuY3BwOgorICAgICAgICAoV2ViS2l0
OjpXZWJWaWV3SW1wbDo6aGFuZGxlR2VzdHVyZUV2ZW50KToKKyAgICAgICAgKFdlYktpdDo6V2Vi
Vmlld0ltcGw6OmhhbmRsZUtleUV2ZW50KToKKyAgICAgICAgKFdlYktpdDo6V2ViVmlld0ltcGw6
OnVwZGF0ZUFuaW1hdGlvbnMpOgorICAgICAgICAoV2ViS2l0OjpXZWJWaWV3SW1wbDo6ZGlkQ29t
bWl0TG9hZCk6CisKIDIwMTItMTItMTQgIFN0ZXBoZW4gV2hpdGUgIDxzZW5vcmJsYW5jb0BjaHJv
bWl1bS5vcmc+CiAKICAgICAgICAgVW5yZXZpZXdlZC4gIFJvbGxlZCBERVBTLgpkaWZmIC0tZ2l0
IGEvU291cmNlL1BsYXRmb3JtL2Nocm9taXVtL3B1YmxpYy9XZWJJbnB1dEhhbmRsZXIuaCBiL1Nv
dXJjZS9QbGF0Zm9ybS9jaHJvbWl1bS9wdWJsaWMvV2ViSW5wdXRIYW5kbGVyLmgKaW5kZXggZGZi
MjNkNTI3MTFhODNjYjg1MjdhOGU5YjNhOGMxOTE4NDEyNWVlNS4uZGVjNTE0OTBmMzBkZDVmNjc1
NmNjMTliZWQ2NTA3Yjc0YWQwNmNlMiAxMDA2NDQKLS0tIGEvU291cmNlL1BsYXRmb3JtL2Nocm9t
aXVtL3B1YmxpYy9XZWJJbnB1dEhhbmRsZXIuaAorKysgYi9Tb3VyY2UvUGxhdGZvcm0vY2hyb21p
dW0vcHVibGljL1dlYklucHV0SGFuZGxlci5oCkBAIC0zMyw2ICszMyw3IEBAIHB1YmxpYzoKIAog
ICAgIHZpcnR1YWwgdm9pZCBiaW5kVG9DbGllbnQoV2ViSW5wdXRIYW5kbGVyQ2xpZW50KikgPSAw
OwogICAgIHZpcnR1YWwgdm9pZCBhbmltYXRlKGRvdWJsZSBtb25vdG9uaWNUaW1lKSA9IDA7Cisg
ICAgdmlydHVhbCB2b2lkIG1haW5UaHJlYWRIYXNTdG9wcGVkRmxpbmdpbmcoKSA9IDA7CiB9Owog
CiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvUGxhdGZvcm0vY2hyb21pdW0vcHVibGljL1dlYkxheWVy
VHJlZVZpZXcuaCBiL1NvdXJjZS9QbGF0Zm9ybS9jaHJvbWl1bS9wdWJsaWMvV2ViTGF5ZXJUcmVl
Vmlldy5oCmluZGV4IDc4MGJhNWRkYWJmZmU1NDIwYThmYjc0ZjM4YjkyZTkwOTg2MDAwMGUuLjk4
MTk2ZThlN2E0N2U5N2IxZmE5NDRjOTc4YjAzNjlkYmYwZmMxN2IgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9QbGF0Zm9ybS9jaHJvbWl1bS9wdWJsaWMvV2ViTGF5ZXJUcmVlVmlldy5oCisrKyBiL1NvdXJj
ZS9QbGF0Zm9ybS9jaHJvbWl1bS9wdWJsaWMvV2ViTGF5ZXJUcmVlVmlldy5oCkBAIC0xNTgsNiAr
MTU4LDkgQEAgcHVibGljOgogICAgIC8vIG1vZGUuCiAgICAgdmlydHVhbCB2b2lkIHVwZGF0ZUFu
aW1hdGlvbnMoZG91YmxlIGZyYW1lQmVnaW5UaW1lKSA9IDA7CiAKKyAgICAvLyBSZWxheXMgdGhl
IGVuZCBvZiBhIGZsaW5nIGFuaW1hdGlvbi4KKyAgICB2aXJ0dWFsIHZvaWQgZGlkU3RvcEZsaW5n
aW5nKCkgeyB9CisKICAgICAvLyBDb21wb3NpdGVzIGFuZCBhdHRlbXB0cyB0byByZWFkIGJhY2sg
dGhlIHJlc3VsdCBpbnRvIHRoZSBwcm92aWRlZAogICAgIC8vIGJ1ZmZlci4gSWYgaXQgd2Fzbid0
IHBvc3NpYmxlLCBlLmcuIGR1ZSB0byBjb250ZXh0IGxvc3QsIHdpbGwgcmV0dXJuCiAgICAgLy8g
ZmFsc2UuIFBpeGVsIGZvcm1hdCBpcyAzMmJpdCAoUkdCQSksIGFuZCB0aGUgcHJvdmlkZWQgYnVm
ZmVyIG11c3QgYmUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vc3JjL1dlYkNv
bXBvc2l0b3JJbnB1dEhhbmRsZXJJbXBsLmNwcCBiL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vc3Jj
L1dlYkNvbXBvc2l0b3JJbnB1dEhhbmRsZXJJbXBsLmNwcAppbmRleCBhNmFkNDEyMmVkZjdkNWFm
MjNjZjQ1ODAxYWUxNmU0YWRlOGVmYzZlLi44OTM1MGNlNDVhZDY0ZmFhNDcxYjg4ZDgzNzJjZjIz
MmE0OTFkZGQ3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3NyYy9XZWJDb21w
b3NpdG9ySW5wdXRIYW5kbGVySW1wbC5jcHAKKysrIGIvU291cmNlL1dlYktpdC9jaHJvbWl1bS9z
cmMvV2ViQ29tcG9zaXRvcklucHV0SGFuZGxlckltcGwuY3BwCkBAIC03MSw2ICs3MSw3IEBAIFdl
YkNvbXBvc2l0b3JJbnB1dEhhbmRsZXJJbXBsOjpXZWJDb21wb3NpdG9ySW5wdXRIYW5kbGVySW1w
bCgpCiAjZW5kaWYKICAgICAsIG1fZ2VzdHVyZVNjcm9sbE9uSW1wbFRocmVhZChmYWxzZSkKICAg
ICAsIG1fZ2VzdHVyZVBpbmNoT25JbXBsVGhyZWFkKGZhbHNlKQorICAgICwgbV9mbGluZ0FjdGl2
ZU9uTWFpblRocmVhZChmYWxzZSkKIHsKIH0KIApAQCAtMTk4LDYgKzE5OSw4IEBAIFdlYkNvbXBv
c2l0b3JJbnB1dEhhbmRsZXJJbXBsOjpFdmVudERpc3Bvc2l0aW9uIFdlYkNvbXBvc2l0b3JJbnB1
dEhhbmRsZXJJbXBsOjpoCiAgICAgfSBlbHNlIGlmIChldmVudC50eXBlID09IFdlYklucHV0RXZl
bnQ6Okdlc3R1cmVGbGluZ0NhbmNlbCkgewogICAgICAgICBpZiAoY2FuY2VsQ3VycmVudEZsaW5n
KCkpCiAgICAgICAgICAgICByZXR1cm4gRGlkSGFuZGxlOworICAgICAgICBlbHNlIGlmICghbV9m
bGluZ0FjdGl2ZU9uTWFpblRocmVhZCkKKyAgICAgICAgICAgIHJldHVybiBEcm9wRXZlbnQ7CiAj
aWYgRU5BQkxFKFRPVUNIX0VWRU5UX1RSQUNLSU5HKQogICAgIH0gZWxzZSBpZiAoZXZlbnQudHlw
ZSA9PSBXZWJJbnB1dEV2ZW50OjpUb3VjaFN0YXJ0KSB7CiAgICAgICAgIGNvbnN0IFdlYlRvdWNo
RXZlbnQmIHRvdWNoRXZlbnQgPSAqc3RhdGljX2Nhc3Q8Y29uc3QgV2ViVG91Y2hFdmVudCo+KCZl
dmVudCk7CkBAIC0yMzAsNiArMjMzLDcgQEAgV2ViQ29tcG9zaXRvcklucHV0SGFuZGxlckltcGw6
OkV2ZW50RGlzcG9zaXRpb24gV2ViQ29tcG9zaXRvcklucHV0SGFuZGxlckltcGw6OmgKICAgICB9
CiAgICAgY2FzZSBXZWJJbnB1dEhhbmRsZXJDbGllbnQ6OlNjcm9sbFN0YXR1c09uTWFpblRocmVh
ZDogewogICAgICAgICBUUkFDRV9FVkVOVF9JTlNUQU5UMCgid2Via2l0IiwgIldlYkNvbXBvc2l0
b3JJbnB1dEhhbmRsZXJJbXBsOjpoYW5kbGVHZXN0dXJlRmxpbmc6OnNjcm9sbE9uTWFpblRocmVh
ZCIpOworICAgICAgICBtX2ZsaW5nQWN0aXZlT25NYWluVGhyZWFkID0gIHRydWU7CiAgICAgICAg
IHJldHVybiBEaWROb3RIYW5kbGU7CiAgICAgfQogICAgIGNhc2UgV2ViSW5wdXRIYW5kbGVyQ2xp
ZW50OjpTY3JvbGxTdGF0dXNJZ25vcmVkOiB7CkBAIC0zNDksNCArMzUzLDkgQEAgdm9pZCBXZWJD
b21wb3NpdG9ySW5wdXRIYW5kbGVySW1wbDo6c2Nyb2xsQnkoY29uc3QgV2ViUG9pbnQmIGluY3Jl
bWVudCkKICAgICB9CiB9CiAKK3ZvaWQgV2ViQ29tcG9zaXRvcklucHV0SGFuZGxlckltcGw6Om1h
aW5UaHJlYWRIYXNTdG9wcGVkRmxpbmdpbmcoKQoreworICAgIG1fZmxpbmdBY3RpdmVPbk1haW5U
aHJlYWQgPSAgZmFsc2U7Cit9CisKIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvY2hyb21p
dW0vc3JjL1dlYkNvbXBvc2l0b3JJbnB1dEhhbmRsZXJJbXBsLmggYi9Tb3VyY2UvV2ViS2l0L2No
cm9taXVtL3NyYy9XZWJDb21wb3NpdG9ySW5wdXRIYW5kbGVySW1wbC5oCmluZGV4IDVjNzlhZGRm
ZmU0OWQ2NTAxYjA1OGMyNzMwOTgwNjk1ZWFlMWUwZDMuLjlkZmFkNjAyYWExODZiMzI0MDBjZDJj
MzViYjFkM2JiOGNlYmNlZGUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vc3Jj
L1dlYkNvbXBvc2l0b3JJbnB1dEhhbmRsZXJJbXBsLmgKKysrIGIvU291cmNlL1dlYktpdC9jaHJv
bWl1bS9zcmMvV2ViQ29tcG9zaXRvcklucHV0SGFuZGxlckltcGwuaApAQCAtNjMsNiArNjMsNyBA
QCBwdWJsaWM6CiAgICAgLy8gV2ViSW5wdXRIYW5kbGVyIGltcGxlbWVudGF0aW9uLgogICAgIHZp
cnR1YWwgdm9pZCBiaW5kVG9DbGllbnQoV2ViSW5wdXRIYW5kbGVyQ2xpZW50Kik7CiAgICAgdmly
dHVhbCB2b2lkIGFuaW1hdGUoZG91YmxlIG1vbm90b25pY1RpbWUpOworICAgIHZpcnR1YWwgdm9p
ZCBtYWluVGhyZWFkSGFzU3RvcHBlZEZsaW5naW5nKCk7CiAKICAgICAvLyBXZWJHZXN0dXJlQ3Vy
dmVUYXJnZXQgaW1wbGVtZW50YXRpb24uCiAgICAgdmlydHVhbCB2b2lkIHNjcm9sbEJ5KGNvbnN0
IFdlYlBvaW50Jik7CkBAIC05OCw2ICs5OSw5IEBAIHByaXZhdGU6CiAjZW5kaWYKICAgICBib29s
IG1fZ2VzdHVyZVNjcm9sbE9uSW1wbFRocmVhZDsKICAgICBib29sIG1fZ2VzdHVyZVBpbmNoT25J
bXBsVGhyZWFkOworICAgIC8vIFRoaXMgaXMgYWx3YXlzIGZhbHNlIHdoZW4gdGhlcmUgYXJlIG5v
IGZsaW5ncyBvbiB0aGUgbWFpbiB0aHJlYWQsIGJ1dCBjb25zZXJ2YXRpdmUgaW4gdGhlCisgICAg
Ly8gc2Vuc2UgdGhhdCB3ZSBtaWdodCBub3QgYmUgYWN0dWFsbHkgZmxpbmdpbmcgd2hlbiBpdCBp
cyB0cnVlLgorICAgIGJvb2wgbV9mbGluZ0FjdGl2ZU9uTWFpblRocmVhZDsKIAogICAgIHN0YXRp
YyBpbnQgc19uZXh0QXZhaWxhYmxlSWRlbnRpZmllcjsKICAgICBzdGF0aWMgSGFzaFNldDxXZWJD
b21wb3NpdG9ySW5wdXRIYW5kbGVySW1wbCo+KiBzX2NvbXBvc2l0b3JzOwpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMvV2ViVmlld0ltcGwuY3BwIGIvU291cmNlL1dlYktp
dC9jaHJvbWl1bS9zcmMvV2ViVmlld0ltcGwuY3BwCmluZGV4IDQxZWU1MGEzNzQ5ODNiYzcyYjUw
OGExM2I1ZDMwYjViY2FhMjEwY2MuLjhmZmRmNTNiYTdkNzBlZWQzNjY1ZGYyM2ZiZjVhMTE1ZjE1
ZmZhYTMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vc3JjL1dlYlZpZXdJbXBs
LmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3NyYy9XZWJWaWV3SW1wbC5jcHAKQEAg
LTcwNyw2ICs3MDcsOCBAQCBib29sIFdlYlZpZXdJbXBsOjpoYW5kbGVHZXN0dXJlRXZlbnQoY29u
c3QgV2ViR2VzdHVyZUV2ZW50JiBldmVudCkKICAgICBjYXNlIFdlYklucHV0RXZlbnQ6Okdlc3R1
cmVGbGluZ0NhbmNlbDoKICAgICAgICAgaWYgKG1fZ2VzdHVyZUFuaW1hdGlvbikgewogICAgICAg
ICAgICAgbV9nZXN0dXJlQW5pbWF0aW9uLmNsZWFyKCk7CisgICAgICAgICAgICBpZiAobV9sYXll
clRyZWVWaWV3KQorICAgICAgICAgICAgICAgIG1fbGF5ZXJUcmVlVmlldy0+ZGlkU3RvcEZsaW5n
aW5nKCk7CiAgICAgICAgICAgICBldmVudFN3YWxsb3dlZCA9IHRydWU7CiAgICAgICAgIH0KICAg
ICAgICAgYnJlYWs7CkBAIC04NTgsOCArODYwLDExIEBAIGJvb2wgV2ViVmlld0ltcGw6OmhhbmRs
ZUtleUV2ZW50KGNvbnN0IFdlYktleWJvYXJkRXZlbnQmIGV2ZW50KQogICAgICAgICB8fCAoZXZl
bnQudHlwZSA9PSBXZWJJbnB1dEV2ZW50OjpLZXlVcCkpOwogCiAgICAgLy8gSGFsdCBhbiBpbi1w
cm9ncmVzcyBmbGluZyBvbiBhIGtleSBldmVudC4KLSAgICBpZiAobV9nZXN0dXJlQW5pbWF0aW9u
KQorICAgIGlmIChtX2dlc3R1cmVBbmltYXRpb24pIHsKICAgICAgICAgbV9nZXN0dXJlQW5pbWF0
aW9uLmNsZWFyKCk7CisgICAgICAgIGlmIChtX2xheWVyVHJlZVZpZXcpCisgICAgICAgICAgICBt
X2xheWVyVHJlZVZpZXctPmRpZFN0b3BGbGluZ2luZygpOworICAgIH0KIAogICAgIC8vIFBsZWFz
ZSByZWZlciB0byB0aGUgY29tbWVudHMgZXhwbGFpbmluZyB0aGUgbV9zdXBwcmVzc05leHRLZXlw
cmVzc0V2ZW50CiAgICAgLy8gbWVtYmVyLgpAQCAtMTc2NSw4ICsxNzcwLDExIEBAIHZvaWQgV2Vi
Vmlld0ltcGw6OnVwZGF0ZUFuaW1hdGlvbnMoZG91YmxlIG1vbm90b25pY0ZyYW1lQmVnaW5UaW1l
KQogICAgIGlmIChtX2dlc3R1cmVBbmltYXRpb24pIHsKICAgICAgICAgaWYgKG1fZ2VzdHVyZUFu
aW1hdGlvbi0+YW5pbWF0ZShtb25vdG9uaWNGcmFtZUJlZ2luVGltZSkpCiAgICAgICAgICAgICBz
Y2hlZHVsZUFuaW1hdGlvbigpOwotICAgICAgICBlbHNlCisgICAgICAgIGVsc2UgewogICAgICAg
ICAgICAgbV9nZXN0dXJlQW5pbWF0aW9uLmNsZWFyKCk7CisgICAgICAgICAgICBpZiAobV9sYXll
clRyZWVWaWV3KQorICAgICAgICAgICAgICAgIG1fbGF5ZXJUcmVlVmlldy0+ZGlkU3RvcEZsaW5n
aW5nKCk7CisgICAgICAgIH0KICAgICB9CiAKICAgICBpZiAoIW1fcGFnZSkKQEAgLTM2NDYsNiAr
MzY1NCw4IEBAIHZvaWQgV2ViVmlld0ltcGw6OmRpZENvbW1pdExvYWQoYm9vbCogaXNOZXdOYXZp
Z2F0aW9uLCBib29sIGlzTmF2aWdhdGlvbldpdGhpblBhCiAgICAgLy8gTWFrZSBzdXJlIGxpbmsg
aGlnaGxpZ2h0IGZyb20gcHJldmlvdXMgcGFnZSBpcyBjbGVhcmVkLgogICAgIG1fbGlua0hpZ2hs
aWdodC5jbGVhcigpOwogICAgIG1fZ2VzdHVyZUFuaW1hdGlvbi5jbGVhcigpOworICAgIGlmICht
X2xheWVyVHJlZVZpZXcpCisgICAgICAgIG1fbGF5ZXJUcmVlVmlldy0+ZGlkU3RvcEZsaW5naW5n
KCk7CiAgICAgcmVzZXRTYXZlZFNjcm9sbEFuZFNjYWxlU3RhdGUoKTsKIH0KIAo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>179560</attachid>
            <date>2012-12-14 17:00:16 -0800</date>
            <delta_ts>2012-12-14 18:29:58 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-104947-20121214165735.patch</filename>
            <type>text/plain</type>
            <size>10263</size>
            <attacher>yusufo</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTM3NzUxCmRpZmYgLS1naXQgYS9Tb3VyY2UvUGxhdGZvcm0v
Q2hhbmdlTG9nIGIvU291cmNlL1BsYXRmb3JtL0NoYW5nZUxvZwppbmRleCBhN2RlNGU0NzhhYmRj
N2MxOWVkNWI1YmQ3NzM2OGQwMzE4YmM2MTA3Li44N2JjOGU4NzkxMDQ5MGZkNzkxZjdmOThjOGU5
ODdjZTNkZDEyNjM0IDEwMDY0NAotLS0gYS9Tb3VyY2UvUGxhdGZvcm0vQ2hhbmdlTG9nCisrKyBi
L1NvdXJjZS9QbGF0Zm9ybS9DaGFuZ2VMb2cKQEAgLTEsMyArMSwyMSBAQAorMjAxMi0xMi0xMyAg
WXVzdWYgT3p1eXNhbCAgPHl1c3Vmb0Bnb29nbGUuY29tPgorCisgICAgICAgIFNlbmQgYSBtZXNz
YWdlIGZyb20gV2ViVmlld0ltcGwgdG8gdGhlIGNvbXBvc2l0b3IgdG8gaW5mb3JtIGFib3V0IGVu
ZCBvZiBmbGluZ3MKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dp
P2lkPTEwNDk0NworCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAg
ICAgIFdoZW5ldmVyIHdlIGhhdmUgYSBmbGluZyBhbmltYXRpb24gZmluaXNoZWQgb24gY2FuY2Vs
bGVkIG9uIG1haW4gdGhyZWFkIHRoaXMgc2VuZHMKKyAgICAgICAgYSBtZXNzYWdlIHRoYXQgd2ls
bCBiZSByZWxheWVkIHRvIHRoZSBjb21wb3NpdG9yIGlucHV0IGhhbmRsZXIuIFRoZW4gdGhlIGlu
cHV0IGhhbmRsZXIKKyAgICAgICAga2VlcHMgdHJhY2sgb2YgbWFpbiB0aHJlYWQgZmxpbmcgd2l0
aCBhIGJvb2xlYW4gYW5kIGRvZXNuJ3Qgc2VuZCBmbGluZ0NhbmNlbHMKKyAgICAgICAgdW5uZWNl
c3NhcmlseQorCisgICAgICAgICogY2hyb21pdW0vcHVibGljL1dlYklucHV0SGFuZGxlci5oOgor
ICAgICAgICAoV2ViSW5wdXRIYW5kbGVyKToKKyAgICAgICAgKiBjaHJvbWl1bS9wdWJsaWMvV2Vi
TGF5ZXJUcmVlVmlldy5oOgorICAgICAgICAoV2ViTGF5ZXJUcmVlVmlldyk6CisgICAgICAgIChX
ZWJLaXQ6OldlYkxheWVyVHJlZVZpZXc6Om1haW5UaHJlYWRIYXNTdG9wcGVkRmxpbmdpbmcpOgor
CiAyMDEyLTEyLTEyICBHYXZpbiBQZXRlcnMgIDxnYXZpbnBAY2hyb21pdW0ub3JnPgogCiAgICAg
ICAgIFtjaHJvbWl1bV0gQWRkIGRlc3RydWN0b3IgdG8gV2ViUHJlcmVuZGVyCmRpZmYgLS1naXQg
YS9Tb3VyY2UvUGxhdGZvcm0vY2hyb21pdW0vcHVibGljL1dlYklucHV0SGFuZGxlci5oIGIvU291
cmNlL1BsYXRmb3JtL2Nocm9taXVtL3B1YmxpYy9XZWJJbnB1dEhhbmRsZXIuaAppbmRleCBkZmIy
M2Q1MjcxMWE4M2NiODUyN2E4ZTliM2E4YzE5MTg0MTI1ZWU1Li5kZWM1MTQ5MGYzMGRkNWY2NzU2
Y2MxOWJlZDY1MDdiNzRhZDA2Y2UyIDEwMDY0NAotLS0gYS9Tb3VyY2UvUGxhdGZvcm0vY2hyb21p
dW0vcHVibGljL1dlYklucHV0SGFuZGxlci5oCisrKyBiL1NvdXJjZS9QbGF0Zm9ybS9jaHJvbWl1
bS9wdWJsaWMvV2ViSW5wdXRIYW5kbGVyLmgKQEAgLTMzLDYgKzMzLDcgQEAgcHVibGljOgogCiAg
ICAgdmlydHVhbCB2b2lkIGJpbmRUb0NsaWVudChXZWJJbnB1dEhhbmRsZXJDbGllbnQqKSA9IDA7
CiAgICAgdmlydHVhbCB2b2lkIGFuaW1hdGUoZG91YmxlIG1vbm90b25pY1RpbWUpID0gMDsKKyAg
ICB2aXJ0dWFsIHZvaWQgbWFpblRocmVhZEhhc1N0b3BwZWRGbGluZ2luZygpID0gMDsKIH07CiAK
IH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9QbGF0Zm9ybS9jaHJvbWl1bS9wdWJsaWMvV2ViTGF5ZXJU
cmVlVmlldy5oIGIvU291cmNlL1BsYXRmb3JtL2Nocm9taXVtL3B1YmxpYy9XZWJMYXllclRyZWVW
aWV3LmgKaW5kZXggNzgwYmE1ZGRhYmZmZTU0MjBhOGZiNzRmMzhiOTJlOTA5ODYwMDAwZS4uOTgx
OTZlOGU3YTQ3ZTk3YjFmYTk0NGM5NzhiMDM2OWRiZjBmYzE3YiAxMDA2NDQKLS0tIGEvU291cmNl
L1BsYXRmb3JtL2Nocm9taXVtL3B1YmxpYy9XZWJMYXllclRyZWVWaWV3LmgKKysrIGIvU291cmNl
L1BsYXRmb3JtL2Nocm9taXVtL3B1YmxpYy9XZWJMYXllclRyZWVWaWV3LmgKQEAgLTE1OCw2ICsx
NTgsOSBAQCBwdWJsaWM6CiAgICAgLy8gbW9kZS4KICAgICB2aXJ0dWFsIHZvaWQgdXBkYXRlQW5p
bWF0aW9ucyhkb3VibGUgZnJhbWVCZWdpblRpbWUpID0gMDsKIAorICAgIC8vIFJlbGF5cyB0aGUg
ZW5kIG9mIGEgZmxpbmcgYW5pbWF0aW9uLgorICAgIHZpcnR1YWwgdm9pZCBkaWRTdG9wRmxpbmdp
bmcoKSB7IH0KKwogICAgIC8vIENvbXBvc2l0ZXMgYW5kIGF0dGVtcHRzIHRvIHJlYWQgYmFjayB0
aGUgcmVzdWx0IGludG8gdGhlIHByb3ZpZGVkCiAgICAgLy8gYnVmZmVyLiBJZiBpdCB3YXNuJ3Qg
cG9zc2libGUsIGUuZy4gZHVlIHRvIGNvbnRleHQgbG9zdCwgd2lsbCByZXR1cm4KICAgICAvLyBm
YWxzZS4gUGl4ZWwgZm9ybWF0IGlzIDMyYml0IChSR0JBKSwgYW5kIHRoZSBwcm92aWRlZCBidWZm
ZXIgbXVzdCBiZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMvV2ViQ29t
cG9zaXRvcklucHV0SGFuZGxlckltcGwuY3BwIGIvU291cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMv
V2ViQ29tcG9zaXRvcklucHV0SGFuZGxlckltcGwuY3BwCmluZGV4IGE2YWQ0MTIyZWRmN2Q1YWYy
M2NmNDU4MDFhZTE2ZTRhZGU4ZWZjNmUuLmY1MGZlNTIwNDA3YWI5MDk4MDI3MzNlY2RmNjFkYTY5
M2U0MjczNTMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vc3JjL1dlYkNvbXBv
c2l0b3JJbnB1dEhhbmRsZXJJbXBsLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3Ny
Yy9XZWJDb21wb3NpdG9ySW5wdXRIYW5kbGVySW1wbC5jcHAKQEAgLTcxLDYgKzcxLDcgQEAgV2Vi
Q29tcG9zaXRvcklucHV0SGFuZGxlckltcGw6OldlYkNvbXBvc2l0b3JJbnB1dEhhbmRsZXJJbXBs
KCkKICNlbmRpZgogICAgICwgbV9nZXN0dXJlU2Nyb2xsT25JbXBsVGhyZWFkKGZhbHNlKQogICAg
ICwgbV9nZXN0dXJlUGluY2hPbkltcGxUaHJlYWQoZmFsc2UpCisgICAgLCBtX2ZsaW5nQWN0aXZl
T25NYWluVGhyZWFkKGZhbHNlKQogewogfQogCkBAIC0xOTgsNiArMTk5LDggQEAgV2ViQ29tcG9z
aXRvcklucHV0SGFuZGxlckltcGw6OkV2ZW50RGlzcG9zaXRpb24gV2ViQ29tcG9zaXRvcklucHV0
SGFuZGxlckltcGw6OmgKICAgICB9IGVsc2UgaWYgKGV2ZW50LnR5cGUgPT0gV2ViSW5wdXRFdmVu
dDo6R2VzdHVyZUZsaW5nQ2FuY2VsKSB7CiAgICAgICAgIGlmIChjYW5jZWxDdXJyZW50Rmxpbmco
KSkKICAgICAgICAgICAgIHJldHVybiBEaWRIYW5kbGU7CisgICAgICAgIGVsc2UgaWYgKCFtX2Zs
aW5nQWN0aXZlT25NYWluVGhyZWFkKQorICAgICAgICAgICAgcmV0dXJuIERyb3BFdmVudDsKICNp
ZiBFTkFCTEUoVE9VQ0hfRVZFTlRfVFJBQ0tJTkcpCiAgICAgfSBlbHNlIGlmIChldmVudC50eXBl
ID09IFdlYklucHV0RXZlbnQ6OlRvdWNoU3RhcnQpIHsKICAgICAgICAgY29uc3QgV2ViVG91Y2hF
dmVudCYgdG91Y2hFdmVudCA9ICpzdGF0aWNfY2FzdDxjb25zdCBXZWJUb3VjaEV2ZW50Kj4oJmV2
ZW50KTsKQEAgLTIzMCw2ICsyMzMsNyBAQCBXZWJDb21wb3NpdG9ySW5wdXRIYW5kbGVySW1wbDo6
RXZlbnREaXNwb3NpdGlvbiBXZWJDb21wb3NpdG9ySW5wdXRIYW5kbGVySW1wbDo6aAogICAgIH0K
ICAgICBjYXNlIFdlYklucHV0SGFuZGxlckNsaWVudDo6U2Nyb2xsU3RhdHVzT25NYWluVGhyZWFk
OiB7CiAgICAgICAgIFRSQUNFX0VWRU5UX0lOU1RBTlQwKCJ3ZWJraXQiLCAiV2ViQ29tcG9zaXRv
cklucHV0SGFuZGxlckltcGw6OmhhbmRsZUdlc3R1cmVGbGluZzo6c2Nyb2xsT25NYWluVGhyZWFk
Iik7CisgICAgICAgIG1fZmxpbmdBY3RpdmVPbk1haW5UaHJlYWQgPSAgdHJ1ZTsKICAgICAgICAg
cmV0dXJuIERpZE5vdEhhbmRsZTsKICAgICB9CiAgICAgY2FzZSBXZWJJbnB1dEhhbmRsZXJDbGll
bnQ6OlNjcm9sbFN0YXR1c0lnbm9yZWQ6IHsKQEAgLTMxOCw2ICszMjIsNyBAQCBib29sIFdlYkNv
bXBvc2l0b3JJbnB1dEhhbmRsZXJJbXBsOjp0b3VjaHBhZEZsaW5nU2Nyb2xsKGNvbnN0IFdlYlBv
aW50JiBpbmNyZW1lbgogICAgICAgICAvLyBzY3JvbGwgb24gdGhlIHRocmVhZCBpZiB0aGUgZmxp
bmcgc3RhcnRzIG91dHNpZGUgdGhlIHN1YmFyZWEgYnV0IHRoZW4gaXMgZmx1bmcgInVuZGVyIiB0
aGUKICAgICAgICAgLy8gcG9pbnRlci4KICAgICAgICAgbV9jbGllbnQtPnRyYW5zZmVyQWN0aXZl
V2hlZWxGbGluZ0FuaW1hdGlvbihtX2ZsaW5nUGFyYW1ldGVycyk7CisgICAgICAgIG1fZmxpbmdB
Y3RpdmVPbk1haW5UaHJlYWQgPSB0cnVlOwogICAgICAgICBjYW5jZWxDdXJyZW50RmxpbmcoKTsK
ICAgICAgICAgYnJlYWs7CiAgICAgfQpAQCAtMzQ5LDQgKzM1NCw5IEBAIHZvaWQgV2ViQ29tcG9z
aXRvcklucHV0SGFuZGxlckltcGw6OnNjcm9sbEJ5KGNvbnN0IFdlYlBvaW50JiBpbmNyZW1lbnQp
CiAgICAgfQogfQogCit2b2lkIFdlYkNvbXBvc2l0b3JJbnB1dEhhbmRsZXJJbXBsOjptYWluVGhy
ZWFkSGFzU3RvcHBlZEZsaW5naW5nKCkKK3sKKyAgICBtX2ZsaW5nQWN0aXZlT25NYWluVGhyZWFk
ID0gIGZhbHNlOworfQorCiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3Ny
Yy9XZWJDb21wb3NpdG9ySW5wdXRIYW5kbGVySW1wbC5oIGIvU291cmNlL1dlYktpdC9jaHJvbWl1
bS9zcmMvV2ViQ29tcG9zaXRvcklucHV0SGFuZGxlckltcGwuaAppbmRleCA1Yzc5YWRkZmZlNDlk
NjUwMWIwNThjMjczMDk4MDY5NWVhZTFlMGQzLi45ZGZhZDYwMmFhMTg2YjMyNDAwY2QyYzM1YmIx
ZDNiYjhjZWJjZWRlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3NyYy9XZWJD
b21wb3NpdG9ySW5wdXRIYW5kbGVySW1wbC5oCisrKyBiL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0v
c3JjL1dlYkNvbXBvc2l0b3JJbnB1dEhhbmRsZXJJbXBsLmgKQEAgLTYzLDYgKzYzLDcgQEAgcHVi
bGljOgogICAgIC8vIFdlYklucHV0SGFuZGxlciBpbXBsZW1lbnRhdGlvbi4KICAgICB2aXJ0dWFs
IHZvaWQgYmluZFRvQ2xpZW50KFdlYklucHV0SGFuZGxlckNsaWVudCopOwogICAgIHZpcnR1YWwg
dm9pZCBhbmltYXRlKGRvdWJsZSBtb25vdG9uaWNUaW1lKTsKKyAgICB2aXJ0dWFsIHZvaWQgbWFp
blRocmVhZEhhc1N0b3BwZWRGbGluZ2luZygpOwogCiAgICAgLy8gV2ViR2VzdHVyZUN1cnZlVGFy
Z2V0IGltcGxlbWVudGF0aW9uLgogICAgIHZpcnR1YWwgdm9pZCBzY3JvbGxCeShjb25zdCBXZWJQ
b2ludCYpOwpAQCAtOTgsNiArOTksOSBAQCBwcml2YXRlOgogI2VuZGlmCiAgICAgYm9vbCBtX2dl
c3R1cmVTY3JvbGxPbkltcGxUaHJlYWQ7CiAgICAgYm9vbCBtX2dlc3R1cmVQaW5jaE9uSW1wbFRo
cmVhZDsKKyAgICAvLyBUaGlzIGlzIGFsd2F5cyBmYWxzZSB3aGVuIHRoZXJlIGFyZSBubyBmbGlu
Z3Mgb24gdGhlIG1haW4gdGhyZWFkLCBidXQgY29uc2VydmF0aXZlIGluIHRoZQorICAgIC8vIHNl
bnNlIHRoYXQgd2UgbWlnaHQgbm90IGJlIGFjdHVhbGx5IGZsaW5naW5nIHdoZW4gaXQgaXMgdHJ1
ZS4KKyAgICBib29sIG1fZmxpbmdBY3RpdmVPbk1haW5UaHJlYWQ7CiAKICAgICBzdGF0aWMgaW50
IHNfbmV4dEF2YWlsYWJsZUlkZW50aWZpZXI7CiAgICAgc3RhdGljIEhhc2hTZXQ8V2ViQ29tcG9z
aXRvcklucHV0SGFuZGxlckltcGwqPiogc19jb21wb3NpdG9yczsKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJLaXQvY2hyb21pdW0vc3JjL1dlYlZpZXdJbXBsLmNwcCBiL1NvdXJjZS9XZWJLaXQvY2hy
b21pdW0vc3JjL1dlYlZpZXdJbXBsLmNwcAppbmRleCA0MWVlNTBhMzc0OTgzYmM3MmI1MDhhMTNi
NWQzMGI1YmNhYTIxMGNjLi44ZmZkZjUzYmE3ZDcwZWVkMzY2NWRmMjNmYmY1YTExNWYxNWZmYWEz
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3NyYy9XZWJWaWV3SW1wbC5jcHAK
KysrIGIvU291cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMvV2ViVmlld0ltcGwuY3BwCkBAIC03MDcs
NiArNzA3LDggQEAgYm9vbCBXZWJWaWV3SW1wbDo6aGFuZGxlR2VzdHVyZUV2ZW50KGNvbnN0IFdl
Ykdlc3R1cmVFdmVudCYgZXZlbnQpCiAgICAgY2FzZSBXZWJJbnB1dEV2ZW50OjpHZXN0dXJlRmxp
bmdDYW5jZWw6CiAgICAgICAgIGlmIChtX2dlc3R1cmVBbmltYXRpb24pIHsKICAgICAgICAgICAg
IG1fZ2VzdHVyZUFuaW1hdGlvbi5jbGVhcigpOworICAgICAgICAgICAgaWYgKG1fbGF5ZXJUcmVl
VmlldykKKyAgICAgICAgICAgICAgICBtX2xheWVyVHJlZVZpZXctPmRpZFN0b3BGbGluZ2luZygp
OwogICAgICAgICAgICAgZXZlbnRTd2FsbG93ZWQgPSB0cnVlOwogICAgICAgICB9CiAgICAgICAg
IGJyZWFrOwpAQCAtODU4LDggKzg2MCwxMSBAQCBib29sIFdlYlZpZXdJbXBsOjpoYW5kbGVLZXlF
dmVudChjb25zdCBXZWJLZXlib2FyZEV2ZW50JiBldmVudCkKICAgICAgICAgfHwgKGV2ZW50LnR5
cGUgPT0gV2ViSW5wdXRFdmVudDo6S2V5VXApKTsKIAogICAgIC8vIEhhbHQgYW4gaW4tcHJvZ3Jl
c3MgZmxpbmcgb24gYSBrZXkgZXZlbnQuCi0gICAgaWYgKG1fZ2VzdHVyZUFuaW1hdGlvbikKKyAg
ICBpZiAobV9nZXN0dXJlQW5pbWF0aW9uKSB7CiAgICAgICAgIG1fZ2VzdHVyZUFuaW1hdGlvbi5j
bGVhcigpOworICAgICAgICBpZiAobV9sYXllclRyZWVWaWV3KQorICAgICAgICAgICAgbV9sYXll
clRyZWVWaWV3LT5kaWRTdG9wRmxpbmdpbmcoKTsKKyAgICB9CiAKICAgICAvLyBQbGVhc2UgcmVm
ZXIgdG8gdGhlIGNvbW1lbnRzIGV4cGxhaW5pbmcgdGhlIG1fc3VwcHJlc3NOZXh0S2V5cHJlc3NF
dmVudAogICAgIC8vIG1lbWJlci4KQEAgLTE3NjUsOCArMTc3MCwxMSBAQCB2b2lkIFdlYlZpZXdJ
bXBsOjp1cGRhdGVBbmltYXRpb25zKGRvdWJsZSBtb25vdG9uaWNGcmFtZUJlZ2luVGltZSkKICAg
ICBpZiAobV9nZXN0dXJlQW5pbWF0aW9uKSB7CiAgICAgICAgIGlmIChtX2dlc3R1cmVBbmltYXRp
b24tPmFuaW1hdGUobW9ub3RvbmljRnJhbWVCZWdpblRpbWUpKQogICAgICAgICAgICAgc2NoZWR1
bGVBbmltYXRpb24oKTsKLSAgICAgICAgZWxzZQorICAgICAgICBlbHNlIHsKICAgICAgICAgICAg
IG1fZ2VzdHVyZUFuaW1hdGlvbi5jbGVhcigpOworICAgICAgICAgICAgaWYgKG1fbGF5ZXJUcmVl
VmlldykKKyAgICAgICAgICAgICAgICBtX2xheWVyVHJlZVZpZXctPmRpZFN0b3BGbGluZ2luZygp
OworICAgICAgICB9CiAgICAgfQogCiAgICAgaWYgKCFtX3BhZ2UpCkBAIC0zNjQ2LDYgKzM2NTQs
OCBAQCB2b2lkIFdlYlZpZXdJbXBsOjpkaWRDb21taXRMb2FkKGJvb2wqIGlzTmV3TmF2aWdhdGlv
biwgYm9vbCBpc05hdmlnYXRpb25XaXRoaW5QYQogICAgIC8vIE1ha2Ugc3VyZSBsaW5rIGhpZ2hs
aWdodCBmcm9tIHByZXZpb3VzIHBhZ2UgaXMgY2xlYXJlZC4KICAgICBtX2xpbmtIaWdobGlnaHQu
Y2xlYXIoKTsKICAgICBtX2dlc3R1cmVBbmltYXRpb24uY2xlYXIoKTsKKyAgICBpZiAobV9sYXll
clRyZWVWaWV3KQorICAgICAgICBtX2xheWVyVHJlZVZpZXctPmRpZFN0b3BGbGluZ2luZygpOwog
ICAgIHJlc2V0U2F2ZWRTY3JvbGxBbmRTY2FsZVN0YXRlKCk7CiB9CiAKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJLaXQvY2hyb21pdW0vdGVzdHMvV2ViQ29tcG9zaXRvcklucHV0SGFuZGxlckltcGxU
ZXN0LmNwcCBiL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vdGVzdHMvV2ViQ29tcG9zaXRvcklucHV0
SGFuZGxlckltcGxUZXN0LmNwcAppbmRleCA0NzE2NTk0ODJhZGYyYWRmZTlhMjI3NGU0YmY1NmNh
ZGExNzU5ZjgzLi41MGY5NTJlMGQyMjA2NDFjMGEzZjFkODE4YjJiZjZjOWJiMTNjNGRhIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3Rlc3RzL1dlYkNvbXBvc2l0b3JJbnB1dEhh
bmRsZXJJbXBsVGVzdC5jcHAKKysrIGIvU291cmNlL1dlYktpdC9jaHJvbWl1bS90ZXN0cy9XZWJD
b21wb3NpdG9ySW5wdXRIYW5kbGVySW1wbFRlc3QuY3BwCkBAIC0zODksOSArMzg5LDEwIEBAIFRF
U1RfRihXZWJDb21wb3NpdG9ySW5wdXRIYW5kbGVySW1wbFRlc3QsIGdlc3R1cmVGbGluZ0lnbm9y
ZWRUb3VjaHBhZCkKICAgICBnZXN0dXJlLmRhdGEuZmxpbmdTdGFydC5zb3VyY2VEZXZpY2UgPSBX
ZWJHZXN0dXJlRXZlbnQ6OlRvdWNocGFkOwogICAgIG1faW5wdXRIYW5kbGVyLT5oYW5kbGVJbnB1
dEV2ZW50KGdlc3R1cmUpOwogCisgICAgbV9leHBlY3RlZERpc3Bvc2l0aW9uID0gRHJvcEV2ZW50
OwogICAgIFZFUklGWV9BTkRfUkVTRVRfTU9DS1MoKTsKIAotICAgIC8vIEV2ZW4gaWYgd2UgZGlk
bid0IHN0YXJ0IGEgZmxpbmcgb3Vyc2VsdmVzLCB3ZSBzdGlsbCBuZWVkIHRvIHNlbmQgdGhlIGNh
bmNlbCBldmVudCB0byB0aGUgd2lkZ2V0LgorICAgIC8vIFNpbmNlIHRoZSBwcmV2aW91cyBmbGlu
ZyB3YXMgaWdub3JlZCwgd2Ugc2hvdWxkIGFsc28gYmUgZHJvcHBpbmcgdGhlIG5leHQgZmxpbmdD
YW5jZWwuCiAgICAgZ2VzdHVyZS50eXBlID0gV2ViSW5wdXRFdmVudDo6R2VzdHVyZUZsaW5nQ2Fu
Y2VsOwogICAgIGdlc3R1cmUuZGF0YS5mbGluZ1N0YXJ0LnNvdXJjZURldmljZSA9IFdlYkdlc3R1
cmVFdmVudDo6VG91Y2hwYWQ7CiAgICAgbV9pbnB1dEhhbmRsZXItPmhhbmRsZUlucHV0RXZlbnQo
Z2VzdHVyZSk7CkBAIC00NTQsNyArNDU1LDYgQEAgVEVTVF9GKFdlYkNvbXBvc2l0b3JJbnB1dEhh
bmRsZXJJbXBsVGVzdCwgZ2VzdHVyZUZsaW5nQW5pbWF0ZXNUb3VjaHBhZCkKICAgICAgICAgLldp
bGxPbmNlKHRlc3Rpbmc6OlJldHVybihXZWJJbnB1dEhhbmRsZXJDbGllbnQ6OlNjcm9sbFN0YXR1
c09uTWFpblRocmVhZCkpOwogICAgIEVYUEVDVF9DQUxMKG1fbW9ja0lucHV0SGFuZGxlckNsaWVu
dCwgc2Nyb2xsQnlJZlBvc3NpYmxlKHRlc3Rpbmc6Ol8sIHRlc3Rpbmc6Ol8pKS5UaW1lcygwKTsK
ICAgICBFWFBFQ1RfQ0FMTChtX21vY2tJbnB1dEhhbmRsZXJDbGllbnQsIHNjcm9sbEVuZCgpKS5U
aW1lcygwKTsKLQogICAgIC8vIEV4cGVjdGVkIHdoZWVsIGZsaW5nIGFuaW1hdGlvbiBwYXJhbWV0
ZXJzOgogICAgIC8vICopIGZsaW5nRGVsdGEgYW5kIGZsaW5nUG9pbnQgc2hvdWxkIG1hdGNoIHRo
ZSBvcmlnaW5hbCBHZXN0dXJlRmxpbmdTdGFydCBldmVudAogICAgIC8vICopIHN0YXJ0VGltZSBz
aG91bGQgYmUgMTAgdG8gbWF0Y2ggdGhlIHRpbWUgcGFyYW1ldGVyIG9mIHRoZSBmaXJzdCBhbmlt
YXRlKCkgY2FsbCBhZnRlciB0aGUgR2VzdHVyZUZsaW5nU3RhcnQKQEAgLTU3Miw2ICs1NzIsNyBA
QCBURVNUX0YoV2ViQ29tcG9zaXRvcklucHV0SGFuZGxlckltcGxUZXN0LCBnZXN0dXJlRmxpbmdU
cmFuc2ZlclJlc2V0c1RvdWNocGFkKQogICAgIG1faW5wdXRIYW5kbGVyLT5oYW5kbGVJbnB1dEV2
ZW50KGdlc3R1cmUpOwogCiAgICAgVkVSSUZZX0FORF9SRVNFVF9NT0NLUygpOworICAgIG1faW5w
dXRIYW5kbGVyLT5tYWluVGhyZWFkSGFzU3RvcHBlZEZsaW5naW5nKCk7CiAKICAgICAvLyBTdGFy
dCBhIHNlY29uZCBnZXN0dXJlIGZsaW5nLCB0aGlzIHRpbWUgaW4gdGhlICtZIGRpcmVjdGlvbiB3
aXRoIG5vIFguCiAgICAgZ2VzdHVyZS50eXBlID0gV2ViSW5wdXRFdmVudDo6R2VzdHVyZUZsaW5n
U3RhcnQ7CkBAIC02OTAsNyArNjkxLDYgQEAgVEVTVF9GKFdlYkNvbXBvc2l0b3JJbnB1dEhhbmRs
ZXJJbXBsVGVzdCwgZ2VzdHVyZUZsaW5nSWdub3JlZFRvdWNoc2NyZWVuKQogICAgIGdlc3R1cmUu
ZGF0YS5mbGluZ1N0YXJ0LnNvdXJjZURldmljZSA9IFdlYkdlc3R1cmVFdmVudDo6VG91Y2hzY3Jl
ZW47CiAgICAgbV9pbnB1dEhhbmRsZXItPmhhbmRsZUlucHV0RXZlbnQoZ2VzdHVyZSk7CiAKLSAg
ICBtX2V4cGVjdGVkRGlzcG9zaXRpb24gPSBEaWROb3RIYW5kbGU7CiAgICAgVkVSSUZZX0FORF9S
RVNFVF9NT0NLUygpOwogCiAgICAgLy8gRXZlbiBpZiB3ZSBkaWRuJ3Qgc3RhcnQgYSBmbGluZyBv
dXJzZWx2ZXMsIHdlIHN0aWxsIG5lZWQgdG8gc2VuZCB0aGUgY2FuY2VsIGV2ZW50IHRvIHRoZSB3
aWRnZXQuCkBAIC03NTEsNyArNzUxLDcgQEAgVEVTVF9GKFdlYkNvbXBvc2l0b3JJbnB1dEhhbmRs
ZXJJbXBsVGVzdCwgZ2VzdHVyZUZsaW5nQW5pbWF0ZXNUb3VjaHNjcmVlbikKIAogVEVTVF9GKFdl
YkNvbXBvc2l0b3JJbnB1dEhhbmRsZXJJbXBsVGVzdCwgbGFzdElucHV0RXZlbnRGb3JWU3luYykK
IHsKLSAgICBtX2V4cGVjdGVkRGlzcG9zaXRpb24gPSBEaWROb3RIYW5kbGU7CisgICAgbV9leHBl
Y3RlZERpc3Bvc2l0aW9uID0gRHJvcEV2ZW50OwogICAgIFZFUklGWV9BTkRfUkVTRVRfTU9DS1Mo
KTsKIAogICAgIGdlc3R1cmUudHlwZSA9IFdlYklucHV0RXZlbnQ6Okdlc3R1cmVGbGluZ0NhbmNl
bDsK
</data>

          </attachment>
      

    </bug>

</bugzilla>