<?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>38189</bug_id>
          
          <creation_ts>2010-04-27 03:02:44 -0700</creation_ts>
          <short_desc>[chromium] clicking a scrollbar in an iframe shouldn&apos;t lose the selection</short_desc>
          <delta_ts>2010-05-11 07:14:02 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>New Bugs</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Other</rep_platform>
          <op_sys>OS X 10.5</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>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Tony Chang">tony</reporter>
          <assigned_to name="Tony Chang">tony</assigned_to>
          <cc>abarth</cc>
    
    <cc>commit-queue</cc>
    
    <cc>eric</cc>
    
    <cc>evan</cc>
    
    <cc>fishd</cc>
    
    <cc>sam</cc>
    
    <cc>tonikitoo</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>217631</commentid>
    <comment_count>0</comment_count>
    <who name="Tony Chang">tony</who>
    <bug_when>2010-04-27 03:02:44 -0700</bug_when>
    <thetext>[chromium] clicking a scrollbar in an iframe shouldn&apos;t lose the selection</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>217632</commentid>
    <comment_count>1</comment_count>
      <attachid>54404</attachid>
    <who name="Tony Chang">tony</who>
    <bug_when>2010-04-27 03:07:39 -0700</bug_when>
    <thetext>Created attachment 54404
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>217634</commentid>
    <comment_count>2</comment_count>
    <who name="Tony Chang">tony</who>
    <bug_when>2010-04-27 03:08:39 -0700</bug_when>
    <thetext>On Safari Mac, selection isn&apos;t lost because the event gets sent to the NSScroller.  So we add some logic to do the same in Chromium.

This is http://crbug.com/5559</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>217702</commentid>
    <comment_count>3</comment_count>
    <who name="Evan Martin">evan</who>
    <bug_when>2010-04-27 07:38:32 -0700</bug_when>
    <thetext>+    PlatformMouseEvent mouseEvent = mev.event();
maybe
const PlatformMouseEvent&amp; mouseEvent = mev.event();
?


Your fix feels a bit hacky to me, but I think a comment might clear it up (&quot;on other ports subviews never get mouse clicks on their scrollbars because scrollbars are native widgets etc&quot;).</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>218096</commentid>
    <comment_count>4</comment_count>
      <attachid>54489</attachid>
    <who name="Tony Chang">tony</who>
    <bug_when>2010-04-27 17:51:02 -0700</bug_when>
    <thetext>Created attachment 54489
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>218097</commentid>
    <comment_count>5</comment_count>
    <who name="Tony Chang">tony</who>
    <bug_when>2010-04-27 17:52:19 -0700</bug_when>
    <thetext>(In reply to comment #3)
&gt; +    PlatformMouseEvent mouseEvent = mev.event();
&gt; maybe
&gt; const PlatformMouseEvent&amp; mouseEvent = mev.event();
&gt; ?

I&apos;m never sure if I need to do this or if the compiler will do it for me.  I guess it doesn&apos;t hurt to make it explicit.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>218113</commentid>
    <comment_count>6</comment_count>
    <who name="Tony Chang">tony</who>
    <bug_when>2010-04-27 18:16:11 -0700</bug_when>
    <thetext>Adding Darin as a potential reviewer.

Let me describe the code in EventHandlerMac.mm.  When you click in a subframe, you end up in passSubframeEventToSubframe:
http://trac.webkit.org/browser/trunk/WebCore/page/mac/EventHandlerMac.mm#L354

For a mouse clicks, this calls passWidgetMouseDownEventToWidget:
http://trac.webkit.org/browser/trunk/WebCore/page/mac/EventHandlerMac.mm#L390

Which calls through to passMouseDownEventToWidget:
http://trac.webkit.org/browser/trunk/WebCore/page/mac/EventHandlerMac.mm#L206

A hit test is performed to see which NSView is hit:
http://trac.webkit.org/browser/trunk/WebCore/page/mac/EventHandlerMac.mm#L223

And the view is passed the event directly in line 255.  If we&apos;re over a scrollbar, |view| is an NSScroller, otherwise it&apos;s a WebHTMLView.

It seems like some of this logic is in EventHandler::handleMousePressEvent, which is what we used to always call:
http://trac.webkit.org/browser/trunk/WebCore/page/EventHandler.cpp#L1166

However, the logic for passing the event to a scrollbar doesn&apos;t happen until after the page has a chance to handle the event.  The page handling the event is what causes us to lose the selection.

In writing this, I realized that this also means that previously, if you set mousedown to preventDefault(), you could not scroll the iframe.  With this change, you can still scroll the iframe.  This seems to match Safari mac and Firefox mac (in Firefox, I had to put the preventDefault in keypress to stop selection).</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>219947</commentid>
    <comment_count>7</comment_count>
      <attachid>54489</attachid>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2010-05-02 18:46:24 -0700</bug_when>
    <thetext>Comment on attachment 54489
Patch

This seems reasonable to me.  It seems that WebKit2 will need this code as well, so it&apos;s a shame it&apos;s in a Chromium file.

The test is certainly a huge win.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>219948</commentid>
    <comment_count>8</comment_count>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2010-05-02 18:46:51 -0700</bug_when>
    <thetext>Adding Sam since WebKit2 will eventually need code like this as well, perhaps he has a suggestion for making it more generic.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>219994</commentid>
    <comment_count>9</comment_count>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2010-05-02 19:32:49 -0700</bug_when>
    <thetext>Attachment 54489 was posted by a committer and has review+, assigning to Tony Chang for commit.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>220789</commentid>
    <comment_count>10</comment_count>
    <who name="Darin Fisher (:fishd, Google)">fishd</who>
    <bug_when>2010-05-04 14:27:39 -0700</bug_when>
    <thetext>(In reply to comment #7)
&gt; (From update of attachment 54489 [details])
&gt; This seems reasonable to me.  It seems that WebKit2 will need this code as
&gt; well, so it&apos;s a shame it&apos;s in a Chromium file.

Actually, this has more in common with other WebKit ports that do not use native widgets for scrollbars.

Patch LGTM2.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>221584</commentid>
    <comment_count>11</comment_count>
      <attachid>54489</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2010-05-06 02:03:19 -0700</bug_when>
    <thetext>Comment on attachment 54489
Patch

Rejecting patch 54489 from commit-queue.

Failed to run &quot;[u&apos;/Users/eseidel/Projects/CommitQueue/WebKitTools/Scripts/svn-apply&apos;, u&apos;--reviewer&apos;, u&apos;Eric Seidel&apos;, u&apos;--force&apos;]&quot; exit_code: 1
Last 500 characters of output:
st/events/mousedown-in-subframe-scrollbar-expected.txt
patching file LayoutTests/fast/events/mousedown-in-subframe-scrollbar.html
patching file LayoutTests/fast/events/resources/mousedown-in-subframe-scrollbar.html
patching file LayoutTests/platform/win/Skipped
Hunk #1 FAILED at 855.
1 out of 1 hunk FAILED -- saving rejects to file LayoutTests/platform/win/Skipped.rej
patching file WebCore/ChangeLog
Hunk #1 succeeded at 1 with fuzz 3.
patching file WebCore/page/chromium/EventHandlerChromium.cpp

Full output: http://webkit-commit-queue.appspot.com/results/2187010</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>222164</commentid>
    <comment_count>12</comment_count>
    <who name="Tony Chang">tony</who>
    <bug_when>2010-05-06 22:12:21 -0700</bug_when>
    <thetext>Committed r58937: &lt;http://trac.webkit.org/changeset/58937&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>222183</commentid>
    <comment_count>13</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2010-05-06 23:06:23 -0700</bug_when>
    <thetext>http://trac.webkit.org/changeset/58937 might have broken Leopard Intel Release (Tests)
The following changes are on the blame list:
http://trac.webkit.org/changeset/58936
http://trac.webkit.org/changeset/58937</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>223140</commentid>
    <comment_count>14</comment_count>
    <who name="Tony Chang">tony</who>
    <bug_when>2010-05-09 20:24:48 -0700</bug_when>
    <thetext>(In reply to comment #12)
&gt; Committed r58937: &lt;http://trac.webkit.org/changeset/58937&gt;

Oh, so it turns out this was fixed by https://bugs.webkit.org/show_bug.cgi?id=16809 a few days before I landed this patch (which explains why the layout test passes on QT).

Should I revert this change (but keep the test)?  Reverting this change makes Chromium follow a code path more like QT.  Keeping this change makes us follow a code path more like Safari Mac.  I don&apos;t have a strong opinion here.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>223364</commentid>
    <comment_count>15</comment_count>
    <who name="Darin Fisher (:fishd, Google)">fishd</who>
    <bug_when>2010-05-10 09:56:16 -0700</bug_when>
    <thetext>(In reply to comment #14)
&gt; (In reply to comment #12)
&gt; &gt; Committed r58937: &lt;http://trac.webkit.org/changeset/58937&gt;
&gt; 
&gt; Oh, so it turns out this was fixed by https://bugs.webkit.org/show_bug.cgi?id=16809 a few days before I landed this patch (which explains why the layout test passes on QT).
&gt; 
&gt; Should I revert this change (but keep the test)?  Reverting this change makes Chromium follow a code path more like QT.  Keeping this change makes us follow a code path more like Safari Mac.  I don&apos;t have a strong opinion here.

It looks like the Qt solution is cross-platform, so we should probably go with that one.  Does that make us at least consistent with Safari Win?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>223367</commentid>
    <comment_count>16</comment_count>
    <who name="Darin Fisher (:fishd, Google)">fishd</who>
    <bug_when>2010-05-10 09:56:56 -0700</bug_when>
    <thetext>Moreover, would it make sense for Safari Mac to be like the others?  File a bug on that if so?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>223910</commentid>
    <comment_count>17</comment_count>
    <who name="Antonio Gomes">tonikitoo</who>
    <bug_when>2010-05-11 07:14:02 -0700</bug_when>
    <thetext>(In reply to comment #14)
&gt; (In reply to comment #12)
&gt; &gt; Committed r58937: &lt;http://trac.webkit.org/changeset/58937&gt;
&gt; 
&gt; Oh, so it turns out this was fixed by https://bugs.webkit.org/show_bug.cgi?id=16809 a few days before I landed this patch (which explains why the layout test passes on QT).
&gt; 
&gt; Should I revert this change (but keep the test)?  Reverting this change makes Chromium follow a code path more like QT.  Keeping this change makes us follow a code path more like Safari Mac.  I don&apos;t have a strong opinion here.

the partial revert (tests are being kept) is happening in bug 38894</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>54404</attachid>
            <date>2010-04-27 03:07:39 -0700</date>
            <delta_ts>2010-04-27 17:50:56 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-38189-20100427190737.patch</filename>
            <type>text/plain</type>
            <size>6770</size>
            <attacher name="Tony Chang">tony</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxv
ZwppbmRleCAzZWFmMWVhYWRkMWU4N2QxYzQ5NjViMTIxZDVhMGQ5YWRkMTkzNWNjLi40Y2U4Njg1
ZWVjZDEyNjhlZmY0M2E2YWVlNTI0NTYyMTk1ODI0YzQ0IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0
cy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTUgQEAK
KzIwMTAtMDQtMjcgIFRvbnkgQ2hhbmcgIDx0b255QGNocm9taXVtLm9yZz4KKworICAgICAgICBS
ZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBbY2hyb21pdW1dIGNsaWNraW5n
IGEgc2Nyb2xsYmFyIGluIGFuIGlmcmFtZSBzaG91bGRuJ3QgbG9zZSB0aGUgc2VsZWN0aW9uCisg
ICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0zODE4OQorCisg
ICAgICAgICogZmFzdC9ldmVudHMvbW91c2Vkb3duLWluLXN1YmZyYW1lLXNjcm9sbGJhci1leHBl
Y3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIGZhc3QvZXZlbnRzL21vdXNlZG93bi1pbi1zdWJm
cmFtZS1zY3JvbGxiYXIuaHRtbDogQWRkZWQuCisgICAgICAgICogZmFzdC9ldmVudHMvcmVzb3Vy
Y2VzL21vdXNlZG93bi1pbi1zdWJmcmFtZS1zY3JvbGxiYXIuaHRtbDogQWRkZWQuCisgICAgICAg
ICogcGxhdGZvcm0vd2luL1NraXBwZWQ6CisKIDIwMTAtMDQtMjcgIFl1em8gRnVqaXNoaW1hICA8
eXV6b0Bnb29nbGUuY29tPgogCiAgICAgICAgIFJldmlld2VkIGJ5IERhdmlkIEh5YXR0LgpkaWZm
IC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9ldmVudHMvbW91c2Vkb3duLWluLXN1YmZyYW1lLXNj
cm9sbGJhci1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9mYXN0L2V2ZW50cy9tb3VzZWRvd24t
aW4tc3ViZnJhbWUtc2Nyb2xsYmFyLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NApp
bmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5mZmNlYWY0NjY5
NmFhYTA0Yzk4ZDRlNDc3ZTlkNDJiMWQ5YWQ2ZWVlCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0
VGVzdHMvZmFzdC9ldmVudHMvbW91c2Vkb3duLWluLXN1YmZyYW1lLXNjcm9sbGJhci1leHBlY3Rl
ZC50eHQKQEAgLTAsMCArMSwxMyBAQAorVGhpcyB0ZXN0cyB0aGF0IGNsaWNraW5nIG9uIGEgc2Ny
b2xsYmFyIGluIGEgZnJhbWUgZG9lcyBub3QgY2xlYXIgc2VsZWN0aW9ucyBpbiB0aGUgZnJhbWUu
CisKKworU2VsZWN0aW9uOiBUaGlzCitpcwordGV4dAordG8KK2ZvcmNlCithCit2ZXJ0aWNhbAor
c2Nyb2xsYmFyCit0bworYXBwZWFyLgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9ldmVu
dHMvbW91c2Vkb3duLWluLXN1YmZyYW1lLXNjcm9sbGJhci5odG1sIGIvTGF5b3V0VGVzdHMvZmFz
dC9ldmVudHMvbW91c2Vkb3duLWluLXN1YmZyYW1lLXNjcm9sbGJhci5odG1sCm5ldyBmaWxlIG1v
ZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAu
LjNiZTNlYWQwZjIxOTEzYjE0OTA1N2E2OGZlZDQ1ZjBlN2ZiMjUxYzYKLS0tIC9kZXYvbnVsbAor
KysgYi9MYXlvdXRUZXN0cy9mYXN0L2V2ZW50cy9tb3VzZWRvd24taW4tc3ViZnJhbWUtc2Nyb2xs
YmFyLmh0bWwKQEAgLTAsMCArMSwyNSBAQAorPGJvZHk+CisgICAgPHA+VGhpcyB0ZXN0cyB0aGF0
IGNsaWNraW5nIG9uIGEgc2Nyb2xsYmFyIGluIGEgZnJhbWUgZG9lcyBub3QgY2xlYXIgc2VsZWN0
aW9ucyBpbiB0aGUgZnJhbWUuPC9wPgorICAgIDxpZnJhbWUgaWQ9ImZyIiBvbmxvYWQ9InRlc3Qo
KSIgc3JjPSJyZXNvdXJjZXMvbW91c2Vkb3duLWluLXN1YmZyYW1lLXNjcm9sbGJhci5odG1sIj48
L2lmcmFtZT4KKyAgICA8ZGl2IGlkPSJyZXN1bHRzIj48L2Rpdj4KKzwvYm9keT4KKzxzY3JpcHQ+
CitmdW5jdGlvbiB0ZXN0KCkgeworICAgIGlmICh3aW5kb3cubGF5b3V0VGVzdENvbnRyb2xsZXIp
CisgICAgICAgIGxheW91dFRlc3RDb250cm9sbGVyLmR1bXBBc1RleHQoKTsKKworICAgIHZhciBp
ZnJhbWUgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZnIiKTsKKyAgICBpZnJhbWUuY29udGVu
dFdpbmRvdy5mb2N1c0FuZFNlbGVjdFRleHQoKTsKKworICAgIGlmICh3aW5kb3cuZXZlbnRTZW5k
ZXIpIHsKKyAgICAgICAgdmFyIHggPSBpZnJhbWUub2Zmc2V0TGVmdCArIGlmcmFtZS5vZmZzZXRX
aWR0aDsKKyAgICAgICAgdmFyIHkgPSBpZnJhbWUub2Zmc2V0VG9wOworICAgICAgICBldmVudFNl
bmRlci5tb3VzZU1vdmVUbyh4IC0gNSwgeSArIDUpOworICAgICAgICBldmVudFNlbmRlci5tb3Vz
ZURvd24oKTsKKyAgICAgICAgZXZlbnRTZW5kZXIubW91c2VNb3ZlVG8oeCAtIDUsIHkgKyAyMCk7
CisgICAgICAgIGV2ZW50U2VuZGVyLm1vdXNlVXAoKTsKKyAgICB9CisgICAgZG9jdW1lbnQuZ2V0
RWxlbWVudEJ5SWQoInJlc3VsdHMiKS5pbm5lclRleHQgPSAiU2VsZWN0aW9uOiAiICsKKyAgICAg
ICAgaWZyYW1lLmNvbnRlbnRXaW5kb3cuZ2V0U2VsZWN0aW9uKCk7Cit9Cis8L3NjcmlwdD4KZGlm
ZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvZXZlbnRzL3Jlc291cmNlcy9tb3VzZWRvd24taW4t
c3ViZnJhbWUtc2Nyb2xsYmFyLmh0bWwgYi9MYXlvdXRUZXN0cy9mYXN0L2V2ZW50cy9yZXNvdXJj
ZXMvbW91c2Vkb3duLWluLXN1YmZyYW1lLXNjcm9sbGJhci5odG1sCm5ldyBmaWxlIG1vZGUgMTAw
NjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjgwNzc5
ZDRkOGMxYzAwMTljZjhiNmY1OTMyNWI4YjZkY2RmYzJmMWQKLS0tIC9kZXYvbnVsbAorKysgYi9M
YXlvdXRUZXN0cy9mYXN0L2V2ZW50cy9yZXNvdXJjZXMvbW91c2Vkb3duLWluLXN1YmZyYW1lLXNj
cm9sbGJhci5odG1sCkBAIC0wLDAgKzEsMjYgQEAKKzxib2R5IGNvbnRlbnRFZGl0YWJsZT4KKzxw
IGlkPSJwIj4KKyAgVGhpczxici8+CisgIGlzPGJyLz4KKyAgdGV4dDxici8+CisgIHRvPGJyLz4K
KyAgZm9yY2U8YnIvPgorICBhPGJyLz4KKyAgdmVydGljYWw8YnIvPgorICBzY3JvbGxiYXI8YnIv
PgorICB0bzxici8+CisgIGFwcGVhci48YnIvPgorPC9wPgorPHNjcmlwdD4KK3dpbmRvdy5mb2N1
c0FuZFNlbGVjdFRleHQgPSBmdW5jdGlvbigpCit7CisgICAgZG9jdW1lbnQuYm9keS5mb2N1cygp
OworICAgIGRvY3VtZW50LmV4ZWNDb21tYW5kKCJTZWxlY3RBbGwiKTsKK30KKword2luZG93Lmdl
dFNlbGVjdGVkVGV4dCA9IGZ1bmN0aW9uKCkKK3sKKyAgICByZXR1cm4gd2luZG93LmdldFNlbGVj
dGlvbigpLmdldFJhbmdlQXQoMCkudG9TdHJpbmcoKTsKK30KKzwvc2NyaXB0PgorPC9ib2R5Pgpk
aWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vd2luL1NraXBwZWQgYi9MYXlvdXRUZXN0
cy9wbGF0Zm9ybS93aW4vU2tpcHBlZAppbmRleCAxMzA4ZDY0ZTAxNzk1YWY2ZWUzNDIxODgzYmY3
MmE1ZjZhODc5NGMyLi40M2YxODBhYTcyN2QzMmZhMTZhOWE1YTFiOWNlYjk5ZjhmODUyNzg5IDEw
MDY0NAotLS0gYS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS93aW4vU2tpcHBlZAorKysgYi9MYXlvdXRU
ZXN0cy9wbGF0Zm9ybS93aW4vU2tpcHBlZApAQCAtODU1LDMgKzg1NSw2IEBAIGZhc3QvbGlzdHMv
b2wtbmVzdGVkLWl0ZW1zLmh0bWwKIGZhc3QvbGlzdHMvb2wtbmVzdGVkLWxpc3QtZHluYW1pYy1p
bnNlcnQuaHRtbAogZmFzdC9saXN0cy9vbC1uZXN0ZWQtbGlzdC1keW5hbWljLXJlbW92ZS5odG1s
CiBmYXN0L2xpc3RzL29sLW5lc3RlZC1saXN0Lmh0bWwKKworIyBOZWVkIHRvIGhhbmRsZSBtb3Vz
ZVByZXNzIGluIHN1YmZyYW1lcyBzcGVjaWFsbHkuIFNlZSBodHRwczovL2J1Z3Mud2Via2l0Lm9y
Zy9zaG93X2J1Zy5jZ2k/aWQ9MjAyMzYKK2Zhc3QvZXZlbnRzL21vdXNlZG93bi1pbi1zdWJmcmFt
ZS1zY3JvbGxiYXIuaHRtbApkaWZmIC0tZ2l0IGEvV2ViQ29yZS9DaGFuZ2VMb2cgYi9XZWJDb3Jl
L0NoYW5nZUxvZwppbmRleCAzZjVkM2YyMDQ5NDNkMmRkMjkzNDk3M2E4OTg1NTU3ODZmOTQ0NWUx
Li5hMTE3M2UzNDhkNWExNTFkNWQ3NWJiZmMzMWQwMzE3MDBjNjAzNzRjIDEwMDY0NAotLS0gYS9X
ZWJDb3JlL0NoYW5nZUxvZworKysgYi9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE3IEBA
CisyMDEwLTA0LTI3ICBUb255IENoYW5nICA8dG9ueUBjaHJvbWl1bS5vcmc+CisKKyAgICAgICAg
UmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgW2Nocm9taXVtXSBjbGlja2lu
ZyBhIHNjcm9sbGJhciBpbiBhbiBpZnJhbWUgc2hvdWxkbid0IGxvc2UgdGhlIHNlbGVjdGlvbgor
ICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MzgxODkKKwor
ICAgICAgICBUZXN0OiBmYXN0L2V2ZW50cy9tb3VzZWRvd24taW4tc3ViZnJhbWUtc2Nyb2xsYmFy
Lmh0bWwKKworICAgICAgICAqIHBhZ2UvY2hyb21pdW0vRXZlbnRIYW5kbGVyQ2hyb21pdW0uY3Bw
OgorICAgICAgICAoV2ViQ29yZTo6RXZlbnRIYW5kbGVyOjpwYXNzTW91c2VQcmVzc0V2ZW50VG9T
dWJmcmFtZSk6IElmIGNsaWNraW5nIG9uCisgICAgICAgICAgICBhIHNjcm9sbGJhciwgcGFzcyB0
aGUgZXZlbnQgZGlyZWN0bHkgdG8gdGhlIHNjcm9sbGJhci4gIFRoaXMgbWF0Y2hlcworICAgICAg
ICAgICAgbWFjIHdoaWNoIHBhc3NlcyB0aGUgZXZlbnQgdG8gdGhlIE5TU2Nyb2xsZXIuCisKIDIw
MTAtMDQtMjcgIFl1em8gRnVqaXNoaW1hICA8eXV6b0Bnb29nbGUuY29tPgogCiAgICAgICAgIFJl
dmlld2VkIGJ5IFNoaW5pY2hpcm8gSGFtYWppLgpkaWZmIC0tZ2l0IGEvV2ViQ29yZS9wYWdlL2No
cm9taXVtL0V2ZW50SGFuZGxlckNocm9taXVtLmNwcCBiL1dlYkNvcmUvcGFnZS9jaHJvbWl1bS9F
dmVudEhhbmRsZXJDaHJvbWl1bS5jcHAKaW5kZXggZmYxNjFhZjRiNTQ1NDdmNDMxODNiZGQ0MGZh
YWJjNmE1NjkxMGZjNS4uMGNjN2QzOWQxMjRkNGQ5YjhkMjZmOTI3YjA1ZWFjOTJlY2Y2NTM3NSAx
MDA2NDQKLS0tIGEvV2ViQ29yZS9wYWdlL2Nocm9taXVtL0V2ZW50SGFuZGxlckNocm9taXVtLmNw
cAorKysgYi9XZWJDb3JlL3BhZ2UvY2hyb21pdW0vRXZlbnRIYW5kbGVyQ2hyb21pdW0uY3BwCkBA
IC01NCwxMSArNTQsMTIgQEAgY29uc3QgZG91YmxlIEV2ZW50SGFuZGxlcjo6VGV4dERyYWdEZWxh
eSA9IDAuMDsKIAogYm9vbCBFdmVudEhhbmRsZXI6OnBhc3NNb3VzZVByZXNzRXZlbnRUb1N1YmZy
YW1lKE1vdXNlRXZlbnRXaXRoSGl0VGVzdFJlc3VsdHMmIG1ldiwgRnJhbWUqIHN1YmZyYW1lKQog
eworICAgIFBsYXRmb3JtTW91c2VFdmVudCBtb3VzZUV2ZW50ID0gbWV2LmV2ZW50KCk7CiAgICAg
Ly8gSWYgd2UncmUgY2xpY2tpbmcgaW50byBhIGZyYW1lIHRoYXQgaXMgc2VsZWN0ZWQsIHRoZSBm
cmFtZSB3aWxsIGFwcGVhcgogICAgIC8vIGdyZXllZCBvdXQgZXZlbiB0aG91Z2ggd2UncmUgY2xp
Y2tpbmcgb24gdGhlIHNlbGVjdGlvbi4gIFRoaXMgbG9va3MKICAgICAvLyByZWFsbHkgc3RyYW5n
ZSAoaGF2aW5nIHRoZSB3aG9sZSBmcmFtZSBiZSBncmV5ZWQgb3V0KSwgc28gd2UgZGVzZWxlY3Qg
dGhlCiAgICAgLy8gc2VsZWN0aW9uLgotICAgIEludFBvaW50IHAgPSBtX2ZyYW1lLT52aWV3KCkt
PndpbmRvd1RvQ29udGVudHMobWV2LmV2ZW50KCkucG9zKCkpOworICAgIEludFBvaW50IHAgPSBt
X2ZyYW1lLT52aWV3KCktPndpbmRvd1RvQ29udGVudHMobW91c2VFdmVudC5wb3MoKSk7CiAgICAg
aWYgKG1fZnJhbWUtPnNlbGVjdGlvbigpLT5jb250YWlucyhwKSkgewogICAgICAgICBWaXNpYmxl
UG9zaXRpb24gdmlzaWJsZVBvcygKICAgICAgICAgICAgIG1ldi50YXJnZXROb2RlKCktPnJlbmRl
cmVyKCktPnBvc2l0aW9uRm9yUG9pbnQobWV2LmxvY2FsUG9pbnQoKSkpOwpAQCAtNjcsNyArNjgs
MTUgQEAgYm9vbCBFdmVudEhhbmRsZXI6OnBhc3NNb3VzZVByZXNzRXZlbnRUb1N1YmZyYW1lKE1v
dXNlRXZlbnRXaXRoSGl0VGVzdFJlc3VsdHMmIG0KICAgICAgICAgICAgIG1fZnJhbWUtPnNlbGVj
dGlvbigpLT5zZXRTZWxlY3Rpb24obmV3U2VsZWN0aW9uKTsKICAgICB9CiAKLSAgICBzdWJmcmFt
ZS0+ZXZlbnRIYW5kbGVyKCktPmhhbmRsZU1vdXNlUHJlc3NFdmVudChtZXYuZXZlbnQoKSk7Cisg
ICAgRnJhbWVWaWV3KiB2aWV3ID0gc3ViZnJhbWUtPnZpZXcoKTsKKyAgICBTY3JvbGxiYXIqIHNj
cm9sbGJhciA9IHZpZXcgPyB2aWV3LT5zY3JvbGxiYXJBdFBvaW50KG1vdXNlRXZlbnQucG9zKCkp
IDogMDsKKyAgICBpZiAoc2Nyb2xsYmFyKSB7CisgICAgICAgIEhpdFRlc3RSZXF1ZXN0IHJlcXVl
c3QoSGl0VGVzdFJlcXVlc3Q6OkFjdGl2ZSk7CisgICAgICAgIEludFBvaW50IGRvY3VtZW50UG9p
bnQgPSB2aWV3LT53aW5kb3dUb0NvbnRlbnRzKG1vdXNlRXZlbnQucG9zKCkpOworICAgICAgICBN
b3VzZUV2ZW50V2l0aEhpdFRlc3RSZXN1bHRzIHN1YmZyYW1lTW91c2VFdmVudCA9IHN1YmZyYW1l
LT5kb2N1bWVudCgpLT5wcmVwYXJlTW91c2VFdmVudChyZXF1ZXN0LCBkb2N1bWVudFBvaW50LCBt
b3VzZUV2ZW50KTsKKyAgICAgICAgc3ViZnJhbWUtPmV2ZW50SGFuZGxlcigpLT5wYXNzTW91c2VQ
cmVzc0V2ZW50VG9TY3JvbGxiYXIoc3ViZnJhbWVNb3VzZUV2ZW50LCBzY3JvbGxiYXIpOworICAg
IH0gZWxzZQorICAgICAgICBzdWJmcmFtZS0+ZXZlbnRIYW5kbGVyKCktPmhhbmRsZU1vdXNlUHJl
c3NFdmVudChtb3VzZUV2ZW50KTsKICAgICByZXR1cm4gdHJ1ZTsKIH0KIAo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>54489</attachid>
            <date>2010-04-27 17:51:02 -0700</date>
            <delta_ts>2010-05-06 02:03:19 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-38189-20100428095100.patch</filename>
            <type>text/plain</type>
            <size>7035</size>
            <attacher name="Tony Chang">tony</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxv
ZwppbmRleCAzZWFmMWVhYWRkMWU4N2QxYzQ5NjViMTIxZDVhMGQ5YWRkMTkzNWNjLi40Y2U4Njg1
ZWVjZDEyNjhlZmY0M2E2YWVlNTI0NTYyMTk1ODI0YzQ0IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0
cy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTUgQEAK
KzIwMTAtMDQtMjcgIFRvbnkgQ2hhbmcgIDx0b255QGNocm9taXVtLm9yZz4KKworICAgICAgICBS
ZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBbY2hyb21pdW1dIGNsaWNraW5n
IGEgc2Nyb2xsYmFyIGluIGFuIGlmcmFtZSBzaG91bGRuJ3QgbG9zZSB0aGUgc2VsZWN0aW9uCisg
ICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0zODE4OQorCisg
ICAgICAgICogZmFzdC9ldmVudHMvbW91c2Vkb3duLWluLXN1YmZyYW1lLXNjcm9sbGJhci1leHBl
Y3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIGZhc3QvZXZlbnRzL21vdXNlZG93bi1pbi1zdWJm
cmFtZS1zY3JvbGxiYXIuaHRtbDogQWRkZWQuCisgICAgICAgICogZmFzdC9ldmVudHMvcmVzb3Vy
Y2VzL21vdXNlZG93bi1pbi1zdWJmcmFtZS1zY3JvbGxiYXIuaHRtbDogQWRkZWQuCisgICAgICAg
ICogcGxhdGZvcm0vd2luL1NraXBwZWQ6CisKIDIwMTAtMDQtMjcgIFl1em8gRnVqaXNoaW1hICA8
eXV6b0Bnb29nbGUuY29tPgogCiAgICAgICAgIFJldmlld2VkIGJ5IERhdmlkIEh5YXR0LgpkaWZm
IC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9ldmVudHMvbW91c2Vkb3duLWluLXN1YmZyYW1lLXNj
cm9sbGJhci1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9mYXN0L2V2ZW50cy9tb3VzZWRvd24t
aW4tc3ViZnJhbWUtc2Nyb2xsYmFyLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NApp
bmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5mZmNlYWY0NjY5
NmFhYTA0Yzk4ZDRlNDc3ZTlkNDJiMWQ5YWQ2ZWVlCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0
VGVzdHMvZmFzdC9ldmVudHMvbW91c2Vkb3duLWluLXN1YmZyYW1lLXNjcm9sbGJhci1leHBlY3Rl
ZC50eHQKQEAgLTAsMCArMSwxMyBAQAorVGhpcyB0ZXN0cyB0aGF0IGNsaWNraW5nIG9uIGEgc2Ny
b2xsYmFyIGluIGEgZnJhbWUgZG9lcyBub3QgY2xlYXIgc2VsZWN0aW9ucyBpbiB0aGUgZnJhbWUu
CisKKworU2VsZWN0aW9uOiBUaGlzCitpcwordGV4dAordG8KK2ZvcmNlCithCit2ZXJ0aWNhbAor
c2Nyb2xsYmFyCit0bworYXBwZWFyLgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9ldmVu
dHMvbW91c2Vkb3duLWluLXN1YmZyYW1lLXNjcm9sbGJhci5odG1sIGIvTGF5b3V0VGVzdHMvZmFz
dC9ldmVudHMvbW91c2Vkb3duLWluLXN1YmZyYW1lLXNjcm9sbGJhci5odG1sCm5ldyBmaWxlIG1v
ZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAu
LjNiZTNlYWQwZjIxOTEzYjE0OTA1N2E2OGZlZDQ1ZjBlN2ZiMjUxYzYKLS0tIC9kZXYvbnVsbAor
KysgYi9MYXlvdXRUZXN0cy9mYXN0L2V2ZW50cy9tb3VzZWRvd24taW4tc3ViZnJhbWUtc2Nyb2xs
YmFyLmh0bWwKQEAgLTAsMCArMSwyNSBAQAorPGJvZHk+CisgICAgPHA+VGhpcyB0ZXN0cyB0aGF0
IGNsaWNraW5nIG9uIGEgc2Nyb2xsYmFyIGluIGEgZnJhbWUgZG9lcyBub3QgY2xlYXIgc2VsZWN0
aW9ucyBpbiB0aGUgZnJhbWUuPC9wPgorICAgIDxpZnJhbWUgaWQ9ImZyIiBvbmxvYWQ9InRlc3Qo
KSIgc3JjPSJyZXNvdXJjZXMvbW91c2Vkb3duLWluLXN1YmZyYW1lLXNjcm9sbGJhci5odG1sIj48
L2lmcmFtZT4KKyAgICA8ZGl2IGlkPSJyZXN1bHRzIj48L2Rpdj4KKzwvYm9keT4KKzxzY3JpcHQ+
CitmdW5jdGlvbiB0ZXN0KCkgeworICAgIGlmICh3aW5kb3cubGF5b3V0VGVzdENvbnRyb2xsZXIp
CisgICAgICAgIGxheW91dFRlc3RDb250cm9sbGVyLmR1bXBBc1RleHQoKTsKKworICAgIHZhciBp
ZnJhbWUgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZnIiKTsKKyAgICBpZnJhbWUuY29udGVu
dFdpbmRvdy5mb2N1c0FuZFNlbGVjdFRleHQoKTsKKworICAgIGlmICh3aW5kb3cuZXZlbnRTZW5k
ZXIpIHsKKyAgICAgICAgdmFyIHggPSBpZnJhbWUub2Zmc2V0TGVmdCArIGlmcmFtZS5vZmZzZXRX
aWR0aDsKKyAgICAgICAgdmFyIHkgPSBpZnJhbWUub2Zmc2V0VG9wOworICAgICAgICBldmVudFNl
bmRlci5tb3VzZU1vdmVUbyh4IC0gNSwgeSArIDUpOworICAgICAgICBldmVudFNlbmRlci5tb3Vz
ZURvd24oKTsKKyAgICAgICAgZXZlbnRTZW5kZXIubW91c2VNb3ZlVG8oeCAtIDUsIHkgKyAyMCk7
CisgICAgICAgIGV2ZW50U2VuZGVyLm1vdXNlVXAoKTsKKyAgICB9CisgICAgZG9jdW1lbnQuZ2V0
RWxlbWVudEJ5SWQoInJlc3VsdHMiKS5pbm5lclRleHQgPSAiU2VsZWN0aW9uOiAiICsKKyAgICAg
ICAgaWZyYW1lLmNvbnRlbnRXaW5kb3cuZ2V0U2VsZWN0aW9uKCk7Cit9Cis8L3NjcmlwdD4KZGlm
ZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvZXZlbnRzL3Jlc291cmNlcy9tb3VzZWRvd24taW4t
c3ViZnJhbWUtc2Nyb2xsYmFyLmh0bWwgYi9MYXlvdXRUZXN0cy9mYXN0L2V2ZW50cy9yZXNvdXJj
ZXMvbW91c2Vkb3duLWluLXN1YmZyYW1lLXNjcm9sbGJhci5odG1sCm5ldyBmaWxlIG1vZGUgMTAw
NjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjgwNzc5
ZDRkOGMxYzAwMTljZjhiNmY1OTMyNWI4YjZkY2RmYzJmMWQKLS0tIC9kZXYvbnVsbAorKysgYi9M
YXlvdXRUZXN0cy9mYXN0L2V2ZW50cy9yZXNvdXJjZXMvbW91c2Vkb3duLWluLXN1YmZyYW1lLXNj
cm9sbGJhci5odG1sCkBAIC0wLDAgKzEsMjYgQEAKKzxib2R5IGNvbnRlbnRFZGl0YWJsZT4KKzxw
IGlkPSJwIj4KKyAgVGhpczxici8+CisgIGlzPGJyLz4KKyAgdGV4dDxici8+CisgIHRvPGJyLz4K
KyAgZm9yY2U8YnIvPgorICBhPGJyLz4KKyAgdmVydGljYWw8YnIvPgorICBzY3JvbGxiYXI8YnIv
PgorICB0bzxici8+CisgIGFwcGVhci48YnIvPgorPC9wPgorPHNjcmlwdD4KK3dpbmRvdy5mb2N1
c0FuZFNlbGVjdFRleHQgPSBmdW5jdGlvbigpCit7CisgICAgZG9jdW1lbnQuYm9keS5mb2N1cygp
OworICAgIGRvY3VtZW50LmV4ZWNDb21tYW5kKCJTZWxlY3RBbGwiKTsKK30KKword2luZG93Lmdl
dFNlbGVjdGVkVGV4dCA9IGZ1bmN0aW9uKCkKK3sKKyAgICByZXR1cm4gd2luZG93LmdldFNlbGVj
dGlvbigpLmdldFJhbmdlQXQoMCkudG9TdHJpbmcoKTsKK30KKzwvc2NyaXB0PgorPC9ib2R5Pgpk
aWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vd2luL1NraXBwZWQgYi9MYXlvdXRUZXN0
cy9wbGF0Zm9ybS93aW4vU2tpcHBlZAppbmRleCAxMzA4ZDY0ZTAxNzk1YWY2ZWUzNDIxODgzYmY3
MmE1ZjZhODc5NGMyLi40M2YxODBhYTcyN2QzMmZhMTZhOWE1YTFiOWNlYjk5ZjhmODUyNzg5IDEw
MDY0NAotLS0gYS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS93aW4vU2tpcHBlZAorKysgYi9MYXlvdXRU
ZXN0cy9wbGF0Zm9ybS93aW4vU2tpcHBlZApAQCAtODU1LDMgKzg1NSw2IEBAIGZhc3QvbGlzdHMv
b2wtbmVzdGVkLWl0ZW1zLmh0bWwKIGZhc3QvbGlzdHMvb2wtbmVzdGVkLWxpc3QtZHluYW1pYy1p
bnNlcnQuaHRtbAogZmFzdC9saXN0cy9vbC1uZXN0ZWQtbGlzdC1keW5hbWljLXJlbW92ZS5odG1s
CiBmYXN0L2xpc3RzL29sLW5lc3RlZC1saXN0Lmh0bWwKKworIyBOZWVkIHRvIGhhbmRsZSBtb3Vz
ZVByZXNzIGluIHN1YmZyYW1lcyBzcGVjaWFsbHkuIFNlZSBodHRwczovL2J1Z3Mud2Via2l0Lm9y
Zy9zaG93X2J1Zy5jZ2k/aWQ9MjAyMzYKK2Zhc3QvZXZlbnRzL21vdXNlZG93bi1pbi1zdWJmcmFt
ZS1zY3JvbGxiYXIuaHRtbApkaWZmIC0tZ2l0IGEvV2ViQ29yZS9DaGFuZ2VMb2cgYi9XZWJDb3Jl
L0NoYW5nZUxvZwppbmRleCAzZjVkM2YyMDQ5NDNkMmRkMjkzNDk3M2E4OTg1NTU3ODZmOTQ0NWUx
Li5hMTE3M2UzNDhkNWExNTFkNWQ3NWJiZmMzMWQwMzE3MDBjNjAzNzRjIDEwMDY0NAotLS0gYS9X
ZWJDb3JlL0NoYW5nZUxvZworKysgYi9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE3IEBA
CisyMDEwLTA0LTI3ICBUb255IENoYW5nICA8dG9ueUBjaHJvbWl1bS5vcmc+CisKKyAgICAgICAg
UmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgW2Nocm9taXVtXSBjbGlja2lu
ZyBhIHNjcm9sbGJhciBpbiBhbiBpZnJhbWUgc2hvdWxkbid0IGxvc2UgdGhlIHNlbGVjdGlvbgor
ICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MzgxODkKKwor
ICAgICAgICBUZXN0OiBmYXN0L2V2ZW50cy9tb3VzZWRvd24taW4tc3ViZnJhbWUtc2Nyb2xsYmFy
Lmh0bWwKKworICAgICAgICAqIHBhZ2UvY2hyb21pdW0vRXZlbnRIYW5kbGVyQ2hyb21pdW0uY3Bw
OgorICAgICAgICAoV2ViQ29yZTo6RXZlbnRIYW5kbGVyOjpwYXNzTW91c2VQcmVzc0V2ZW50VG9T
dWJmcmFtZSk6IElmIGNsaWNraW5nIG9uCisgICAgICAgICAgICBhIHNjcm9sbGJhciwgcGFzcyB0
aGUgZXZlbnQgZGlyZWN0bHkgdG8gdGhlIHNjcm9sbGJhci4gIFRoaXMgbWF0Y2hlcworICAgICAg
ICAgICAgbWFjIHdoaWNoIHBhc3NlcyB0aGUgZXZlbnQgdG8gdGhlIE5TU2Nyb2xsZXIuCisKIDIw
MTAtMDQtMjcgIFl1em8gRnVqaXNoaW1hICA8eXV6b0Bnb29nbGUuY29tPgogCiAgICAgICAgIFJl
dmlld2VkIGJ5IFNoaW5pY2hpcm8gSGFtYWppLgpkaWZmIC0tZ2l0IGEvV2ViQ29yZS9wYWdlL2No
cm9taXVtL0V2ZW50SGFuZGxlckNocm9taXVtLmNwcCBiL1dlYkNvcmUvcGFnZS9jaHJvbWl1bS9F
dmVudEhhbmRsZXJDaHJvbWl1bS5jcHAKaW5kZXggZmYxNjFhZjRiNTQ1NDdmNDMxODNiZGQ0MGZh
YWJjNmE1NjkxMGZjNS4uYmY5YWNiNzJjZGNkNDRkYzJiZGFiNzY2MWM3NzQ1ZWM3ZTNhMWZjYiAx
MDA2NDQKLS0tIGEvV2ViQ29yZS9wYWdlL2Nocm9taXVtL0V2ZW50SGFuZGxlckNocm9taXVtLmNw
cAorKysgYi9XZWJDb3JlL3BhZ2UvY2hyb21pdW0vRXZlbnRIYW5kbGVyQ2hyb21pdW0uY3BwCkBA
IC01NCwxMSArNTQsMTIgQEAgY29uc3QgZG91YmxlIEV2ZW50SGFuZGxlcjo6VGV4dERyYWdEZWxh
eSA9IDAuMDsKIAogYm9vbCBFdmVudEhhbmRsZXI6OnBhc3NNb3VzZVByZXNzRXZlbnRUb1N1YmZy
YW1lKE1vdXNlRXZlbnRXaXRoSGl0VGVzdFJlc3VsdHMmIG1ldiwgRnJhbWUqIHN1YmZyYW1lKQog
eworICAgIGNvbnN0IFBsYXRmb3JtTW91c2VFdmVudCYgbW91c2VFdmVudCA9IG1ldi5ldmVudCgp
OwogICAgIC8vIElmIHdlJ3JlIGNsaWNraW5nIGludG8gYSBmcmFtZSB0aGF0IGlzIHNlbGVjdGVk
LCB0aGUgZnJhbWUgd2lsbCBhcHBlYXIKICAgICAvLyBncmV5ZWQgb3V0IGV2ZW4gdGhvdWdoIHdl
J3JlIGNsaWNraW5nIG9uIHRoZSBzZWxlY3Rpb24uICBUaGlzIGxvb2tzCiAgICAgLy8gcmVhbGx5
IHN0cmFuZ2UgKGhhdmluZyB0aGUgd2hvbGUgZnJhbWUgYmUgZ3JleWVkIG91dCksIHNvIHdlIGRl
c2VsZWN0IHRoZQogICAgIC8vIHNlbGVjdGlvbi4KLSAgICBJbnRQb2ludCBwID0gbV9mcmFtZS0+
dmlldygpLT53aW5kb3dUb0NvbnRlbnRzKG1ldi5ldmVudCgpLnBvcygpKTsKKyAgICBJbnRQb2lu
dCBwID0gbV9mcmFtZS0+dmlldygpLT53aW5kb3dUb0NvbnRlbnRzKG1vdXNlRXZlbnQucG9zKCkp
OwogICAgIGlmIChtX2ZyYW1lLT5zZWxlY3Rpb24oKS0+Y29udGFpbnMocCkpIHsKICAgICAgICAg
VmlzaWJsZVBvc2l0aW9uIHZpc2libGVQb3MoCiAgICAgICAgICAgICBtZXYudGFyZ2V0Tm9kZSgp
LT5yZW5kZXJlcigpLT5wb3NpdGlvbkZvclBvaW50KG1ldi5sb2NhbFBvaW50KCkpKTsKQEAgLTY3
LDcgKzY4LDE5IEBAIGJvb2wgRXZlbnRIYW5kbGVyOjpwYXNzTW91c2VQcmVzc0V2ZW50VG9TdWJm
cmFtZShNb3VzZUV2ZW50V2l0aEhpdFRlc3RSZXN1bHRzJiBtCiAgICAgICAgICAgICBtX2ZyYW1l
LT5zZWxlY3Rpb24oKS0+c2V0U2VsZWN0aW9uKG5ld1NlbGVjdGlvbik7CiAgICAgfQogCi0gICAg
c3ViZnJhbWUtPmV2ZW50SGFuZGxlcigpLT5oYW5kbGVNb3VzZVByZXNzRXZlbnQobWV2LmV2ZW50
KCkpOworICAgIC8vIElmIHRoZSBjbGljayBoaXRzIGEgc2Nyb2xsYmFyLCB3ZSBwYXNzIHRoZSBt
b3VzZSBwcmVzcyBldmVudCB0byB0aGUKKyAgICAvLyBzY3JvbGxiYXIgZGlyZWN0bHkuICBUaGlz
IHByZXZlbnRzIHNlbGVjdGVkIHRleHQgZnJvbSBiZWluZyB1bnNlbGVjdGVkLgorICAgIC8vIFRo
aXMgbWF0Y2hlcyB0aGUgV2ViS2l0IG1hYyBjb2RlIHdoaWNoIHBhc3NlcyB0aGUgbW91c2UgcHJl
c3MgZXZlbnQKKyAgICAvLyB0byBhbiBOU1Njcm9sbGVyLgorICAgIEZyYW1lVmlldyogdmlldyA9
IHN1YmZyYW1lLT52aWV3KCk7CisgICAgU2Nyb2xsYmFyKiBzY3JvbGxiYXIgPSB2aWV3ID8gdmll
dy0+c2Nyb2xsYmFyQXRQb2ludChtb3VzZUV2ZW50LnBvcygpKSA6IDA7CisgICAgaWYgKHNjcm9s
bGJhcikgeworICAgICAgICBIaXRUZXN0UmVxdWVzdCByZXF1ZXN0KEhpdFRlc3RSZXF1ZXN0OjpB
Y3RpdmUpOworICAgICAgICBJbnRQb2ludCBkb2N1bWVudFBvaW50ID0gdmlldy0+d2luZG93VG9D
b250ZW50cyhtb3VzZUV2ZW50LnBvcygpKTsKKyAgICAgICAgTW91c2VFdmVudFdpdGhIaXRUZXN0
UmVzdWx0cyBzdWJmcmFtZU1vdXNlRXZlbnQgPSBzdWJmcmFtZS0+ZG9jdW1lbnQoKS0+cHJlcGFy
ZU1vdXNlRXZlbnQocmVxdWVzdCwgZG9jdW1lbnRQb2ludCwgbW91c2VFdmVudCk7CisgICAgICAg
IHN1YmZyYW1lLT5ldmVudEhhbmRsZXIoKS0+cGFzc01vdXNlUHJlc3NFdmVudFRvU2Nyb2xsYmFy
KHN1YmZyYW1lTW91c2VFdmVudCwgc2Nyb2xsYmFyKTsKKyAgICB9IGVsc2UKKyAgICAgICAgc3Vi
ZnJhbWUtPmV2ZW50SGFuZGxlcigpLT5oYW5kbGVNb3VzZVByZXNzRXZlbnQobW91c2VFdmVudCk7
CiAgICAgcmV0dXJuIHRydWU7CiB9CiAK
</data>
<flag name="review"
          id="38494"
          type_id="1"
          status="+"
          setter="eric"
    />
    <flag name="commit-queue"
          id="39332"
          type_id="3"
          status="-"
          setter="commit-queue"
    />
          </attachment>
      

    </bug>

</bugzilla>