<?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>27105</bug_id>
          
          <creation_ts>2009-07-08 17:34:36 -0700</creation_ts>
          <short_desc>Blur and focus events are not fired when window is blurred and focused</short_desc>
          <delta_ts>2010-12-07 20:52:18 -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>DOM</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>All</rep_platform>
          <op_sys>All</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>HasReduction, InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Erik Arvidsson">arv</reporter>
          <assigned_to name="Erik Arvidsson">arv</assigned_to>
          <cc>adele</cc>
    
    <cc>commit-queue</cc>
    
    <cc>eric</cc>
    
    <cc>hyatt</cc>
    
    <cc>jhoneycutt</cc>
    
    <cc>pg</cc>
    
    <cc>simon.fraser</cc>
    
    <cc>sullivan</cc>
    
    <cc>tonikitoo</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>130583</commentid>
    <comment_count>0</comment_count>
      <attachid>32492</attachid>
    <who name="Erik Arvidsson">arv</who>
    <bug_when>2009-07-08 17:34:36 -0700</bug_when>
    <thetext>Created attachment 32492
Test case

Given an element that can be focused and has focus and blur event listeners. When the user tabs to the element or clicks on it the focus event is fired. Likewise, the blur event is fired when tabbing out or clicking elsewhere. The focus rectangle correctly reflects this. However, if i focus the element and switch to another window no focus nor blur events are fired.

The test prints the events being fired. Notice that no events are fired when the user switches between windows.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>130602</commentid>
    <comment_count>1</comment_count>
    <who name="Mark Rowe (bdash)">mrowe</who>
    <bug_when>2009-07-08 19:59:19 -0700</bug_when>
    <thetext>&lt;rdar://problem/7043685&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>130677</commentid>
    <comment_count>2</comment_count>
    <who name="Erik Arvidsson">arv</who>
    <bug_when>2009-07-09 09:44:51 -0700</bug_when>
    <thetext>Also, ctrl-tab to switch window tabs shows the same behavior.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>144906</commentid>
    <comment_count>3</comment_count>
      <attachid>39087</attachid>
    <who name="Erik Arvidsson">arv</who>
    <bug_when>2009-09-04 13:06:53 -0700</bug_when>
    <thetext>Created attachment 39087
Test case

Updated test case to include window events and targets</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>144975</commentid>
    <comment_count>4</comment_count>
      <attachid>39108</attachid>
    <who name="Erik Arvidsson">arv</who>
    <bug_when>2009-09-04 18:36:54 -0700</bug_when>
    <thetext>Created attachment 39108
Patch v1</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>145550</commentid>
    <comment_count>5</comment_count>
      <attachid>39108</attachid>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2009-09-08 14:49:59 -0700</bug_when>
    <thetext>Comment on attachment 39108
Patch v1

Arv mentioned in-person that he wanted to update this.

changes which were discussed
shouldBeEqualToString (nit)
function for shorter js test (nit)
removal of &quot;focus me&quot; from bottom of test (nit)
comment in dispatchEventsOnWindowAndFocusedNode to document intended behavior.

In general this looks fine to me.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>145589</commentid>
    <comment_count>6</comment_count>
      <attachid>39228</attachid>
    <who name="Erik Arvidsson">arv</who>
    <bug_when>2009-09-08 16:56:43 -0700</bug_when>
    <thetext>Created attachment 39228
Fixes Eric&apos;s comments


---
 6 files changed, 118 insertions(+), 4 deletions(-)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>145590</commentid>
    <comment_count>7</comment_count>
      <attachid>39229</attachid>
    <who name="Erik Arvidsson">arv</who>
    <bug_when>2009-09-08 16:56:47 -0700</bug_when>
    <thetext>Created attachment 39229
Fixes Eric&apos;s comments


---
 5 files changed, 38 insertions(+), 42 deletions(-)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>145592</commentid>
    <comment_count>8</comment_count>
    <who name="Erik Arvidsson">arv</who>
    <bug_when>2009-09-08 17:01:51 -0700</bug_when>
    <thetext>Sorry about the spam. My git+bugzilla-tool fu failed</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>145618</commentid>
    <comment_count>9</comment_count>
      <attachid>39240</attachid>
    <who name="Erik Arvidsson">arv</who>
    <bug_when>2009-09-08 18:37:32 -0700</bug_when>
    <thetext>Created attachment 39240
All comments resolved.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>145759</commentid>
    <comment_count>10</comment_count>
      <attachid>39240</attachid>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2009-09-09 08:08:48 -0700</bug_when>
    <thetext>Comment on attachment 39240
All comments resolved.

OK.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>145767</commentid>
    <comment_count>11</comment_count>
      <attachid>39240</attachid>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2009-09-09 08:19:30 -0700</bug_when>
    <thetext>Comment on attachment 39240
All comments resolved.

Rejecting patch 39240 from commit-queue.

This patch will require manual commit. [&apos;WebKitTools/Scripts/run-webkit-tests&apos;, &apos;--no-launch-safari&apos;, &apos;--quiet&apos;, &apos;--exit-after-n-failures=1&apos;] failed with exit code 1</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>145797</commentid>
    <comment_count>12</comment_count>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2009-09-09 09:37:48 -0700</bug_when>
    <thetext>fast/events/tabindex-focus-blur-all.html -&gt; failed
Seems we&apos;ll need new expected results.  Meaning unless someone would like to fix this manually on landing we&apos;ll need a new patch. :)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>145853</commentid>
    <comment_count>13</comment_count>
    <who name="Erik Arvidsson">arv</who>
    <bug_when>2009-09-09 11:13:43 -0700</bug_when>
    <thetext>I&apos;ll work on a new patch.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>146050</commentid>
    <comment_count>14</comment_count>
      <attachid>39318</attachid>
    <who name="Erik Arvidsson">arv</who>
    <bug_when>2009-09-09 18:34:14 -0700</bug_when>
    <thetext>Created attachment 39318
Fixed iframe case

The last patch had real failures in it which was caught be the submit queue.

This patch handles iframes correctly and I extended the test case to cover that.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>146054</commentid>
    <comment_count>15</comment_count>
      <attachid>39318</attachid>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2009-09-09 18:42:40 -0700</bug_when>
    <thetext>Comment on attachment 39318
Fixed iframe case

Why does the blur count need to change?  And why is the changed value correct?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>146209</commentid>
    <comment_count>16</comment_count>
    <who name="Erik Arvidsson">arv</who>
    <bug_when>2009-09-10 08:54:51 -0700</bug_when>
    <thetext>(In reply to comment #15)
&gt; (From update of attachment 39318 [details])
&gt; Why does the blur count need to change?  And why is the changed value correct?

The blur count did not actually change. I just fixed the hard coded text to reflect the correct count. The expected count changed in a previous patch but the test was not updated back then.

-329 focus / 329 blur events dispatched, and should be 335 / 335 PASSED
+329 focus / 329 blur events dispatched, and should be 329 / 329 PASSED

I can take this file out of the patch if you prefer?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>146222</commentid>
    <comment_count>17</comment_count>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2009-09-10 09:38:19 -0700</bug_when>
    <thetext>(In reply to comment #16)
&gt; (In reply to comment #15)
&gt; &gt; (From update of attachment 39318 [details] [details])
&gt; &gt; Why does the blur count need to change?  And why is the changed value correct?
&gt; 
&gt; The blur count did not actually change. I just fixed the hard coded text to
&gt; reflect the correct count. The expected count changed in a previous patch but
&gt; the test was not updated back then.
&gt; 
&gt; -329 focus / 329 blur events dispatched, and should be 335 / 335 PASSED
&gt; +329 focus / 329 blur events dispatched, and should be 329 / 329 PASSED
&gt; 
&gt; I can take this file out of the patch if you prefer?

Oh, so there is no functional change to the test, you&apos;re just correcting a typo?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>146223</commentid>
    <comment_count>18</comment_count>
      <attachid>39318</attachid>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2009-09-10 09:39:07 -0700</bug_when>
    <thetext>Comment on attachment 39318
Fixed iframe case

Makes sense.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>146240</commentid>
    <comment_count>19</comment_count>
      <attachid>39318</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2009-09-10 10:03:59 -0700</bug_when>
    <thetext>Comment on attachment 39318
Fixed iframe case

Clearing flags on attachment: 39318

Committed r48257: &lt;http://trac.webkit.org/changeset/48257&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>146241</commentid>
    <comment_count>20</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2009-09-10 10:04:04 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>165913</commentid>
    <comment_count>21</comment_count>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2009-11-23 13:31:39 -0800</bug_when>
    <thetext>This regressed clicking on autocompletion lists on windows: &lt;rdar://problem/7391640&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>174608</commentid>
    <comment_count>22</comment_count>
    <who name="John Sullivan">sullivan</who>
    <bug_when>2009-12-23 10:39:17 -0800</bug_when>
    <thetext>This also caused a regression in which textfield callbacks are sent to editing clients: &lt;https://bugs.webkit.org/show_bug.cgi?id=32904&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>216221</commentid>
    <comment_count>23</comment_count>
    <who name="Jon Honeycutt">jhoneycutt</who>
    <bug_when>2010-04-22 19:02:40 -0700</bug_when>
    <thetext>This led to a regression with onfocus handlers that call alert(). &lt;rdar://problem/7880378&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>216227</commentid>
    <comment_count>24</comment_count>
    <who name="Erik Arvidsson">arv</who>
    <bug_when>2010-04-22 19:32:27 -0700</bug_when>
    <thetext>In general I think this is a bug in the web page but I agree that we need to defend against this case.

Here is what IE or Firefox do:

- IE does not dispatch the blur event
  Cons: The UI might not be correct because it did not receive the event

- Firefox dispatches the blur event but they do not restore focus so no second focus event is dispatched.
  Cons: The element does not get focus back so people using the keyboard will have to tab back to the element.

Other options include not showing the alert in a focus event which of course is also strange. 

Personally I think the best solution is to do what Chrome does and add a checkbox to the alert allowing the user to prevent more popups to be shown.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>216296</commentid>
    <comment_count>25</comment_count>
    <who name="Adele Peterson">adele</who>
    <bug_when>2010-04-22 23:54:45 -0700</bug_when>
    <thetext>Maybe there is an obvious answer here - but how was the original change an improvement?  Should we consider reverting this change?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>216443</commentid>
    <comment_count>26</comment_count>
    <who name="Erik Arvidsson">arv</who>
    <bug_when>2010-04-23 09:29:13 -0700</bug_when>
    <thetext>This fixes real world bugs [*].

Lets not revert a correct behavior due to a handful incorrect sites.

If this is causing iloops in high traffic sites a temporary revert on the release branch might be the correct answer until we solve the iloop alert problem. FWIW, Chrome has had this fix for a long time and has no reports of issues with this.  It might be due to it having a checkbox in the alerts to prevent all alert iloops.

[*] Almost all Google Apps rely on focus and blur events and one way the original bug manifests itself can be seen through the following steps:

1. Go to gmail
2. Focus the search field and type &quot;is:&quot;
3. This shows an auto complete popup
4. Focus another window

Expected result

The auto complete popup should be hidden.

On trunk this works but on Safari 4 the popup is not hidden when the element loses focus.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>237050</commentid>
    <comment_count>27</comment_count>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2010-06-11 15:01:40 -0700</bug_when>
    <thetext>*** Bug 4814 has been marked as a duplicate of this bug. ***</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="0"
              isprivate="0"
          >
            <attachid>32492</attachid>
            <date>2009-07-08 17:34:36 -0700</date>
            <delta_ts>2009-09-04 13:06:53 -0700</delta_ts>
            <desc>Test case</desc>
            <filename>focus-blur-window.html</filename>
            <type>text/html</type>
            <size>374</size>
            <attacher name="Erik Arvidsson">arv</attacher>
            
              <data encoding="base64">PCFET0NUWVBFIGh0bWw+CjxodG1sPgo8aGVhZD4KPHRpdGxlPjwvdGl0bGU+CjxzdHlsZT4KCjwv
c3R5bGU+CjxzY3JpcHQ+CgpmdW5jdGlvbiBwcmludChzKSB7CiAgdmFyIGVsID0gZG9jdW1lbnQu
cXVlcnlTZWxlY3RvcigncHJlJyk7CiAgZWwudGV4dENvbnRlbnQgKz0gcyArICdcbic7Cn0KCjwv
c2NyaXB0Pgo8L2hlYWQ+Cjxib2R5PgoKPGRpdiB0YWJpbmRleD0wIG9uZm9jdXM9InByaW50KCdm
b2N1cycpIgogICAgIG9uYmx1cj0icHJpbnQoJ2JsdXInKSI+VGFiIHRvIG1lPC9kaXY+Cgo8cD5U
aGVuIGNsaWNrIG9uIGFub3RoZXIgd2luZG93IGFuZCBhbHQvYXBwbGUtdGFiIGJhY2suCgo8cHJl
IGlkPW91dD48L3ByZT4KCjwvYm9keT4KPC9odG1sPgo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="0"
              isprivate="0"
          >
            <attachid>39087</attachid>
            <date>2009-09-04 13:06:53 -0700</date>
            <delta_ts>2009-09-04 13:06:53 -0700</delta_ts>
            <desc>Test case</desc>
            <filename>focus-blur-window.html</filename>
            <type>text/html</type>
            <size>1409</size>
            <attacher name="Erik Arvidsson">arv</attacher>
            
              <data encoding="base64">PCFET0NUWVBFIGh0bWw+CjxodG1sPgo8aGVhZD4KPHRpdGxlPjwvdGl0bGU+CjxzdHlsZT4KCjwv
c3R5bGU+CjxzY3JpcHQ+CgppZiAoT2JqZWN0LmRlZmluZVByb3BlcnR5ICYmCiAgICB0eXBlb2Yg
ZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LnRleHRDb250ZW50ID09ICd1bmRlZmluZWQnKSB7CiAg
dmFyIHNldFRleHRDb250ZW50ID0gZnVuY3Rpb24ocykgewogICAgd2hpbGUgKHRoaXMuaGFzQ2hp
bGROb2RlcygpKSB7CiAgICAgIHRoaXMucmVtb3ZlQ2hpbGQodGhpcy5sYXN0Q2hpbGQpOwogICAg
fQogICAgdGhpcy5hcHBlbmRDaGlsZCh0aGlzLm93bmVyRG9jdW1lbnQuY3JlYXRlVGV4dE5vZGUo
cykpOwogIH07CgogIHZhciBnZXRUZXh0Q29udGVudCA9IGZ1bmN0aW9uKCkgewogICAgdmFyIHMg
PSAnJzsKICAgIGZvciAodmFyIGkgPSAwOyBpIDwgdGhpcy5jaGlsZE5vZGVzLmxlbmd0aDsgaSsr
KSB7CiAgICAgIHMgKz0gdGhpcy5jaGlsZE5vZGVzW2ldLnRleHRDb250ZW50OwogICAgfQogICAg
cmV0dXJuIHM7CiAgfTsKCiAgT2JqZWN0LmRlZmluZVByb3BlcnR5KEVsZW1lbnQucHJvdG90eXBl
LCAndGV4dENvbnRlbnQnLCB7CiAgICBzZXQ6IHNldFRleHRDb250ZW50LAogICAgZ2V0OiBnZXRU
ZXh0Q29udGVudAogIH0pOwoKICBPYmplY3QuZGVmaW5lUHJvcGVydHkoVGV4dC5wcm90b3R5cGUs
ICd0ZXh0Q29udGVudCcsIHsKICAgIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiB0aGlz
LmRhdGE7CiAgICB9LAogICAgc2V0OiBmdW5jdGlvbih2KSB7CiAgICAgIHRoaXMuZGF0YSA9IHY7
CiAgICB9CiAgfSk7Cn0KCmZ1bmN0aW9uIHByaW50KHMpIHsKICB2YXIgZWwgPSBkb2N1bWVudC5x
dWVyeVNlbGVjdG9yKCdwcmUnKTsKICBlbC50ZXh0Q29udGVudCArPSBzICsgJ1xuJzsKfQoKZnVu
Y3Rpb24gaGFuZGxlRXZlbnQoZSkgewogIHByaW50KGUudHlwZSArICcsICcgKyBkb2N1bWVudC5h
Y3RpdmVFbGVtZW50KTsKfQoKd2luZG93Lm9uZm9jdXMgPSBmdW5jdGlvbihlKSB7CiAgcHJpbnQo
J3dpbmRvdyBmb2N1cywgJyArIGUudGFyZ2V0ICsgJywgJyArIGRvY3VtZW50LmFjdGl2ZUVsZW1l
bnQpOwp9OwoKd2luZG93Lm9uYmx1ciA9IGZ1bmN0aW9uKGUpIHsKICBwcmludCgnd2luZG93IGJs
dXIsICcgKyBlLnRhcmdldCArICcsICcgKyBkb2N1bWVudC5hY3RpdmVFbGVtZW50KTsKfTsKCjwv
c2NyaXB0Pgo8L2hlYWQ+Cjxib2R5PgoKPGRpdiB0YWJpbmRleD0wIG9uZm9jdXM9ImhhbmRsZUV2
ZW50KGV2ZW50KSIKICAgICBvbmJsdXI9ImhhbmRsZUV2ZW50KGV2ZW50KSI+VGFiIHRvIG1lPC9k
aXY+Cgo8cD5UaGVuIGNsaWNrIG9uIGFub3RoZXIgd2luZG93IGFuZCBhbHQvYXBwbGUtdGFiIGJh
Y2suCgo8cHJlIGlkPW91dD48L3ByZT4KCjwvYm9keT4KPC9odG1sPgo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>39108</attachid>
            <date>2009-09-04 18:36:54 -0700</date>
            <delta_ts>2009-09-08 16:56:40 -0700</delta_ts>
            <desc>Patch v1</desc>
            <filename>bug-27105-20090904183652.patch</filename>
            <type>text/plain</type>
            <size>7166</size>
            <attacher name="Erik Arvidsson">arv</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxv
ZwppbmRleCA5ZjA2ZGIyLi5jOWM1MmNiIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VM
b2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTUgQEAKKzIwMDktMDkt
MDQgIEVyaWsgQXJ2aWRzc29uICA8YXJ2QGNocm9taXVtLm9yZz4KKworICAgICAgICBSZXZpZXdl
ZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBGaXhlcyBpc3N1ZSB3aGVyZSBmb2N1c2Vk
IGVsZW1lbnRzIGRpZCBub3QgZ2V0IGJsdXIgYW5kIGZvY3VzIGV2ZW50cyB3aGVuIHRoZSB3aW5k
b3cgd2FzIGJsdXJyZWQgYW5kIGZvY3VzZWQuCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQu
b3JnL3Nob3dfYnVnLmNnaT9pZD0yNzEwNQorCisgICAgICAgICogZmFzdC9ldmVudHMvYmx1ci1m
b2N1cy13aW5kb3ctc2hvdWxkLWJsdXItZm9jdXMtZWxlbWVudC1leHBlY3RlZC50eHQ6IEFkZGVk
LgorICAgICAgICAqIGZhc3QvZXZlbnRzL2JsdXItZm9jdXMtd2luZG93LXNob3VsZC1ibHVyLWZv
Y3VzLWVsZW1lbnQuaHRtbDogQWRkZWQuCisgICAgICAgICogZmFzdC9ldmVudHMvcmVzb3VyY2Vz
L2JsdXItZm9jdXMtd2luZG93LXNob3VsZC1ibHVyLWZvY3VzLWVsZW1lbnQuanM6IEFkZGVkLgor
ICAgICAgICAoZGl2RWxlbWVudC5vbmZvY3VzLmRpdkVsZW1lbnQub25ibHVyLndpbmRvdy5vbmZv
Y3VzLndpbmRvdy5vbmJsdXIpOgorCiAyMDA5LTA5LTA0ICBZYWVsIEFoYXJvbiAgPHlhZWwuYWhh
cm9uQG5va2lhLmNvbT4KIAogICAgICAgICBSZXZpZXdlZCBieSBEYXJpbiBBZGxlci4KZGlmZiAt
LWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvZXZlbnRzL2JsdXItZm9jdXMtd2luZG93LXNob3VsZC1i
bHVyLWZvY3VzLWVsZW1lbnQtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvZmFzdC9ldmVudHMv
Ymx1ci1mb2N1cy13aW5kb3ctc2hvdWxkLWJsdXItZm9jdXMtZWxlbWVudC1leHBlY3RlZC50eHQK
bmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMDA2MTg3NgotLS0gL2Rldi9udWxs
CisrKyBiL0xheW91dFRlc3RzL2Zhc3QvZXZlbnRzL2JsdXItZm9jdXMtd2luZG93LXNob3VsZC1i
bHVyLWZvY3VzLWVsZW1lbnQtZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsMjEgQEAKK0JsdXJyaW5n
IGFuZCBmb2N1c2luZyB0aGUgd2luZG93IHNob3VsZCBibHVyIGFuZCBmb2N1cyB0aGUgZm9jdXNl
ZCBlbGVtZW50CisKK09uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFTUyIg
bWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJURVNUIENPTVBMRVRFIi4KKworCitQQVNTIHRoaXNPYmpl
Y3RzW2ldIGlzIGRpdkVsZW1lbnQKK1BBU1MgZXZlbnRzW2ldIGlzICJibHVyIgorUEFTUyB0YXJn
ZXRzW2ldIGlzIGRpdkVsZW1lbnQKK1BBU1MgdGhpc09iamVjdHNbaV0gaXMgd2luZG93CitQQVNT
IGV2ZW50c1tpXSBpcyAiYmx1ciIKK1BBU1MgdGFyZ2V0c1tpXSBpcyB3aW5kb3cKK1BBU1MgdGhp
c09iamVjdHNbaV0gaXMgd2luZG93CitQQVNTIGV2ZW50c1tpXSBpcyAiZm9jdXMiCitQQVNTIHRh
cmdldHNbaV0gaXMgd2luZG93CitQQVNTIHRoaXNPYmplY3RzW2ldIGlzIGRpdkVsZW1lbnQKK1BB
U1MgZXZlbnRzW2ldIGlzICJmb2N1cyIKK1BBU1MgdGFyZ2V0c1tpXSBpcyBkaXZFbGVtZW50CitQ
QVNTIHN1Y2Nlc3NmdWxseVBhcnNlZCBpcyB0cnVlCisKK1RFU1QgQ09NUExFVEUKK0ZvY3VzIG1l
CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2V2ZW50cy9ibHVyLWZvY3VzLXdpbmRvdy1z
aG91bGQtYmx1ci1mb2N1cy1lbGVtZW50Lmh0bWwgYi9MYXlvdXRUZXN0cy9mYXN0L2V2ZW50cy9i
bHVyLWZvY3VzLXdpbmRvdy1zaG91bGQtYmx1ci1mb2N1cy1lbGVtZW50Lmh0bWwKbmV3IGZpbGUg
bW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYTIxMmJkNQotLS0gL2Rldi9udWxsCisrKyBiL0xh
eW91dFRlc3RzL2Zhc3QvZXZlbnRzL2JsdXItZm9jdXMtd2luZG93LXNob3VsZC1ibHVyLWZvY3Vz
LWVsZW1lbnQuaHRtbApAQCAtMCwwICsxLDEzIEBACis8IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0v
L0lFVEYvL0RURCBIVE1MLy9FTiI+Cis8aHRtbD4KKzxoZWFkPgorPGxpbmsgcmVsPSJzdHlsZXNo
ZWV0IiBocmVmPSIuLi9qcy9yZXNvdXJjZXMvanMtdGVzdC1zdHlsZS5jc3MiPgorPHNjcmlwdCBz
cmM9Ii4uL2pzL3Jlc291cmNlcy9qcy10ZXN0LXByZS5qcyI+PC9zY3JpcHQ+Cis8L2hlYWQ+Cis8
Ym9keT4KKzxwIGlkPSJkZXNjcmlwdGlvbiI+PC9wPgorPGRpdiBpZD0iY29uc29sZSI+PC9kaXY+
Cis8c2NyaXB0IHNyYz0icmVzb3VyY2VzL2JsdXItZm9jdXMtd2luZG93LXNob3VsZC1ibHVyLWZv
Y3VzLWVsZW1lbnQuanMiPjwvc2NyaXB0PgorPHNjcmlwdCBzcmM9Ii4uL2pzL3Jlc291cmNlcy9q
cy10ZXN0LXBvc3QuanMiPjwvc2NyaXB0PgorPC9ib2R5PgorPC9odG1sPgpkaWZmIC0tZ2l0IGEv
TGF5b3V0VGVzdHMvZmFzdC9ldmVudHMvcmVzb3VyY2VzL2JsdXItZm9jdXMtd2luZG93LXNob3Vs
ZC1ibHVyLWZvY3VzLWVsZW1lbnQuanMgYi9MYXlvdXRUZXN0cy9mYXN0L2V2ZW50cy9yZXNvdXJj
ZXMvYmx1ci1mb2N1cy13aW5kb3ctc2hvdWxkLWJsdXItZm9jdXMtZWxlbWVudC5qcwpuZXcgZmls
ZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5jNWYzYzlmCi0tLSAvZGV2L251bGwKKysrIGIv
TGF5b3V0VGVzdHMvZmFzdC9ldmVudHMvcmVzb3VyY2VzL2JsdXItZm9jdXMtd2luZG93LXNob3Vs
ZC1ibHVyLWZvY3VzLWVsZW1lbnQuanMKQEAgLTAsMCArMSw0NCBAQAorZGVzY3JpcHRpb24oJ0Js
dXJyaW5nIGFuZCBmb2N1c2luZyB0aGUgd2luZG93IHNob3VsZCBibHVyIGFuZCBmb2N1cyB0aGUg
Zm9jdXNlZCBlbGVtZW50Jyk7CisKK3ZhciBkaXZFbGVtZW50ID0gZG9jdW1lbnQuY3JlYXRlRWxl
bWVudCgnZGl2Jyk7CitkaXZFbGVtZW50LnRhYkluZGV4ID0gMDsKK2RpdkVsZW1lbnQudGV4dENv
bnRlbnQgPSAnRm9jdXMgbWUnOworZG9jdW1lbnQuYm9keS5hcHBlbmRDaGlsZChkaXZFbGVtZW50
KTsKK2RpdkVsZW1lbnQuZm9jdXMoKTsKKwordmFyIHRoaXNPYmplY3RzID0gW107Cit2YXIgZXZl
bnRzID0gW107Cit2YXIgdGFyZ2V0cyA9IFtdOworCitkaXZFbGVtZW50Lm9uZm9jdXMgPSBkaXZF
bGVtZW50Lm9uYmx1ciA9IHdpbmRvdy5vbmZvY3VzID0gd2luZG93Lm9uYmx1ciA9IGZ1bmN0aW9u
KGUpIHsKKyAgICB0aGlzT2JqZWN0cy5wdXNoKHRoaXMpOworICAgIGV2ZW50cy5wdXNoKGUudHlw
ZSk7CisgICAgdGFyZ2V0cy5wdXNoKGUudGFyZ2V0KTsKK307CisKK2lmICh3aW5kb3cubGF5b3V0
VGVzdENvbnRyb2xsZXIpIHsKKyAgICB3aW5kb3cubGF5b3V0VGVzdENvbnRyb2xsZXIuc2V0V2lu
ZG93SXNLZXkoZmFsc2UpOworICAgIHdpbmRvdy5sYXlvdXRUZXN0Q29udHJvbGxlci5zZXRXaW5k
b3dJc0tleSh0cnVlKTsKK30KKwordmFyIGkgPSAwOworc2hvdWxkQmUoJ3RoaXNPYmplY3RzW2ld
JywgJ2RpdkVsZW1lbnQnKTsKK3Nob3VsZEJlKCdldmVudHNbaV0nLCAnImJsdXIiJyk7CitzaG91
bGRCZSgndGFyZ2V0c1tpXScsICdkaXZFbGVtZW50Jyk7CisKK2krKzsKK3Nob3VsZEJlKCd0aGlz
T2JqZWN0c1tpXScsICd3aW5kb3cnKTsKK3Nob3VsZEJlKCdldmVudHNbaV0nLCAnImJsdXIiJyk7
CitzaG91bGRCZSgndGFyZ2V0c1tpXScsICd3aW5kb3cnKTsKKworaSsrOworc2hvdWxkQmUoJ3Ro
aXNPYmplY3RzW2ldJywgJ3dpbmRvdycpOworc2hvdWxkQmUoJ2V2ZW50c1tpXScsICciZm9jdXMi
Jyk7CitzaG91bGRCZSgndGFyZ2V0c1tpXScsICd3aW5kb3cnKTsKKworaSsrOworc2hvdWxkQmUo
J3RoaXNPYmplY3RzW2ldJywgJ2RpdkVsZW1lbnQnKTsKK3Nob3VsZEJlKCdldmVudHNbaV0nLCAn
ImZvY3VzIicpOworc2hvdWxkQmUoJ3RhcmdldHNbaV0nLCAnZGl2RWxlbWVudCcpOworCit2YXIg
c3VjY2Vzc2Z1bGx5UGFyc2VkID0gdHJ1ZTsKZGlmZiAtLWdpdCBhL1dlYkNvcmUvQ2hhbmdlTG9n
IGIvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggODlmYmEwZi4uNzE2OGJmYyAxMDA2NDQKLS0tIGEv
V2ViQ29yZS9DaGFuZ2VMb2cKKysrIGIvV2ViQ29yZS9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxOCBA
QAorMjAwOS0wOS0wNCAgRXJpayBBcnZpZHNzb24gIDxhcnZAY2hyb21pdW0ub3JnPgorCisgICAg
ICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIEZpeGVzIGlzc3VlIHdo
ZXJlIGZvY3VzZWQgZWxlbWVudHMgZGlkIG5vdCBnZXQgYmx1ciBhbmQgZm9jdXMgZXZlbnRzIHdo
ZW4gdGhlIHdpbmRvdyB3YXMgYmx1cnJlZCBhbmQgZm9jdXNlZC4KKyAgICAgICAgaHR0cHM6Ly9i
dWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTI3MTA1CisKKyAgICAgICAgVGVzdDogZmFz
dC9ldmVudHMvYmx1ci1mb2N1cy13aW5kb3ctc2hvdWxkLWJsdXItZm9jdXMtZWxlbWVudC5odG1s
CisKKyAgICAgICAgKiBwYWdlL0ZvY3VzQ29udHJvbGxlci5jcHA6CisgICAgICAgIChXZWJDb3Jl
OjpkaXNwYXRjaEV2ZW50c09uV2luZG93QW5kRm9jdXNlZE5vZGUpOgorICAgICAgICAoV2ViQ29y
ZTo6Rm9jdXNDb250cm9sbGVyOjpzZXRGb2N1c2VkRnJhbWUpOgorICAgICAgICAoV2ViQ29yZTo6
Rm9jdXNDb250cm9sbGVyOjpzZXRGb2N1c2VkKToKKyAgICAgICAgKFdlYkNvcmU6OkZvY3VzQ29u
dHJvbGxlcjo6c2V0QWN0aXZlKToKKwogMjAwOS0wOS0wNCAgRGF2ZSBIeWF0dCAgPGh5YXR0QGFw
cGxlLmNvbT4KIAogICAgICAgICBSZXZpZXdlZCBieSBBZGFtIFJvYmVuLgpkaWZmIC0tZ2l0IGEv
V2ViQ29yZS9wYWdlL0ZvY3VzQ29udHJvbGxlci5jcHAgYi9XZWJDb3JlL3BhZ2UvRm9jdXNDb250
cm9sbGVyLmNwcAppbmRleCA4MTc4MDFjLi5lZTMxNTVjIDEwMDY0NAotLS0gYS9XZWJDb3JlL3Bh
Z2UvRm9jdXNDb250cm9sbGVyLmNwcAorKysgYi9XZWJDb3JlL3BhZ2UvRm9jdXNDb250cm9sbGVy
LmNwcApAQCAtNTUsNiArNTUsMTUgQEAgbmFtZXNwYWNlIFdlYkNvcmUgewogCiB1c2luZyBuYW1l
c3BhY2UgSFRNTE5hbWVzOwogCitzdGF0aWMgaW5saW5lIHZvaWQgZGlzcGF0Y2hFdmVudHNPbldp
bmRvd0FuZEZvY3VzZWROb2RlKERvY3VtZW50KiBkb2N1bWVudCwgYm9vbCBmb2N1c2VkKQorewor
ICAgIGlmICghZm9jdXNlZCAmJiBkb2N1bWVudC0+Zm9jdXNlZE5vZGUoKSkKKyAgICAgICAgZG9j
dW1lbnQtPmZvY3VzZWROb2RlKCktPmRpc3BhdGNoQmx1ckV2ZW50KCk7CisgICAgZG9jdW1lbnQt
PmRpc3BhdGNoV2luZG93RXZlbnQoZm9jdXNlZCA/IGV2ZW50TmFtZXMoKS5mb2N1c0V2ZW50IDog
ZXZlbnROYW1lcygpLmJsdXJFdmVudCwgZmFsc2UsIGZhbHNlKTsKKyAgICBpZiAoZm9jdXNlZCAm
JiBkb2N1bWVudC0+Zm9jdXNlZE5vZGUoKSkKKyAgICAgICAgZG9jdW1lbnQtPmZvY3VzZWROb2Rl
KCktPmRpc3BhdGNoRm9jdXNFdmVudCgpOworfQorCiBGb2N1c0NvbnRyb2xsZXI6OkZvY3VzQ29u
dHJvbGxlcihQYWdlKiBwYWdlKQogICAgIDogbV9wYWdlKHBhZ2UpCiAgICAgLCBtX2lzQWN0aXZl
KGZhbHNlKQpAQCAtNzUsMTIgKzg0LDEyIEBAIHZvaWQgRm9jdXNDb250cm9sbGVyOjpzZXRGb2N1
c2VkRnJhbWUoUGFzc1JlZlB0cjxGcmFtZT4gZnJhbWUpCiAgICAgLy8gTm93IHRoYXQgdGhlIGZy
YW1lIGlzIHVwZGF0ZWQsIGZpcmUgZXZlbnRzIGFuZCB1cGRhdGUgdGhlIHNlbGVjdGlvbiBmb2N1
c2VkIHN0YXRlcyBvZiBib3RoIGZyYW1lcy4KICAgICBpZiAob2xkRnJhbWUgJiYgb2xkRnJhbWUt
PnZpZXcoKSkgewogICAgICAgICBvbGRGcmFtZS0+c2VsZWN0aW9uKCktPnNldEZvY3VzZWQoZmFs
c2UpOwotICAgICAgICBvbGRGcmFtZS0+ZG9jdW1lbnQoKS0+ZGlzcGF0Y2hXaW5kb3dFdmVudChl
dmVudE5hbWVzKCkuYmx1ckV2ZW50LCBmYWxzZSwgZmFsc2UpOworICAgICAgICBkaXNwYXRjaEV2
ZW50c09uV2luZG93QW5kRm9jdXNlZE5vZGUob2xkRnJhbWUtPmRvY3VtZW50KCksIGZhbHNlKTsK
ICAgICB9CiAKICAgICBpZiAobmV3RnJhbWUgJiYgbmV3RnJhbWUtPnZpZXcoKSAmJiBpc0ZvY3Vz
ZWQoKSkgewogICAgICAgICBuZXdGcmFtZS0+c2VsZWN0aW9uKCktPnNldEZvY3VzZWQodHJ1ZSk7
Ci0gICAgICAgIG5ld0ZyYW1lLT5kb2N1bWVudCgpLT5kaXNwYXRjaFdpbmRvd0V2ZW50KGV2ZW50
TmFtZXMoKS5mb2N1c0V2ZW50LCBmYWxzZSwgZmFsc2UpOworICAgICAgICBkaXNwYXRjaEV2ZW50
c09uV2luZG93QW5kRm9jdXNlZE5vZGUobmV3RnJhbWUtPmRvY3VtZW50KCksIHRydWUpOwogICAg
IH0KIH0KIApAQCAtMTAwLDcgKzEwOSw3IEBAIHZvaWQgRm9jdXNDb250cm9sbGVyOjpzZXRGb2N1
c2VkKGJvb2wgZm9jdXNlZCkKICAgICAKICAgICBpZiAobV9mb2N1c2VkRnJhbWUgJiYgbV9mb2N1
c2VkRnJhbWUtPnZpZXcoKSkgewogICAgICAgICBtX2ZvY3VzZWRGcmFtZS0+c2VsZWN0aW9uKCkt
PnNldEZvY3VzZWQoZm9jdXNlZCk7Ci0gICAgICAgIG1fZm9jdXNlZEZyYW1lLT5kb2N1bWVudCgp
LT5kaXNwYXRjaFdpbmRvd0V2ZW50KGZvY3VzZWQgPyBldmVudE5hbWVzKCkuZm9jdXNFdmVudCA6
IGV2ZW50TmFtZXMoKS5ibHVyRXZlbnQsIGZhbHNlLCBmYWxzZSk7CisgICAgICAgIGRpc3BhdGNo
RXZlbnRzT25XaW5kb3dBbmRGb2N1c2VkTm9kZShtX2ZvY3VzZWRGcmFtZS0+ZG9jdW1lbnQoKSwg
Zm9jdXNlZCk7CiAgICAgfQogfQogCkBAIC0zNDEsNyArMzUwLDcgQEAgdm9pZCBGb2N1c0NvbnRy
b2xsZXI6OnNldEFjdGl2ZShib29sIGFjdGl2ZSkKICAgICBmb2N1c2VkT3JNYWluRnJhbWUoKS0+
c2VsZWN0aW9uKCktPnBhZ2VBY3RpdmF0aW9uQ2hhbmdlZCgpOwogICAgIAogICAgIGlmIChtX2Zv
Y3VzZWRGcmFtZSAmJiBpc0ZvY3VzZWQoKSkKLSAgICAgICAgbV9mb2N1c2VkRnJhbWUtPmRvY3Vt
ZW50KCktPmRpc3BhdGNoV2luZG93RXZlbnQoYWN0aXZlID8gZXZlbnROYW1lcygpLmZvY3VzRXZl
bnQgOiBldmVudE5hbWVzKCkuYmx1ckV2ZW50LCBmYWxzZSwgZmFsc2UpOworICAgICAgICBkaXNw
YXRjaEV2ZW50c09uV2luZG93QW5kRm9jdXNlZE5vZGUobV9mb2N1c2VkRnJhbWUtPmRvY3VtZW50
KCksIGFjdGl2ZSk7CiB9CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmU=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>39228</attachid>
            <date>2009-09-08 16:56:43 -0700</date>
            <delta_ts>2009-09-08 17:00:09 -0700</delta_ts>
            <desc>Fixes Eric&apos;s comments</desc>
            <filename>bug-27105-20090908165642.patch</filename>
            <type>text/plain</type>
            <size>7166</size>
            <attacher name="Erik Arvidsson">arv</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxv
ZwppbmRleCA5ZjA2ZGIyLi5jOWM1MmNiIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VM
b2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTUgQEAKKzIwMDktMDkt
MDQgIEVyaWsgQXJ2aWRzc29uICA8YXJ2QGNocm9taXVtLm9yZz4KKworICAgICAgICBSZXZpZXdl
ZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBGaXhlcyBpc3N1ZSB3aGVyZSBmb2N1c2Vk
IGVsZW1lbnRzIGRpZCBub3QgZ2V0IGJsdXIgYW5kIGZvY3VzIGV2ZW50cyB3aGVuIHRoZSB3aW5k
b3cgd2FzIGJsdXJyZWQgYW5kIGZvY3VzZWQuCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQu
b3JnL3Nob3dfYnVnLmNnaT9pZD0yNzEwNQorCisgICAgICAgICogZmFzdC9ldmVudHMvYmx1ci1m
b2N1cy13aW5kb3ctc2hvdWxkLWJsdXItZm9jdXMtZWxlbWVudC1leHBlY3RlZC50eHQ6IEFkZGVk
LgorICAgICAgICAqIGZhc3QvZXZlbnRzL2JsdXItZm9jdXMtd2luZG93LXNob3VsZC1ibHVyLWZv
Y3VzLWVsZW1lbnQuaHRtbDogQWRkZWQuCisgICAgICAgICogZmFzdC9ldmVudHMvcmVzb3VyY2Vz
L2JsdXItZm9jdXMtd2luZG93LXNob3VsZC1ibHVyLWZvY3VzLWVsZW1lbnQuanM6IEFkZGVkLgor
ICAgICAgICAoZGl2RWxlbWVudC5vbmZvY3VzLmRpdkVsZW1lbnQub25ibHVyLndpbmRvdy5vbmZv
Y3VzLndpbmRvdy5vbmJsdXIpOgorCiAyMDA5LTA5LTA0ICBZYWVsIEFoYXJvbiAgPHlhZWwuYWhh
cm9uQG5va2lhLmNvbT4KIAogICAgICAgICBSZXZpZXdlZCBieSBEYXJpbiBBZGxlci4KZGlmZiAt
LWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvZXZlbnRzL2JsdXItZm9jdXMtd2luZG93LXNob3VsZC1i
bHVyLWZvY3VzLWVsZW1lbnQtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvZmFzdC9ldmVudHMv
Ymx1ci1mb2N1cy13aW5kb3ctc2hvdWxkLWJsdXItZm9jdXMtZWxlbWVudC1leHBlY3RlZC50eHQK
bmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMDA2MTg3NgotLS0gL2Rldi9udWxs
CisrKyBiL0xheW91dFRlc3RzL2Zhc3QvZXZlbnRzL2JsdXItZm9jdXMtd2luZG93LXNob3VsZC1i
bHVyLWZvY3VzLWVsZW1lbnQtZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsMjEgQEAKK0JsdXJyaW5n
IGFuZCBmb2N1c2luZyB0aGUgd2luZG93IHNob3VsZCBibHVyIGFuZCBmb2N1cyB0aGUgZm9jdXNl
ZCBlbGVtZW50CisKK09uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFTUyIg
bWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJURVNUIENPTVBMRVRFIi4KKworCitQQVNTIHRoaXNPYmpl
Y3RzW2ldIGlzIGRpdkVsZW1lbnQKK1BBU1MgZXZlbnRzW2ldIGlzICJibHVyIgorUEFTUyB0YXJn
ZXRzW2ldIGlzIGRpdkVsZW1lbnQKK1BBU1MgdGhpc09iamVjdHNbaV0gaXMgd2luZG93CitQQVNT
IGV2ZW50c1tpXSBpcyAiYmx1ciIKK1BBU1MgdGFyZ2V0c1tpXSBpcyB3aW5kb3cKK1BBU1MgdGhp
c09iamVjdHNbaV0gaXMgd2luZG93CitQQVNTIGV2ZW50c1tpXSBpcyAiZm9jdXMiCitQQVNTIHRh
cmdldHNbaV0gaXMgd2luZG93CitQQVNTIHRoaXNPYmplY3RzW2ldIGlzIGRpdkVsZW1lbnQKK1BB
U1MgZXZlbnRzW2ldIGlzICJmb2N1cyIKK1BBU1MgdGFyZ2V0c1tpXSBpcyBkaXZFbGVtZW50CitQ
QVNTIHN1Y2Nlc3NmdWxseVBhcnNlZCBpcyB0cnVlCisKK1RFU1QgQ09NUExFVEUKK0ZvY3VzIG1l
CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2V2ZW50cy9ibHVyLWZvY3VzLXdpbmRvdy1z
aG91bGQtYmx1ci1mb2N1cy1lbGVtZW50Lmh0bWwgYi9MYXlvdXRUZXN0cy9mYXN0L2V2ZW50cy9i
bHVyLWZvY3VzLXdpbmRvdy1zaG91bGQtYmx1ci1mb2N1cy1lbGVtZW50Lmh0bWwKbmV3IGZpbGUg
bW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYTIxMmJkNQotLS0gL2Rldi9udWxsCisrKyBiL0xh
eW91dFRlc3RzL2Zhc3QvZXZlbnRzL2JsdXItZm9jdXMtd2luZG93LXNob3VsZC1ibHVyLWZvY3Vz
LWVsZW1lbnQuaHRtbApAQCAtMCwwICsxLDEzIEBACis8IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0v
L0lFVEYvL0RURCBIVE1MLy9FTiI+Cis8aHRtbD4KKzxoZWFkPgorPGxpbmsgcmVsPSJzdHlsZXNo
ZWV0IiBocmVmPSIuLi9qcy9yZXNvdXJjZXMvanMtdGVzdC1zdHlsZS5jc3MiPgorPHNjcmlwdCBz
cmM9Ii4uL2pzL3Jlc291cmNlcy9qcy10ZXN0LXByZS5qcyI+PC9zY3JpcHQ+Cis8L2hlYWQ+Cis8
Ym9keT4KKzxwIGlkPSJkZXNjcmlwdGlvbiI+PC9wPgorPGRpdiBpZD0iY29uc29sZSI+PC9kaXY+
Cis8c2NyaXB0IHNyYz0icmVzb3VyY2VzL2JsdXItZm9jdXMtd2luZG93LXNob3VsZC1ibHVyLWZv
Y3VzLWVsZW1lbnQuanMiPjwvc2NyaXB0PgorPHNjcmlwdCBzcmM9Ii4uL2pzL3Jlc291cmNlcy9q
cy10ZXN0LXBvc3QuanMiPjwvc2NyaXB0PgorPC9ib2R5PgorPC9odG1sPgpkaWZmIC0tZ2l0IGEv
TGF5b3V0VGVzdHMvZmFzdC9ldmVudHMvcmVzb3VyY2VzL2JsdXItZm9jdXMtd2luZG93LXNob3Vs
ZC1ibHVyLWZvY3VzLWVsZW1lbnQuanMgYi9MYXlvdXRUZXN0cy9mYXN0L2V2ZW50cy9yZXNvdXJj
ZXMvYmx1ci1mb2N1cy13aW5kb3ctc2hvdWxkLWJsdXItZm9jdXMtZWxlbWVudC5qcwpuZXcgZmls
ZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5jNWYzYzlmCi0tLSAvZGV2L251bGwKKysrIGIv
TGF5b3V0VGVzdHMvZmFzdC9ldmVudHMvcmVzb3VyY2VzL2JsdXItZm9jdXMtd2luZG93LXNob3Vs
ZC1ibHVyLWZvY3VzLWVsZW1lbnQuanMKQEAgLTAsMCArMSw0NCBAQAorZGVzY3JpcHRpb24oJ0Js
dXJyaW5nIGFuZCBmb2N1c2luZyB0aGUgd2luZG93IHNob3VsZCBibHVyIGFuZCBmb2N1cyB0aGUg
Zm9jdXNlZCBlbGVtZW50Jyk7CisKK3ZhciBkaXZFbGVtZW50ID0gZG9jdW1lbnQuY3JlYXRlRWxl
bWVudCgnZGl2Jyk7CitkaXZFbGVtZW50LnRhYkluZGV4ID0gMDsKK2RpdkVsZW1lbnQudGV4dENv
bnRlbnQgPSAnRm9jdXMgbWUnOworZG9jdW1lbnQuYm9keS5hcHBlbmRDaGlsZChkaXZFbGVtZW50
KTsKK2RpdkVsZW1lbnQuZm9jdXMoKTsKKwordmFyIHRoaXNPYmplY3RzID0gW107Cit2YXIgZXZl
bnRzID0gW107Cit2YXIgdGFyZ2V0cyA9IFtdOworCitkaXZFbGVtZW50Lm9uZm9jdXMgPSBkaXZF
bGVtZW50Lm9uYmx1ciA9IHdpbmRvdy5vbmZvY3VzID0gd2luZG93Lm9uYmx1ciA9IGZ1bmN0aW9u
KGUpIHsKKyAgICB0aGlzT2JqZWN0cy5wdXNoKHRoaXMpOworICAgIGV2ZW50cy5wdXNoKGUudHlw
ZSk7CisgICAgdGFyZ2V0cy5wdXNoKGUudGFyZ2V0KTsKK307CisKK2lmICh3aW5kb3cubGF5b3V0
VGVzdENvbnRyb2xsZXIpIHsKKyAgICB3aW5kb3cubGF5b3V0VGVzdENvbnRyb2xsZXIuc2V0V2lu
ZG93SXNLZXkoZmFsc2UpOworICAgIHdpbmRvdy5sYXlvdXRUZXN0Q29udHJvbGxlci5zZXRXaW5k
b3dJc0tleSh0cnVlKTsKK30KKwordmFyIGkgPSAwOworc2hvdWxkQmUoJ3RoaXNPYmplY3RzW2ld
JywgJ2RpdkVsZW1lbnQnKTsKK3Nob3VsZEJlKCdldmVudHNbaV0nLCAnImJsdXIiJyk7CitzaG91
bGRCZSgndGFyZ2V0c1tpXScsICdkaXZFbGVtZW50Jyk7CisKK2krKzsKK3Nob3VsZEJlKCd0aGlz
T2JqZWN0c1tpXScsICd3aW5kb3cnKTsKK3Nob3VsZEJlKCdldmVudHNbaV0nLCAnImJsdXIiJyk7
CitzaG91bGRCZSgndGFyZ2V0c1tpXScsICd3aW5kb3cnKTsKKworaSsrOworc2hvdWxkQmUoJ3Ro
aXNPYmplY3RzW2ldJywgJ3dpbmRvdycpOworc2hvdWxkQmUoJ2V2ZW50c1tpXScsICciZm9jdXMi
Jyk7CitzaG91bGRCZSgndGFyZ2V0c1tpXScsICd3aW5kb3cnKTsKKworaSsrOworc2hvdWxkQmUo
J3RoaXNPYmplY3RzW2ldJywgJ2RpdkVsZW1lbnQnKTsKK3Nob3VsZEJlKCdldmVudHNbaV0nLCAn
ImZvY3VzIicpOworc2hvdWxkQmUoJ3RhcmdldHNbaV0nLCAnZGl2RWxlbWVudCcpOworCit2YXIg
c3VjY2Vzc2Z1bGx5UGFyc2VkID0gdHJ1ZTsKZGlmZiAtLWdpdCBhL1dlYkNvcmUvQ2hhbmdlTG9n
IGIvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggODlmYmEwZi4uNzE2OGJmYyAxMDA2NDQKLS0tIGEv
V2ViQ29yZS9DaGFuZ2VMb2cKKysrIGIvV2ViQ29yZS9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxOCBA
QAorMjAwOS0wOS0wNCAgRXJpayBBcnZpZHNzb24gIDxhcnZAY2hyb21pdW0ub3JnPgorCisgICAg
ICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIEZpeGVzIGlzc3VlIHdo
ZXJlIGZvY3VzZWQgZWxlbWVudHMgZGlkIG5vdCBnZXQgYmx1ciBhbmQgZm9jdXMgZXZlbnRzIHdo
ZW4gdGhlIHdpbmRvdyB3YXMgYmx1cnJlZCBhbmQgZm9jdXNlZC4KKyAgICAgICAgaHR0cHM6Ly9i
dWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTI3MTA1CisKKyAgICAgICAgVGVzdDogZmFz
dC9ldmVudHMvYmx1ci1mb2N1cy13aW5kb3ctc2hvdWxkLWJsdXItZm9jdXMtZWxlbWVudC5odG1s
CisKKyAgICAgICAgKiBwYWdlL0ZvY3VzQ29udHJvbGxlci5jcHA6CisgICAgICAgIChXZWJDb3Jl
OjpkaXNwYXRjaEV2ZW50c09uV2luZG93QW5kRm9jdXNlZE5vZGUpOgorICAgICAgICAoV2ViQ29y
ZTo6Rm9jdXNDb250cm9sbGVyOjpzZXRGb2N1c2VkRnJhbWUpOgorICAgICAgICAoV2ViQ29yZTo6
Rm9jdXNDb250cm9sbGVyOjpzZXRGb2N1c2VkKToKKyAgICAgICAgKFdlYkNvcmU6OkZvY3VzQ29u
dHJvbGxlcjo6c2V0QWN0aXZlKToKKwogMjAwOS0wOS0wNCAgRGF2ZSBIeWF0dCAgPGh5YXR0QGFw
cGxlLmNvbT4KIAogICAgICAgICBSZXZpZXdlZCBieSBBZGFtIFJvYmVuLgpkaWZmIC0tZ2l0IGEv
V2ViQ29yZS9wYWdlL0ZvY3VzQ29udHJvbGxlci5jcHAgYi9XZWJDb3JlL3BhZ2UvRm9jdXNDb250
cm9sbGVyLmNwcAppbmRleCA4MTc4MDFjLi5lZTMxNTVjIDEwMDY0NAotLS0gYS9XZWJDb3JlL3Bh
Z2UvRm9jdXNDb250cm9sbGVyLmNwcAorKysgYi9XZWJDb3JlL3BhZ2UvRm9jdXNDb250cm9sbGVy
LmNwcApAQCAtNTUsNiArNTUsMTUgQEAgbmFtZXNwYWNlIFdlYkNvcmUgewogCiB1c2luZyBuYW1l
c3BhY2UgSFRNTE5hbWVzOwogCitzdGF0aWMgaW5saW5lIHZvaWQgZGlzcGF0Y2hFdmVudHNPbldp
bmRvd0FuZEZvY3VzZWROb2RlKERvY3VtZW50KiBkb2N1bWVudCwgYm9vbCBmb2N1c2VkKQorewor
ICAgIGlmICghZm9jdXNlZCAmJiBkb2N1bWVudC0+Zm9jdXNlZE5vZGUoKSkKKyAgICAgICAgZG9j
dW1lbnQtPmZvY3VzZWROb2RlKCktPmRpc3BhdGNoQmx1ckV2ZW50KCk7CisgICAgZG9jdW1lbnQt
PmRpc3BhdGNoV2luZG93RXZlbnQoZm9jdXNlZCA/IGV2ZW50TmFtZXMoKS5mb2N1c0V2ZW50IDog
ZXZlbnROYW1lcygpLmJsdXJFdmVudCwgZmFsc2UsIGZhbHNlKTsKKyAgICBpZiAoZm9jdXNlZCAm
JiBkb2N1bWVudC0+Zm9jdXNlZE5vZGUoKSkKKyAgICAgICAgZG9jdW1lbnQtPmZvY3VzZWROb2Rl
KCktPmRpc3BhdGNoRm9jdXNFdmVudCgpOworfQorCiBGb2N1c0NvbnRyb2xsZXI6OkZvY3VzQ29u
dHJvbGxlcihQYWdlKiBwYWdlKQogICAgIDogbV9wYWdlKHBhZ2UpCiAgICAgLCBtX2lzQWN0aXZl
KGZhbHNlKQpAQCAtNzUsMTIgKzg0LDEyIEBAIHZvaWQgRm9jdXNDb250cm9sbGVyOjpzZXRGb2N1
c2VkRnJhbWUoUGFzc1JlZlB0cjxGcmFtZT4gZnJhbWUpCiAgICAgLy8gTm93IHRoYXQgdGhlIGZy
YW1lIGlzIHVwZGF0ZWQsIGZpcmUgZXZlbnRzIGFuZCB1cGRhdGUgdGhlIHNlbGVjdGlvbiBmb2N1
c2VkIHN0YXRlcyBvZiBib3RoIGZyYW1lcy4KICAgICBpZiAob2xkRnJhbWUgJiYgb2xkRnJhbWUt
PnZpZXcoKSkgewogICAgICAgICBvbGRGcmFtZS0+c2VsZWN0aW9uKCktPnNldEZvY3VzZWQoZmFs
c2UpOwotICAgICAgICBvbGRGcmFtZS0+ZG9jdW1lbnQoKS0+ZGlzcGF0Y2hXaW5kb3dFdmVudChl
dmVudE5hbWVzKCkuYmx1ckV2ZW50LCBmYWxzZSwgZmFsc2UpOworICAgICAgICBkaXNwYXRjaEV2
ZW50c09uV2luZG93QW5kRm9jdXNlZE5vZGUob2xkRnJhbWUtPmRvY3VtZW50KCksIGZhbHNlKTsK
ICAgICB9CiAKICAgICBpZiAobmV3RnJhbWUgJiYgbmV3RnJhbWUtPnZpZXcoKSAmJiBpc0ZvY3Vz
ZWQoKSkgewogICAgICAgICBuZXdGcmFtZS0+c2VsZWN0aW9uKCktPnNldEZvY3VzZWQodHJ1ZSk7
Ci0gICAgICAgIG5ld0ZyYW1lLT5kb2N1bWVudCgpLT5kaXNwYXRjaFdpbmRvd0V2ZW50KGV2ZW50
TmFtZXMoKS5mb2N1c0V2ZW50LCBmYWxzZSwgZmFsc2UpOworICAgICAgICBkaXNwYXRjaEV2ZW50
c09uV2luZG93QW5kRm9jdXNlZE5vZGUobmV3RnJhbWUtPmRvY3VtZW50KCksIHRydWUpOwogICAg
IH0KIH0KIApAQCAtMTAwLDcgKzEwOSw3IEBAIHZvaWQgRm9jdXNDb250cm9sbGVyOjpzZXRGb2N1
c2VkKGJvb2wgZm9jdXNlZCkKICAgICAKICAgICBpZiAobV9mb2N1c2VkRnJhbWUgJiYgbV9mb2N1
c2VkRnJhbWUtPnZpZXcoKSkgewogICAgICAgICBtX2ZvY3VzZWRGcmFtZS0+c2VsZWN0aW9uKCkt
PnNldEZvY3VzZWQoZm9jdXNlZCk7Ci0gICAgICAgIG1fZm9jdXNlZEZyYW1lLT5kb2N1bWVudCgp
LT5kaXNwYXRjaFdpbmRvd0V2ZW50KGZvY3VzZWQgPyBldmVudE5hbWVzKCkuZm9jdXNFdmVudCA6
IGV2ZW50TmFtZXMoKS5ibHVyRXZlbnQsIGZhbHNlLCBmYWxzZSk7CisgICAgICAgIGRpc3BhdGNo
RXZlbnRzT25XaW5kb3dBbmRGb2N1c2VkTm9kZShtX2ZvY3VzZWRGcmFtZS0+ZG9jdW1lbnQoKSwg
Zm9jdXNlZCk7CiAgICAgfQogfQogCkBAIC0zNDEsNyArMzUwLDcgQEAgdm9pZCBGb2N1c0NvbnRy
b2xsZXI6OnNldEFjdGl2ZShib29sIGFjdGl2ZSkKICAgICBmb2N1c2VkT3JNYWluRnJhbWUoKS0+
c2VsZWN0aW9uKCktPnBhZ2VBY3RpdmF0aW9uQ2hhbmdlZCgpOwogICAgIAogICAgIGlmIChtX2Zv
Y3VzZWRGcmFtZSAmJiBpc0ZvY3VzZWQoKSkKLSAgICAgICAgbV9mb2N1c2VkRnJhbWUtPmRvY3Vt
ZW50KCktPmRpc3BhdGNoV2luZG93RXZlbnQoYWN0aXZlID8gZXZlbnROYW1lcygpLmZvY3VzRXZl
bnQgOiBldmVudE5hbWVzKCkuYmx1ckV2ZW50LCBmYWxzZSwgZmFsc2UpOworICAgICAgICBkaXNw
YXRjaEV2ZW50c09uV2luZG93QW5kRm9jdXNlZE5vZGUobV9mb2N1c2VkRnJhbWUtPmRvY3VtZW50
KCksIGFjdGl2ZSk7CiB9CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmU=
</data>
<flag name="review"
          id="20294"
          type_id="1"
          status="-"
          setter="arv"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>39229</attachid>
            <date>2009-09-08 16:56:47 -0700</date>
            <delta_ts>2009-09-08 17:00:35 -0700</delta_ts>
            <desc>Fixes Eric&apos;s comments</desc>
            <filename>bug-27105-20090908165646.patch</filename>
            <type>text/plain</type>
            <size>5755</size>
            <attacher name="Erik Arvidsson">arv</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxv
ZwppbmRleCBjOWM1MmNiLi4wYmMyNDJmIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VM
b2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDE0ICsxLDE0IEBACi0yMDA5LTA5
LTA0ICBFcmlrIEFydmlkc3NvbiAgPGFydkBjaHJvbWl1bS5vcmc+CisyMDA5LTA5LTA4ICBFcmlr
IEFydmlkc3NvbiAgPGFydkBjaHJvbWl1bS5vcmc+CiAKICAgICAgICAgUmV2aWV3ZWQgYnkgTk9C
T0RZIChPT1BTISkuCiAKICAgICAgICAgRml4ZXMgaXNzdWUgd2hlcmUgZm9jdXNlZCBlbGVtZW50
cyBkaWQgbm90IGdldCBibHVyIGFuZCBmb2N1cyBldmVudHMgd2hlbiB0aGUgd2luZG93IHdhcyBi
bHVycmVkIGFuZCBmb2N1c2VkLgogICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93
X2J1Zy5jZ2k/aWQ9MjcxMDUKIAotICAgICAgICAqIGZhc3QvZXZlbnRzL2JsdXItZm9jdXMtd2lu
ZG93LXNob3VsZC1ibHVyLWZvY3VzLWVsZW1lbnQtZXhwZWN0ZWQudHh0OiBBZGRlZC4KLSAgICAg
ICAgKiBmYXN0L2V2ZW50cy9ibHVyLWZvY3VzLXdpbmRvdy1zaG91bGQtYmx1ci1mb2N1cy1lbGVt
ZW50Lmh0bWw6IEFkZGVkLgotICAgICAgICAqIGZhc3QvZXZlbnRzL3Jlc291cmNlcy9ibHVyLWZv
Y3VzLXdpbmRvdy1zaG91bGQtYmx1ci1mb2N1cy1lbGVtZW50LmpzOiBBZGRlZC4KKyAgICAgICAg
KiBmYXN0L2V2ZW50cy9ibHVyLWZvY3VzLXdpbmRvdy1zaG91bGQtYmx1ci1mb2N1cy1lbGVtZW50
LWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiBmYXN0L2V2ZW50cy9yZXNvdXJjZXMvYmx1ci1mb2N1
cy13aW5kb3ctc2hvdWxkLWJsdXItZm9jdXMtZWxlbWVudC5qczoKICAgICAgICAgKGRpdkVsZW1l
bnQub25mb2N1cy5kaXZFbGVtZW50Lm9uYmx1ci53aW5kb3cub25mb2N1cy53aW5kb3cub25ibHVy
KToKKyAgICAgICAgKHRlc3ROZXh0RXZlbnQpOgogCiAyMDA5LTA5LTA0ICBZYWVsIEFoYXJvbiAg
PHlhZWwuYWhhcm9uQG5va2lhLmNvbT4KIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9l
dmVudHMvYmx1ci1mb2N1cy13aW5kb3ctc2hvdWxkLWJsdXItZm9jdXMtZWxlbWVudC1leHBlY3Rl
ZC50eHQgYi9MYXlvdXRUZXN0cy9mYXN0L2V2ZW50cy9ibHVyLWZvY3VzLXdpbmRvdy1zaG91bGQt
Ymx1ci1mb2N1cy1lbGVtZW50LWV4cGVjdGVkLnR4dAppbmRleCAwMDYxODc2Li5jNGEzMTNlIDEw
MDY0NAotLS0gYS9MYXlvdXRUZXN0cy9mYXN0L2V2ZW50cy9ibHVyLWZvY3VzLXdpbmRvdy1zaG91
bGQtYmx1ci1mb2N1cy1lbGVtZW50LWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9mYXN0
L2V2ZW50cy9ibHVyLWZvY3VzLXdpbmRvdy1zaG91bGQtYmx1ci1mb2N1cy1lbGVtZW50LWV4cGVj
dGVkLnR4dApAQCAtMywxOSArMywxOSBAQCBCbHVycmluZyBhbmQgZm9jdXNpbmcgdGhlIHdpbmRv
dyBzaG91bGQgYmx1ciBhbmQgZm9jdXMgdGhlIGZvY3VzZWQgZWxlbWVudAogT24gc3VjY2Vzcywg
eW91IHdpbGwgc2VlIGEgc2VyaWVzIG9mICJQQVNTIiBtZXNzYWdlcywgZm9sbG93ZWQgYnkgIlRF
U1QgQ09NUExFVEUiLgogCiAKLVBBU1MgdGhpc09iamVjdHNbaV0gaXMgZGl2RWxlbWVudAotUEFT
UyBldmVudHNbaV0gaXMgImJsdXIiCi1QQVNTIHRhcmdldHNbaV0gaXMgZGl2RWxlbWVudAotUEFT
UyB0aGlzT2JqZWN0c1tpXSBpcyB3aW5kb3cKLVBBU1MgZXZlbnRzW2ldIGlzICJibHVyIgotUEFT
UyB0YXJnZXRzW2ldIGlzIHdpbmRvdwotUEFTUyB0aGlzT2JqZWN0c1tpXSBpcyB3aW5kb3cKLVBB
U1MgZXZlbnRzW2ldIGlzICJmb2N1cyIKLVBBU1MgdGFyZ2V0c1tpXSBpcyB3aW5kb3cKLVBBU1Mg
dGhpc09iamVjdHNbaV0gaXMgZGl2RWxlbWVudAotUEFTUyBldmVudHNbaV0gaXMgImZvY3VzIgot
UEFTUyB0YXJnZXRzW2ldIGlzIGRpdkVsZW1lbnQKK1BBU1MgdGhpc09iamVjdHNbMF0gaXMgZGl2
RWxlbWVudAorUEFTUyBldmVudHNbMF0gaXMgImJsdXIiCitQQVNTIHRhcmdldHNbMF0gaXMgZGl2
RWxlbWVudAorUEFTUyB0aGlzT2JqZWN0c1sxXSBpcyB3aW5kb3cKK1BBU1MgZXZlbnRzWzFdIGlz
ICJibHVyIgorUEFTUyB0YXJnZXRzWzFdIGlzIHdpbmRvdworUEFTUyB0aGlzT2JqZWN0c1syXSBp
cyB3aW5kb3cKK1BBU1MgZXZlbnRzWzJdIGlzICJmb2N1cyIKK1BBU1MgdGFyZ2V0c1syXSBpcyB3
aW5kb3cKK1BBU1MgdGhpc09iamVjdHNbM10gaXMgZGl2RWxlbWVudAorUEFTUyBldmVudHNbM10g
aXMgImZvY3VzIgorUEFTUyB0YXJnZXRzWzNdIGlzIGRpdkVsZW1lbnQKIFBBU1Mgc3VjY2Vzc2Z1
bGx5UGFyc2VkIGlzIHRydWUKIAogVEVTVCBDT01QTEVURQotRm9jdXMgbWUKKwpkaWZmIC0tZ2l0
IGEvTGF5b3V0VGVzdHMvZmFzdC9ldmVudHMvcmVzb3VyY2VzL2JsdXItZm9jdXMtd2luZG93LXNo
b3VsZC1ibHVyLWZvY3VzLWVsZW1lbnQuanMgYi9MYXlvdXRUZXN0cy9mYXN0L2V2ZW50cy9yZXNv
dXJjZXMvYmx1ci1mb2N1cy13aW5kb3ctc2hvdWxkLWJsdXItZm9jdXMtZWxlbWVudC5qcwppbmRl
eCBjNWYzYzlmLi40ZjlmNTcwIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9mYXN0L2V2ZW50cy9y
ZXNvdXJjZXMvYmx1ci1mb2N1cy13aW5kb3ctc2hvdWxkLWJsdXItZm9jdXMtZWxlbWVudC5qcwor
KysgYi9MYXlvdXRUZXN0cy9mYXN0L2V2ZW50cy9yZXNvdXJjZXMvYmx1ci1mb2N1cy13aW5kb3ct
c2hvdWxkLWJsdXItZm9jdXMtZWxlbWVudC5qcwpAQCAtMTAsNyArMTAsOCBAQCB2YXIgdGhpc09i
amVjdHMgPSBbXTsKIHZhciBldmVudHMgPSBbXTsKIHZhciB0YXJnZXRzID0gW107CiAKLWRpdkVs
ZW1lbnQub25mb2N1cyA9IGRpdkVsZW1lbnQub25ibHVyID0gd2luZG93Lm9uZm9jdXMgPSB3aW5k
b3cub25ibHVyID0gZnVuY3Rpb24oZSkgeworZGl2RWxlbWVudC5vbmZvY3VzID0gZGl2RWxlbWVu
dC5vbmJsdXIgPSB3aW5kb3cub25mb2N1cyA9IHdpbmRvdy5vbmJsdXIgPSBmdW5jdGlvbihlKQor
ewogICAgIHRoaXNPYmplY3RzLnB1c2godGhpcyk7CiAgICAgZXZlbnRzLnB1c2goZS50eXBlKTsK
ICAgICB0YXJnZXRzLnB1c2goZS50YXJnZXQpOwpAQCAtMjEsMjQgKzIyLDIxIEBAIGlmICh3aW5k
b3cubGF5b3V0VGVzdENvbnRyb2xsZXIpIHsKICAgICB3aW5kb3cubGF5b3V0VGVzdENvbnRyb2xs
ZXIuc2V0V2luZG93SXNLZXkodHJ1ZSk7CiB9CiAKKwogdmFyIGkgPSAwOwotc2hvdWxkQmUoJ3Ro
aXNPYmplY3RzW2ldJywgJ2RpdkVsZW1lbnQnKTsKLXNob3VsZEJlKCdldmVudHNbaV0nLCAnImJs
dXIiJyk7Ci1zaG91bGRCZSgndGFyZ2V0c1tpXScsICdkaXZFbGVtZW50Jyk7Ci0KLWkrKzsKLXNo
b3VsZEJlKCd0aGlzT2JqZWN0c1tpXScsICd3aW5kb3cnKTsKLXNob3VsZEJlKCdldmVudHNbaV0n
LCAnImJsdXIiJyk7Ci1zaG91bGRCZSgndGFyZ2V0c1tpXScsICd3aW5kb3cnKTsKLQotaSsrOwot
c2hvdWxkQmUoJ3RoaXNPYmplY3RzW2ldJywgJ3dpbmRvdycpOwotc2hvdWxkQmUoJ2V2ZW50c1tp
XScsICciZm9jdXMiJyk7Ci1zaG91bGRCZSgndGFyZ2V0c1tpXScsICd3aW5kb3cnKTsKLQotaSsr
Owotc2hvdWxkQmUoJ3RoaXNPYmplY3RzW2ldJywgJ2RpdkVsZW1lbnQnKTsKLXNob3VsZEJlKCdl
dmVudHNbaV0nLCAnImZvY3VzIicpOwotc2hvdWxkQmUoJ3RhcmdldHNbaV0nLCAnZGl2RWxlbWVu
dCcpOworZnVuY3Rpb24gdGVzdE5leHRFdmVudCh0YXJnZXQsIGV2ZW50VHlwZSkKK3sKKyAgICBz
aG91bGRCZSgndGhpc09iamVjdHNbJyArIGkgKyAnXScsIHRhcmdldCk7CisgICAgc2hvdWxkQmVF
cXVhbFRvU3RyaW5nKCdldmVudHNbJyArIGkgKyAnXScsIGV2ZW50VHlwZSk7CisgICAgc2hvdWxk
QmUoJ3RhcmdldHNbJyArIGkgKyAnXScsIHRhcmdldCk7CisgICAgaSsrOworfQorCit0ZXN0TmV4
dEV2ZW50KCdkaXZFbGVtZW50JywgJ2JsdXInKTsKK3Rlc3ROZXh0RXZlbnQoJ3dpbmRvdycsICdi
bHVyJyk7Cit0ZXN0TmV4dEV2ZW50KCd3aW5kb3cnLCAnZm9jdXMnKTsKK3Rlc3ROZXh0RXZlbnQo
J2RpdkVsZW1lbnQnLCAnZm9jdXMnKTsKKworZG9jdW1lbnQuYm9keS5yZW1vdmVDaGlsZChkaXZF
bGVtZW50KTsKIAogdmFyIHN1Y2Nlc3NmdWxseVBhcnNlZCA9IHRydWU7CmRpZmYgLS1naXQgYS9X
ZWJDb3JlL0NoYW5nZUxvZyBiL1dlYkNvcmUvQ2hhbmdlTG9nCmluZGV4IDcxNjhiZmMuLjM3OWNj
OTcgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1dlYkNvcmUvQ2hhbmdlTG9n
CkBAIC0xLDE3ICsxLDEyIEBACi0yMDA5LTA5LTA0ICBFcmlrIEFydmlkc3NvbiAgPGFydkBjaHJv
bWl1bS5vcmc+CisyMDA5LTA5LTA4ICBFcmlrIEFydmlkc3NvbiAgPGFydkBjaHJvbWl1bS5vcmc+
CiAKICAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCiAKICAgICAgICAgRml4ZXMg
aXNzdWUgd2hlcmUgZm9jdXNlZCBlbGVtZW50cyBkaWQgbm90IGdldCBibHVyIGFuZCBmb2N1cyBl
dmVudHMgd2hlbiB0aGUgd2luZG93IHdhcyBibHVycmVkIGFuZCBmb2N1c2VkLgogICAgICAgICBo
dHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjcxMDUKIAotICAgICAgICBU
ZXN0OiBmYXN0L2V2ZW50cy9ibHVyLWZvY3VzLXdpbmRvdy1zaG91bGQtYmx1ci1mb2N1cy1lbGVt
ZW50Lmh0bWwKLQogICAgICAgICAqIHBhZ2UvRm9jdXNDb250cm9sbGVyLmNwcDoKICAgICAgICAg
KFdlYkNvcmU6OmRpc3BhdGNoRXZlbnRzT25XaW5kb3dBbmRGb2N1c2VkTm9kZSk6Ci0gICAgICAg
IChXZWJDb3JlOjpGb2N1c0NvbnRyb2xsZXI6OnNldEZvY3VzZWRGcmFtZSk6Ci0gICAgICAgIChX
ZWJDb3JlOjpGb2N1c0NvbnRyb2xsZXI6OnNldEZvY3VzZWQpOgotICAgICAgICAoV2ViQ29yZTo6
Rm9jdXNDb250cm9sbGVyOjpzZXRBY3RpdmUpOgogCiAyMDA5LTA5LTA0ICBEYXZlIEh5YXR0ICA8
aHlhdHRAYXBwbGUuY29tPgogCmRpZmYgLS1naXQgYS9XZWJDb3JlL3BhZ2UvRm9jdXNDb250cm9s
bGVyLmNwcCBiL1dlYkNvcmUvcGFnZS9Gb2N1c0NvbnRyb2xsZXIuY3BwCmluZGV4IGVlMzE1NWMu
LjBhNjc4MDkgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvcGFnZS9Gb2N1c0NvbnRyb2xsZXIuY3BwCisr
KyBiL1dlYkNvcmUvcGFnZS9Gb2N1c0NvbnRyb2xsZXIuY3BwCkBAIC01Nyw2ICs1Nyw5IEBAIHVz
aW5nIG5hbWVzcGFjZSBIVE1MTmFtZXM7CiAKIHN0YXRpYyBpbmxpbmUgdm9pZCBkaXNwYXRjaEV2
ZW50c09uV2luZG93QW5kRm9jdXNlZE5vZGUoRG9jdW1lbnQqIGRvY3VtZW50LCBib29sIGZvY3Vz
ZWQpCiB7CisgICAgLy8gSWYgd2UgaGF2ZSBhIGZvY3VzZWQgbm9kZSB3ZSBzaG91bGQgZGlzcGF0
Y2ggYmx1ciBvbiBpdCBiZWZvcmUgd2UgYmx1ciB0aGUgd2luZG93LgorICAgIC8vIElmIHdlIGhh
dmUgYSBmb2N1c2VkIG5vZGUgd2Ugc2hvdWxkIGRpc3BhdGNoIGZvY3VzIG9uIGl0IGFmdGVyIHdl
IGZvY3VzIHRoZSB3aW5kb3cuCisgICAgLy8gaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19i
dWcuY2dpP2lkPTI3MTA1CiAgICAgaWYgKCFmb2N1c2VkICYmIGRvY3VtZW50LT5mb2N1c2VkTm9k
ZSgpKQogICAgICAgICBkb2N1bWVudC0+Zm9jdXNlZE5vZGUoKS0+ZGlzcGF0Y2hCbHVyRXZlbnQo
KTsKICAgICBkb2N1bWVudC0+ZGlzcGF0Y2hXaW5kb3dFdmVudChmb2N1c2VkID8gZXZlbnROYW1l
cygpLmZvY3VzRXZlbnQgOiBldmVudE5hbWVzKCkuYmx1ckV2ZW50LCBmYWxzZSwgZmFsc2UpOw==
</data>
<flag name="review"
          id="20295"
          type_id="1"
          status="-"
          setter="arv"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>39240</attachid>
            <date>2009-09-08 18:37:32 -0700</date>
            <delta_ts>2009-09-09 18:34:14 -0700</delta_ts>
            <desc>All comments resolved.</desc>
            <filename>blur-focus.patch</filename>
            <type>text/plain</type>
            <size>7520</size>
            <attacher name="Erik Arvidsson">arv</attacher>
            
              <data encoding="base64">SW5kZXg6IFdlYkNvcmUvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvQ2hhbmdlTG9n
CShyZXZpc2lvbiA0ODE5NSkKKysrIFdlYkNvcmUvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBA
IC0xLDMgKzEsMTggQEAKKzIwMDktMDktMDggIEVyaWsgQXJ2aWRzc29uICA8YXJ2QGNocm9taXVt
Lm9yZz4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBG
aXhlcyBpc3N1ZSB3aGVyZSBmb2N1c2VkIGVsZW1lbnRzIGRpZCBub3QgZ2V0IGJsdXIgYW5kIGZv
Y3VzIGV2ZW50cyB3aGVuIHRoZSB3aW5kb3cgd2FzIGJsdXJyZWQgYW5kIGZvY3VzZWQuCisgICAg
ICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yNzEwNQorCisgICAg
ICAgIFRlc3Q6IGZhc3QvZXZlbnRzL2JsdXItZm9jdXMtd2luZG93LXNob3VsZC1ibHVyLWZvY3Vz
LWVsZW1lbnQuaHRtbAorCisgICAgICAgICogcGFnZS9Gb2N1c0NvbnRyb2xsZXIuY3BwOgorICAg
ICAgICAoV2ViQ29yZTo6ZGlzcGF0Y2hFdmVudHNPbldpbmRvd0FuZEZvY3VzZWROb2RlKToKKyAg
ICAgICAgKFdlYkNvcmU6OkZvY3VzQ29udHJvbGxlcjo6c2V0Rm9jdXNlZEZyYW1lKToKKyAgICAg
ICAgKFdlYkNvcmU6OkZvY3VzQ29udHJvbGxlcjo6c2V0Rm9jdXNlZCk6CisgICAgICAgIChXZWJD
b3JlOjpGb2N1c0NvbnRyb2xsZXI6OnNldEFjdGl2ZSk6CisKIDIwMDktMDktMDggIEplbnMgQWxm
a2UgIDxzbmVqQGNocm9taXVtLm9yZz4KIAogICAgICAgICBSZXZpZXdlZCBieSBFcmljIFNlaWRl
bC4KSW5kZXg6IFdlYkNvcmUvcGFnZS9Gb2N1c0NvbnRyb2xsZXIuY3BwCj09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0t
IFdlYkNvcmUvcGFnZS9Gb2N1c0NvbnRyb2xsZXIuY3BwCShyZXZpc2lvbiA0ODE5NSkKKysrIFdl
YkNvcmUvcGFnZS9Gb2N1c0NvbnRyb2xsZXIuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC01NSw2ICs1
NSwxOCBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKIHVzaW5nIG5hbWVzcGFjZSBIVE1MTmFtZXM7
CiAKK3N0YXRpYyBpbmxpbmUgdm9pZCBkaXNwYXRjaEV2ZW50c09uV2luZG93QW5kRm9jdXNlZE5v
ZGUoRG9jdW1lbnQqIGRvY3VtZW50LCBib29sIGZvY3VzZWQpCit7CisgICAgLy8gSWYgd2UgaGF2
ZSBhIGZvY3VzZWQgbm9kZSB3ZSBzaG91bGQgZGlzcGF0Y2ggYmx1ciBvbiBpdCBiZWZvcmUgd2Ug
Ymx1ciB0aGUgd2luZG93LgorICAgIC8vIElmIHdlIGhhdmUgYSBmb2N1c2VkIG5vZGUgd2Ugc2hv
dWxkIGRpc3BhdGNoIGZvY3VzIG9uIGl0IGFmdGVyIHdlIGZvY3VzIHRoZSB3aW5kb3cuCisgICAg
Ly8gaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTI3MTA1CisgICAgaWYg
KCFmb2N1c2VkICYmIGRvY3VtZW50LT5mb2N1c2VkTm9kZSgpKQorICAgICAgICBkb2N1bWVudC0+
Zm9jdXNlZE5vZGUoKS0+ZGlzcGF0Y2hCbHVyRXZlbnQoKTsKKyAgICBkb2N1bWVudC0+ZGlzcGF0
Y2hXaW5kb3dFdmVudChmb2N1c2VkID8gZXZlbnROYW1lcygpLmZvY3VzRXZlbnQgOiBldmVudE5h
bWVzKCkuYmx1ckV2ZW50LCBmYWxzZSwgZmFsc2UpOworICAgIGlmIChmb2N1c2VkICYmIGRvY3Vt
ZW50LT5mb2N1c2VkTm9kZSgpKQorICAgICAgICBkb2N1bWVudC0+Zm9jdXNlZE5vZGUoKS0+ZGlz
cGF0Y2hGb2N1c0V2ZW50KCk7Cit9CisKIEZvY3VzQ29udHJvbGxlcjo6Rm9jdXNDb250cm9sbGVy
KFBhZ2UqIHBhZ2UpCiAgICAgOiBtX3BhZ2UocGFnZSkKICAgICAsIG1faXNBY3RpdmUoZmFsc2Up
CkBAIC03NSwxMiArODcsMTIgQEAgdm9pZCBGb2N1c0NvbnRyb2xsZXI6OnNldEZvY3VzZWRGcmFt
ZShQYQogICAgIC8vIE5vdyB0aGF0IHRoZSBmcmFtZSBpcyB1cGRhdGVkLCBmaXJlIGV2ZW50cyBh
bmQgdXBkYXRlIHRoZSBzZWxlY3Rpb24gZm9jdXNlZCBzdGF0ZXMgb2YgYm90aCBmcmFtZXMuCiAg
ICAgaWYgKG9sZEZyYW1lICYmIG9sZEZyYW1lLT52aWV3KCkpIHsKICAgICAgICAgb2xkRnJhbWUt
PnNlbGVjdGlvbigpLT5zZXRGb2N1c2VkKGZhbHNlKTsKLSAgICAgICAgb2xkRnJhbWUtPmRvY3Vt
ZW50KCktPmRpc3BhdGNoV2luZG93RXZlbnQoZXZlbnROYW1lcygpLmJsdXJFdmVudCwgZmFsc2Us
IGZhbHNlKTsKKyAgICAgICAgZGlzcGF0Y2hFdmVudHNPbldpbmRvd0FuZEZvY3VzZWROb2RlKG9s
ZEZyYW1lLT5kb2N1bWVudCgpLCBmYWxzZSk7CiAgICAgfQogCiAgICAgaWYgKG5ld0ZyYW1lICYm
IG5ld0ZyYW1lLT52aWV3KCkgJiYgaXNGb2N1c2VkKCkpIHsKICAgICAgICAgbmV3RnJhbWUtPnNl
bGVjdGlvbigpLT5zZXRGb2N1c2VkKHRydWUpOwotICAgICAgICBuZXdGcmFtZS0+ZG9jdW1lbnQo
KS0+ZGlzcGF0Y2hXaW5kb3dFdmVudChldmVudE5hbWVzKCkuZm9jdXNFdmVudCwgZmFsc2UsIGZh
bHNlKTsKKyAgICAgICAgZGlzcGF0Y2hFdmVudHNPbldpbmRvd0FuZEZvY3VzZWROb2RlKG5ld0Zy
YW1lLT5kb2N1bWVudCgpLCB0cnVlKTsKICAgICB9CiB9CiAKQEAgLTEwMCw3ICsxMTIsNyBAQCB2
b2lkIEZvY3VzQ29udHJvbGxlcjo6c2V0Rm9jdXNlZChib29sIGZvCiAgICAgCiAgICAgaWYgKG1f
Zm9jdXNlZEZyYW1lICYmIG1fZm9jdXNlZEZyYW1lLT52aWV3KCkpIHsKICAgICAgICAgbV9mb2N1
c2VkRnJhbWUtPnNlbGVjdGlvbigpLT5zZXRGb2N1c2VkKGZvY3VzZWQpOwotICAgICAgICBtX2Zv
Y3VzZWRGcmFtZS0+ZG9jdW1lbnQoKS0+ZGlzcGF0Y2hXaW5kb3dFdmVudChmb2N1c2VkID8gZXZl
bnROYW1lcygpLmZvY3VzRXZlbnQgOiBldmVudE5hbWVzKCkuYmx1ckV2ZW50LCBmYWxzZSwgZmFs
c2UpOworICAgICAgICBkaXNwYXRjaEV2ZW50c09uV2luZG93QW5kRm9jdXNlZE5vZGUobV9mb2N1
c2VkRnJhbWUtPmRvY3VtZW50KCksIGZvY3VzZWQpOwogICAgIH0KIH0KIApAQCAtMzQzLDcgKzM1
NSw3IEBAIHZvaWQgRm9jdXNDb250cm9sbGVyOjpzZXRBY3RpdmUoYm9vbCBhY3QKICAgICBmb2N1
c2VkT3JNYWluRnJhbWUoKS0+c2VsZWN0aW9uKCktPnBhZ2VBY3RpdmF0aW9uQ2hhbmdlZCgpOwog
ICAgIAogICAgIGlmIChtX2ZvY3VzZWRGcmFtZSAmJiBpc0ZvY3VzZWQoKSkKLSAgICAgICAgbV9m
b2N1c2VkRnJhbWUtPmRvY3VtZW50KCktPmRpc3BhdGNoV2luZG93RXZlbnQoYWN0aXZlID8gZXZl
bnROYW1lcygpLmZvY3VzRXZlbnQgOiBldmVudE5hbWVzKCkuYmx1ckV2ZW50LCBmYWxzZSwgZmFs
c2UpOworICAgICAgICBkaXNwYXRjaEV2ZW50c09uV2luZG93QW5kRm9jdXNlZE5vZGUobV9mb2N1
c2VkRnJhbWUtPmRvY3VtZW50KCksIGFjdGl2ZSk7CiB9CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNv
cmUKSW5kZXg6IExheW91dFRlc3RzL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0
cy9DaGFuZ2VMb2cJKHJldmlzaW9uIDQ4MTk1KQorKysgTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCSh3
b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsMTYgQEAKKzIwMDktMDktMDggIEVyaWsgQXJ2aWRzc29u
ICA8YXJ2QGNocm9taXVtLm9yZz4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMh
KS4KKworICAgICAgICBGaXhlcyBpc3N1ZSB3aGVyZSBmb2N1c2VkIGVsZW1lbnRzIGRpZCBub3Qg
Z2V0IGJsdXIgYW5kIGZvY3VzIGV2ZW50cyB3aGVuIHRoZSB3aW5kb3cgd2FzIGJsdXJyZWQgYW5k
IGZvY3VzZWQuCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9p
ZD0yNzEwNQorICAgICAgICAKKyAgICAgICAgKiBmYXN0L2V2ZW50cy9ibHVyLWZvY3VzLXdpbmRv
dy1zaG91bGQtYmx1ci1mb2N1cy1lbGVtZW50LWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAg
ICogZmFzdC9ldmVudHMvYmx1ci1mb2N1cy13aW5kb3ctc2hvdWxkLWJsdXItZm9jdXMtZWxlbWVu
dC5odG1sOiBBZGRlZC4KKyAgICAgICAgKiBmYXN0L2V2ZW50cy9yZXNvdXJjZXMvYmx1ci1mb2N1
cy13aW5kb3ctc2hvdWxkLWJsdXItZm9jdXMtZWxlbWVudC5qczogQWRkZWQuCisgICAgICAgIChk
aXZFbGVtZW50Lm9uZm9jdXMuZGl2RWxlbWVudC5vbmJsdXIud2luZG93Lm9uZm9jdXMud2luZG93
Lm9uYmx1cik6CisgICAgICAgICh0ZXN0TmV4dEV2ZW50KToKKwogMjAwOS0wOS0wOCAgU2FtIFdl
aW5pZyAgPHNhbUB3ZWJraXQub3JnPgogCiAgICAgICAgIFJldmlld2VkIGJ5IFRpbW90aHkgSGF0
Y2hlci4KSW5kZXg6IExheW91dFRlc3RzL2Zhc3QvZXZlbnRzL2JsdXItZm9jdXMtd2luZG93LXNo
b3VsZC1ibHVyLWZvY3VzLWVsZW1lbnQtZXhwZWN0ZWQudHh0Cj09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91
dFRlc3RzL2Zhc3QvZXZlbnRzL2JsdXItZm9jdXMtd2luZG93LXNob3VsZC1ibHVyLWZvY3VzLWVs
ZW1lbnQtZXhwZWN0ZWQudHh0CShyZXZpc2lvbiAwKQorKysgTGF5b3V0VGVzdHMvZmFzdC9ldmVu
dHMvYmx1ci1mb2N1cy13aW5kb3ctc2hvdWxkLWJsdXItZm9jdXMtZWxlbWVudC1leHBlY3RlZC50
eHQJKHJldmlzaW9uIDApCkBAIC0wLDAgKzEsMjEgQEAKK0JsdXJyaW5nIGFuZCBmb2N1c2luZyB0
aGUgd2luZG93IHNob3VsZCBibHVyIGFuZCBmb2N1cyB0aGUgZm9jdXNlZCBlbGVtZW50CisKK09u
IHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxv
d2VkIGJ5ICJURVNUIENPTVBMRVRFIi4KKworCitQQVNTIHRoaXNPYmplY3RzWzBdIGlzIGRpdkVs
ZW1lbnQKK1BBU1MgZXZlbnRzWzBdIGlzICJibHVyIgorUEFTUyB0YXJnZXRzWzBdIGlzIGRpdkVs
ZW1lbnQKK1BBU1MgdGhpc09iamVjdHNbMV0gaXMgd2luZG93CitQQVNTIGV2ZW50c1sxXSBpcyAi
Ymx1ciIKK1BBU1MgdGFyZ2V0c1sxXSBpcyB3aW5kb3cKK1BBU1MgdGhpc09iamVjdHNbMl0gaXMg
d2luZG93CitQQVNTIGV2ZW50c1syXSBpcyAiZm9jdXMiCitQQVNTIHRhcmdldHNbMl0gaXMgd2lu
ZG93CitQQVNTIHRoaXNPYmplY3RzWzNdIGlzIGRpdkVsZW1lbnQKK1BBU1MgZXZlbnRzWzNdIGlz
ICJmb2N1cyIKK1BBU1MgdGFyZ2V0c1szXSBpcyBkaXZFbGVtZW50CitQQVNTIHN1Y2Nlc3NmdWxs
eVBhcnNlZCBpcyB0cnVlCisKK1RFU1QgQ09NUExFVEUKKwpJbmRleDogTGF5b3V0VGVzdHMvZmFz
dC9ldmVudHMvYmx1ci1mb2N1cy13aW5kb3ctc2hvdWxkLWJsdXItZm9jdXMtZWxlbWVudC5odG1s
Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2Zhc3QvZXZlbnRzL2JsdXItZm9jdXMtd2luZG93
LXNob3VsZC1ibHVyLWZvY3VzLWVsZW1lbnQuaHRtbAkocmV2aXNpb24gMCkKKysrIExheW91dFRl
c3RzL2Zhc3QvZXZlbnRzL2JsdXItZm9jdXMtd2luZG93LXNob3VsZC1ibHVyLWZvY3VzLWVsZW1l
bnQuaHRtbAkocmV2aXNpb24gMCkKQEAgLTAsMCArMSwxMyBAQAorPCFET0NUWVBFIEhUTUwgUFVC
TElDICItLy9JRVRGLy9EVEQgSFRNTC8vRU4iPgorPGh0bWw+Cis8aGVhZD4KKzxsaW5rIHJlbD0i
c3R5bGVzaGVldCIgaHJlZj0iLi4vanMvcmVzb3VyY2VzL2pzLXRlc3Qtc3R5bGUuY3NzIj4KKzxz
Y3JpcHQgc3JjPSIuLi9qcy9yZXNvdXJjZXMvanMtdGVzdC1wcmUuanMiPjwvc2NyaXB0PgorPC9o
ZWFkPgorPGJvZHk+Cis8cCBpZD0iZGVzY3JpcHRpb24iPjwvcD4KKzxkaXYgaWQ9ImNvbnNvbGUi
PjwvZGl2PgorPHNjcmlwdCBzcmM9InJlc291cmNlcy9ibHVyLWZvY3VzLXdpbmRvdy1zaG91bGQt
Ymx1ci1mb2N1cy1lbGVtZW50LmpzIj48L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSIuLi9qcy9yZXNv
dXJjZXMvanMtdGVzdC1wb3N0LmpzIj48L3NjcmlwdD4KKzwvYm9keT4KKzwvaHRtbD4KSW5kZXg6
IExheW91dFRlc3RzL2Zhc3QvZXZlbnRzL3Jlc291cmNlcy9ibHVyLWZvY3VzLXdpbmRvdy1zaG91
bGQtYmx1ci1mb2N1cy1lbGVtZW50LmpzCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2Zhc3Qv
ZXZlbnRzL3Jlc291cmNlcy9ibHVyLWZvY3VzLXdpbmRvdy1zaG91bGQtYmx1ci1mb2N1cy1lbGVt
ZW50LmpzCShyZXZpc2lvbiAwKQorKysgTGF5b3V0VGVzdHMvZmFzdC9ldmVudHMvcmVzb3VyY2Vz
L2JsdXItZm9jdXMtd2luZG93LXNob3VsZC1ibHVyLWZvY3VzLWVsZW1lbnQuanMJKHJldmlzaW9u
IDApCkBAIC0wLDAgKzEsNDIgQEAKK2Rlc2NyaXB0aW9uKCdCbHVycmluZyBhbmQgZm9jdXNpbmcg
dGhlIHdpbmRvdyBzaG91bGQgYmx1ciBhbmQgZm9jdXMgdGhlIGZvY3VzZWQgZWxlbWVudCcpOwor
Cit2YXIgZGl2RWxlbWVudCA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ2RpdicpOworZGl2RWxl
bWVudC50YWJJbmRleCA9IDA7CitkaXZFbGVtZW50LnRleHRDb250ZW50ID0gJ0ZvY3VzIG1lJzsK
K2RvY3VtZW50LmJvZHkuYXBwZW5kQ2hpbGQoZGl2RWxlbWVudCk7CitkaXZFbGVtZW50LmZvY3Vz
KCk7CisKK3ZhciB0aGlzT2JqZWN0cyA9IFtdOwordmFyIGV2ZW50cyA9IFtdOwordmFyIHRhcmdl
dHMgPSBbXTsKKworZGl2RWxlbWVudC5vbmZvY3VzID0gZGl2RWxlbWVudC5vbmJsdXIgPSB3aW5k
b3cub25mb2N1cyA9IHdpbmRvdy5vbmJsdXIgPSBmdW5jdGlvbihlKQoreworICAgIHRoaXNPYmpl
Y3RzLnB1c2godGhpcyk7CisgICAgZXZlbnRzLnB1c2goZS50eXBlKTsKKyAgICB0YXJnZXRzLnB1
c2goZS50YXJnZXQpOworfTsKKworaWYgKHdpbmRvdy5sYXlvdXRUZXN0Q29udHJvbGxlcikgewor
ICAgIHdpbmRvdy5sYXlvdXRUZXN0Q29udHJvbGxlci5zZXRXaW5kb3dJc0tleShmYWxzZSk7Cisg
ICAgd2luZG93LmxheW91dFRlc3RDb250cm9sbGVyLnNldFdpbmRvd0lzS2V5KHRydWUpOworfQor
CisKK3ZhciBpID0gMDsKK2Z1bmN0aW9uIHRlc3ROZXh0RXZlbnQodGFyZ2V0LCBldmVudFR5cGUp
Cit7CisgICAgc2hvdWxkQmUoJ3RoaXNPYmplY3RzWycgKyBpICsgJ10nLCB0YXJnZXQpOworICAg
IHNob3VsZEJlRXF1YWxUb1N0cmluZygnZXZlbnRzWycgKyBpICsgJ10nLCBldmVudFR5cGUpOwor
ICAgIHNob3VsZEJlKCd0YXJnZXRzWycgKyBpICsgJ10nLCB0YXJnZXQpOworICAgIGkrKzsKK30K
KwordGVzdE5leHRFdmVudCgnZGl2RWxlbWVudCcsICdibHVyJyk7Cit0ZXN0TmV4dEV2ZW50KCd3
aW5kb3cnLCAnYmx1cicpOwordGVzdE5leHRFdmVudCgnd2luZG93JywgJ2ZvY3VzJyk7Cit0ZXN0
TmV4dEV2ZW50KCdkaXZFbGVtZW50JywgJ2ZvY3VzJyk7CisKK2RvY3VtZW50LmJvZHkucmVtb3Zl
Q2hpbGQoZGl2RWxlbWVudCk7CisKK3ZhciBzdWNjZXNzZnVsbHlQYXJzZWQgPSB0cnVlOwo=
</data>
<flag name="review"
          id="20303"
          type_id="1"
          status="-"
          setter="arv"
    />
    <flag name="commit-queue"
          id="20332"
          type_id="3"
          status="-"
          setter="eric"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>39318</attachid>
            <date>2009-09-09 18:34:14 -0700</date>
            <delta_ts>2009-09-10 10:03:59 -0700</delta_ts>
            <desc>Fixed iframe case</desc>
            <filename>blur-focus.patch</filename>
            <type>text/plain</type>
            <size>9883</size>
            <attacher name="Erik Arvidsson">arv</attacher>
            
              <data encoding="base64">SW5kZXg6IFdlYkNvcmUvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvQ2hhbmdlTG9n
CShyZXZpc2lvbiA0ODIzOSkKKysrIFdlYkNvcmUvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBA
IC0xLDMgKzEsMTcgQEAKKzIwMDktMDktMDkgIEVyaWsgQXJ2aWRzc29uICA8YXJ2QGNocm9taXVt
Lm9yZz4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBG
aXhlcyBpc3N1ZSB3aGVyZSBmb2N1c2VkIGVsZW1lbnRzIGRpZCBub3QgZ2V0IGJsdXIgYW5kIGZv
Y3VzIGV2ZW50cyB3aGVuIHRoZSB3aW5kb3cgd2FzIGJsdXJyZWQgYW5kIGZvY3VzZWQuCisgICAg
ICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yNzEwNQorCisgICAg
ICAgIFRlc3Q6IGZhc3QvZXZlbnRzL2JsdXItZm9jdXMtd2luZG93LXNob3VsZC1ibHVyLWZvY3Vz
LWVsZW1lbnQuaHRtbAorCisgICAgICAgICogcGFnZS9Gb2N1c0NvbnRyb2xsZXIuY3BwOgorICAg
ICAgICAoV2ViQ29yZTo6ZGlzcGF0Y2hFdmVudHNPbldpbmRvd0FuZEZvY3VzZWROb2RlKToKKyAg
ICAgICAgKFdlYkNvcmU6OkZvY3VzQ29udHJvbGxlcjo6c2V0Rm9jdXNlZCk6CisgICAgICAgIChX
ZWJDb3JlOjpGb2N1c0NvbnRyb2xsZXI6OnNldEFjdGl2ZSk6CisKIDIwMDktMDktMDkgIENhbWVy
b24gTWNDb3JtYWNrICA8Y2FtQG1jYy5pZC5hdT4KIAogICAgICAgICBSZXZpZXdlZCBieSBFcmlj
IFNlaWRlbC4KSW5kZXg6IFdlYkNvcmUvcGFnZS9Gb2N1c0NvbnRyb2xsZXIuY3BwCj09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT0KLS0tIFdlYkNvcmUvcGFnZS9Gb2N1c0NvbnRyb2xsZXIuY3BwCShyZXZpc2lvbiA0ODIxMCkK
KysrIFdlYkNvcmUvcGFnZS9Gb2N1c0NvbnRyb2xsZXIuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC01
NSw2ICs1NSwxOCBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKIHVzaW5nIG5hbWVzcGFjZSBIVE1M
TmFtZXM7CiAKK3N0YXRpYyBpbmxpbmUgdm9pZCBkaXNwYXRjaEV2ZW50c09uV2luZG93QW5kRm9j
dXNlZE5vZGUoRG9jdW1lbnQqIGRvY3VtZW50LCBib29sIGZvY3VzZWQpCit7CisgICAgLy8gSWYg
d2UgaGF2ZSBhIGZvY3VzZWQgbm9kZSB3ZSBzaG91bGQgZGlzcGF0Y2ggYmx1ciBvbiBpdCBiZWZv
cmUgd2UgYmx1ciB0aGUgd2luZG93LgorICAgIC8vIElmIHdlIGhhdmUgYSBmb2N1c2VkIG5vZGUg
d2Ugc2hvdWxkIGRpc3BhdGNoIGZvY3VzIG9uIGl0IGFmdGVyIHdlIGZvY3VzIHRoZSB3aW5kb3cu
CisgICAgLy8gaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTI3MTA1Cisg
ICAgaWYgKCFmb2N1c2VkICYmIGRvY3VtZW50LT5mb2N1c2VkTm9kZSgpKQorICAgICAgICBkb2N1
bWVudC0+Zm9jdXNlZE5vZGUoKS0+ZGlzcGF0Y2hCbHVyRXZlbnQoKTsKKyAgICBkb2N1bWVudC0+
ZGlzcGF0Y2hXaW5kb3dFdmVudChmb2N1c2VkID8gZXZlbnROYW1lcygpLmZvY3VzRXZlbnQgOiBl
dmVudE5hbWVzKCkuYmx1ckV2ZW50LCBmYWxzZSwgZmFsc2UpOworICAgIGlmIChmb2N1c2VkICYm
IGRvY3VtZW50LT5mb2N1c2VkTm9kZSgpKQorICAgICAgICBkb2N1bWVudC0+Zm9jdXNlZE5vZGUo
KS0+ZGlzcGF0Y2hGb2N1c0V2ZW50KCk7Cit9CisKIEZvY3VzQ29udHJvbGxlcjo6Rm9jdXNDb250
cm9sbGVyKFBhZ2UqIHBhZ2UpCiAgICAgOiBtX3BhZ2UocGFnZSkKICAgICAsIG1faXNBY3RpdmUo
ZmFsc2UpCkBAIC0xMDAsNyArMTEyLDcgQEAgdm9pZCBGb2N1c0NvbnRyb2xsZXI6OnNldEZvY3Vz
ZWQoYm9vbCBmbwogICAgIAogICAgIGlmIChtX2ZvY3VzZWRGcmFtZSAmJiBtX2ZvY3VzZWRGcmFt
ZS0+dmlldygpKSB7CiAgICAgICAgIG1fZm9jdXNlZEZyYW1lLT5zZWxlY3Rpb24oKS0+c2V0Rm9j
dXNlZChmb2N1c2VkKTsKLSAgICAgICAgbV9mb2N1c2VkRnJhbWUtPmRvY3VtZW50KCktPmRpc3Bh
dGNoV2luZG93RXZlbnQoZm9jdXNlZCA/IGV2ZW50TmFtZXMoKS5mb2N1c0V2ZW50IDogZXZlbnRO
YW1lcygpLmJsdXJFdmVudCwgZmFsc2UsIGZhbHNlKTsKKyAgICAgICAgZGlzcGF0Y2hFdmVudHNP
bldpbmRvd0FuZEZvY3VzZWROb2RlKG1fZm9jdXNlZEZyYW1lLT5kb2N1bWVudCgpLCBmb2N1c2Vk
KTsKICAgICB9CiB9CiAKQEAgLTM0Myw3ICszNTUsNyBAQCB2b2lkIEZvY3VzQ29udHJvbGxlcjo6
c2V0QWN0aXZlKGJvb2wgYWN0CiAgICAgZm9jdXNlZE9yTWFpbkZyYW1lKCktPnNlbGVjdGlvbigp
LT5wYWdlQWN0aXZhdGlvbkNoYW5nZWQoKTsKICAgICAKICAgICBpZiAobV9mb2N1c2VkRnJhbWUg
JiYgaXNGb2N1c2VkKCkpCi0gICAgICAgIG1fZm9jdXNlZEZyYW1lLT5kb2N1bWVudCgpLT5kaXNw
YXRjaFdpbmRvd0V2ZW50KGFjdGl2ZSA/IGV2ZW50TmFtZXMoKS5mb2N1c0V2ZW50IDogZXZlbnRO
YW1lcygpLmJsdXJFdmVudCwgZmFsc2UsIGZhbHNlKTsKKyAgICAgICAgZGlzcGF0Y2hFdmVudHNP
bldpbmRvd0FuZEZvY3VzZWROb2RlKG1fZm9jdXNlZEZyYW1lLT5kb2N1bWVudCgpLCBhY3RpdmUp
OwogfQogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCkluZGV4OiBMYXlvdXRUZXN0cy9DaGFuZ2VM
b2cKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCShyZXZpc2lvbiA0ODIzOSkK
KysrIExheW91dFRlc3RzL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDE5IEBA
CisyMDA5LTA5LTA5ICBFcmlrIEFydmlkc3NvbiAgPGFydkBjaHJvbWl1bS5vcmc+CisKKyAgICAg
ICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgRml4ZXMgaXNzdWUgd2hl
cmUgZm9jdXNlZCBlbGVtZW50cyBkaWQgbm90IGdldCBibHVyIGFuZCBmb2N1cyBldmVudHMgd2hl
biB0aGUgd2luZG93IHdhcyBibHVycmVkIGFuZCBmb2N1c2VkLgorICAgICAgICBodHRwczovL2J1
Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjcxMDUKKworICAgICAgICAqIGZhc3QvZXZl
bnRzL2JsdXItZm9jdXMtd2luZG93LXNob3VsZC1ibHVyLWZvY3VzLWVsZW1lbnQtZXhwZWN0ZWQu
dHh0OiBBZGRlZC4KKyAgICAgICAgKiBmYXN0L2V2ZW50cy9ibHVyLWZvY3VzLXdpbmRvdy1zaG91
bGQtYmx1ci1mb2N1cy1lbGVtZW50Lmh0bWw6IEFkZGVkLgorICAgICAgICAqIGZhc3QvZXZlbnRz
L3Jlc291cmNlcy9ibHVyLWZvY3VzLXdpbmRvdy1zaG91bGQtYmx1ci1mb2N1cy1lbGVtZW50Lmpz
OiBBZGRlZC4KKyAgICAgICAgKGRpdkVsZW1lbnQub25mb2N1cy5kaXZFbGVtZW50Lm9uYmx1ci53
aW5kb3cub25mb2N1cy53aW5kb3cub25ibHVyLmlubmVyRGl2Lm9uZm9jdXMuaW5uZXJEaXYub25i
bHVyLmlmcmFtZS5vbmZvY3VzLmlmcmFtZS5vbmJsdXIpOgorICAgICAgICAodGVzdE5leHRFdmVu
dCk6CisgICAgICAgICogZmFzdC9ldmVudHMvcmVzb3VyY2VzL3RhYmluZGV4LWZvY3VzLWJsdXIt
YWxsLmpzOgorICAgICAgICAodGVzdCk6CisgICAgICAgICogZmFzdC9ldmVudHMvdGFiaW5kZXgt
Zm9jdXMtYmx1ci1hbGwtZXhwZWN0ZWQudHh0OgorCiAyMDA5LTA5LTA5ICBDYW1lcm9uIE1jQ29y
bWFjayAgPGNhbUBtY2MuaWQuYXU+CiAKICAgICAgICAgUmV2aWV3ZWQgYnkgRXJpYyBTZWlkZWwu
CkluZGV4OiBMYXlvdXRUZXN0cy9mYXN0L2V2ZW50cy9ibHVyLWZvY3VzLXdpbmRvdy1zaG91bGQt
Ymx1ci1mb2N1cy1lbGVtZW50LWV4cGVjdGVkLnR4dAo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0
cy9mYXN0L2V2ZW50cy9ibHVyLWZvY3VzLXdpbmRvdy1zaG91bGQtYmx1ci1mb2N1cy1lbGVtZW50
LWV4cGVjdGVkLnR4dAkocmV2aXNpb24gMCkKKysrIExheW91dFRlc3RzL2Zhc3QvZXZlbnRzL2Js
dXItZm9jdXMtd2luZG93LXNob3VsZC1ibHVyLWZvY3VzLWVsZW1lbnQtZXhwZWN0ZWQudHh0CShy
ZXZpc2lvbiAwKQpAQCAtMCwwICsxLDQ1IEBACitCbHVycmluZyBhbmQgZm9jdXNpbmcgdGhlIHdp
bmRvdyBzaG91bGQgYmx1ciBhbmQgZm9jdXMgdGhlIGZvY3VzZWQgZWxlbWVudAorCitPbiBzdWNj
ZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBBU1MiIG1lc3NhZ2VzLCBmb2xsb3dlZCBi
eSAiVEVTVCBDT01QTEVURSIuCisKKworUEFTUyB0aGlzT2JqZWN0c1swXSBpcyBkaXZFbGVtZW50
CitQQVNTIGV2ZW50c1swXSBpcyAiYmx1ciIKK1BBU1MgdGFyZ2V0c1swXSBpcyBkaXZFbGVtZW50
CitQQVNTIHRoaXNPYmplY3RzWzFdIGlzIHdpbmRvdworUEFTUyBldmVudHNbMV0gaXMgImJsdXIi
CitQQVNTIHRhcmdldHNbMV0gaXMgd2luZG93CitQQVNTIHRoaXNPYmplY3RzWzJdIGlzIHdpbmRv
dworUEFTUyBldmVudHNbMl0gaXMgImZvY3VzIgorUEFTUyB0YXJnZXRzWzJdIGlzIHdpbmRvdwor
UEFTUyB0aGlzT2JqZWN0c1szXSBpcyBkaXZFbGVtZW50CitQQVNTIGV2ZW50c1szXSBpcyAiZm9j
dXMiCitQQVNTIHRhcmdldHNbM10gaXMgZGl2RWxlbWVudAorUEFTUyB0aGlzT2JqZWN0c1s0XSBp
cyBkaXZFbGVtZW50CitQQVNTIGV2ZW50c1s0XSBpcyAiYmx1ciIKK1BBU1MgdGFyZ2V0c1s0XSBp
cyBkaXZFbGVtZW50CitQQVNTIHRoaXNPYmplY3RzWzVdIGlzIHdpbmRvdworUEFTUyBldmVudHNb
NV0gaXMgImJsdXIiCitQQVNTIHRhcmdldHNbNV0gaXMgd2luZG93CitQQVNTIHRoaXNPYmplY3Rz
WzZdIGlzIGlmcmFtZQorUEFTUyBldmVudHNbNl0gaXMgImZvY3VzIgorUEFTUyB0YXJnZXRzWzZd
IGlzIGlmcmFtZQorUEFTUyB0aGlzT2JqZWN0c1s3XSBpcyBpbm5lckRpdgorUEFTUyBldmVudHNb
N10gaXMgImZvY3VzIgorUEFTUyB0YXJnZXRzWzddIGlzIGlubmVyRGl2CitQQVNTIHRoaXNPYmpl
Y3RzWzhdIGlzIGlubmVyRGl2CitQQVNTIGV2ZW50c1s4XSBpcyAiYmx1ciIKK1BBU1MgdGFyZ2V0
c1s4XSBpcyBpbm5lckRpdgorUEFTUyB0aGlzT2JqZWN0c1s5XSBpcyBpZnJhbWUKK1BBU1MgZXZl
bnRzWzldIGlzICJibHVyIgorUEFTUyB0YXJnZXRzWzldIGlzIGlmcmFtZQorUEFTUyB0aGlzT2Jq
ZWN0c1sxMF0gaXMgd2luZG93CitQQVNTIGV2ZW50c1sxMF0gaXMgImZvY3VzIgorUEFTUyB0YXJn
ZXRzWzEwXSBpcyB3aW5kb3cKK1BBU1MgdGhpc09iamVjdHNbMTFdIGlzIGRpdkVsZW1lbnQKK1BB
U1MgZXZlbnRzWzExXSBpcyAiZm9jdXMiCitQQVNTIHRhcmdldHNbMTFdIGlzIGRpdkVsZW1lbnQK
K1BBU1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKKworVEVTVCBDT01QTEVURQorCkluZGV4
OiBMYXlvdXRUZXN0cy9mYXN0L2V2ZW50cy9ibHVyLWZvY3VzLXdpbmRvdy1zaG91bGQtYmx1ci1m
b2N1cy1lbGVtZW50Lmh0bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvZmFzdC9ldmVudHMv
Ymx1ci1mb2N1cy13aW5kb3ctc2hvdWxkLWJsdXItZm9jdXMtZWxlbWVudC5odG1sCShyZXZpc2lv
biAwKQorKysgTGF5b3V0VGVzdHMvZmFzdC9ldmVudHMvYmx1ci1mb2N1cy13aW5kb3ctc2hvdWxk
LWJsdXItZm9jdXMtZWxlbWVudC5odG1sCShyZXZpc2lvbiAwKQpAQCAtMCwwICsxLDEzIEBACis8
IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL0lFVEYvL0RURCBIVE1MLy9FTiI+Cis8aHRtbD4KKzxo
ZWFkPgorPGxpbmsgcmVsPSJzdHlsZXNoZWV0IiBocmVmPSIuLi9qcy9yZXNvdXJjZXMvanMtdGVz
dC1zdHlsZS5jc3MiPgorPHNjcmlwdCBzcmM9Ii4uL2pzL3Jlc291cmNlcy9qcy10ZXN0LXByZS5q
cyI+PC9zY3JpcHQ+Cis8L2hlYWQ+Cis8Ym9keT4KKzxwIGlkPSJkZXNjcmlwdGlvbiI+PC9wPgor
PGRpdiBpZD0iY29uc29sZSI+PC9kaXY+Cis8c2NyaXB0IHNyYz0icmVzb3VyY2VzL2JsdXItZm9j
dXMtd2luZG93LXNob3VsZC1ibHVyLWZvY3VzLWVsZW1lbnQuanMiPjwvc2NyaXB0PgorPHNjcmlw
dCBzcmM9Ii4uL2pzL3Jlc291cmNlcy9qcy10ZXN0LXBvc3QuanMiPjwvc2NyaXB0PgorPC9ib2R5
PgorPC9odG1sPgpJbmRleDogTGF5b3V0VGVzdHMvZmFzdC9ldmVudHMvdGFiaW5kZXgtZm9jdXMt
Ymx1ci1hbGwtZXhwZWN0ZWQudHh0Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2Zhc3QvZXZl
bnRzL3RhYmluZGV4LWZvY3VzLWJsdXItYWxsLWV4cGVjdGVkLnR4dAkocmV2aXNpb24gNDgyMTAp
CisrKyBMYXlvdXRUZXN0cy9mYXN0L2V2ZW50cy90YWJpbmRleC1mb2N1cy1ibHVyLWFsbC1leHBl
Y3RlZC50eHQJKHdvcmtpbmcgY29weSkKQEAgLTEsMiArMSwyIEBACi0zMjkgZm9jdXMgLyAzMjkg
Ymx1ciBldmVudHMgZGlzcGF0Y2hlZCwgYW5kIHNob3VsZCBiZSAzMzUgLyAzMzUgUEFTU0VECisz
MjkgZm9jdXMgLyAzMjkgYmx1ciBldmVudHMgZGlzcGF0Y2hlZCwgYW5kIHNob3VsZCBiZSAzMjkg
LyAzMjkgUEFTU0VECiBUb3RhbCBvZiAwIGZvY3VzIHRlc3QocykgZmFpbGVkLiBQQVNTRUQKSW5k
ZXg6IExheW91dFRlc3RzL2Zhc3QvZXZlbnRzL3Jlc291cmNlcy9ibHVyLWZvY3VzLXdpbmRvdy1z
aG91bGQtYmx1ci1mb2N1cy1lbGVtZW50LmpzCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2Zh
c3QvZXZlbnRzL3Jlc291cmNlcy9ibHVyLWZvY3VzLXdpbmRvdy1zaG91bGQtYmx1ci1mb2N1cy1l
bGVtZW50LmpzCShyZXZpc2lvbiAwKQorKysgTGF5b3V0VGVzdHMvZmFzdC9ldmVudHMvcmVzb3Vy
Y2VzL2JsdXItZm9jdXMtd2luZG93LXNob3VsZC1ibHVyLWZvY3VzLWVsZW1lbnQuanMJKHJldmlz
aW9uIDApCkBAIC0wLDAgKzEsNjYgQEAKK2Rlc2NyaXB0aW9uKCdCbHVycmluZyBhbmQgZm9jdXNp
bmcgdGhlIHdpbmRvdyBzaG91bGQgYmx1ciBhbmQgZm9jdXMgdGhlIGZvY3VzZWQgZWxlbWVudCcp
OworCit2YXIgZGl2RWxlbWVudCA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ2RpdicpOworZGl2
RWxlbWVudC50YWJJbmRleCA9IDA7CitkaXZFbGVtZW50LnRleHRDb250ZW50ID0gJ091dGVyJzsK
K2RvY3VtZW50LmJvZHkuYXBwZW5kQ2hpbGQoZGl2RWxlbWVudCk7CisKK3ZhciBpZnJhbWVFbGVt
ZW50ID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnaWZyYW1lJyk7Citkb2N1bWVudC5ib2R5LmFw
cGVuZENoaWxkKGlmcmFtZUVsZW1lbnQpOwordmFyIGlmcmFtZSA9IHdpbmRvdy5mcmFtZXNbMF07
Cit2YXIgaW5uZXJEaXYgPSBpZnJhbWVFbGVtZW50LmNvbnRlbnREb2N1bWVudC5jcmVhdGVFbGVt
ZW50KCdkaXYnKTsKK2lubmVyRGl2LnRleHRDb250ZW50ID0gJ0lubmVyJzsKK2lubmVyRGl2LnRh
YkluZGV4ID0gMDsKK2lmcmFtZUVsZW1lbnQuY29udGVudERvY3VtZW50LmJvZHkuYXBwZW5kQ2hp
bGQoaW5uZXJEaXYpOworCit2YXIgdGhpc09iamVjdHMgPSBbXTsKK3ZhciBldmVudHMgPSBbXTsK
K3ZhciB0YXJnZXRzID0gW107CisKKy8vIEZvY3VzIGJlZm9yZSBzZXR0aW5nIHVwIGV2ZW50IGxp
c3RlbmVycy4KK2RpdkVsZW1lbnQuZm9jdXMoKTsKKworZGl2RWxlbWVudC5vbmZvY3VzID0gZGl2
RWxlbWVudC5vbmJsdXIgPSB3aW5kb3cub25mb2N1cyA9IHdpbmRvdy5vbmJsdXIgPQorICAgIGlu
bmVyRGl2Lm9uZm9jdXMgPSBpbm5lckRpdi5vbmJsdXIgPSBpZnJhbWUub25mb2N1cyA9IGlmcmFt
ZS5vbmJsdXIgPSBmdW5jdGlvbihlKQoreyAgICAKKyAgICB0aGlzT2JqZWN0cy5wdXNoKHRoaXMp
OworICAgIGV2ZW50cy5wdXNoKGUudHlwZSk7CisgICAgdGFyZ2V0cy5wdXNoKGUudGFyZ2V0KTsK
K307CisKK2lmICh3aW5kb3cubGF5b3V0VGVzdENvbnRyb2xsZXIpIHsKKyAgICB3aW5kb3cubGF5
b3V0VGVzdENvbnRyb2xsZXIuc2V0V2luZG93SXNLZXkoZmFsc2UpOworICAgIHdpbmRvdy5sYXlv
dXRUZXN0Q29udHJvbGxlci5zZXRXaW5kb3dJc0tleSh0cnVlKTsKKyAgICAKKyAgICBpbm5lckRp
di5mb2N1cygpOworICAgIGRpdkVsZW1lbnQuZm9jdXMoKTsKK30KKwordmFyIGkgPSAwOworZnVu
Y3Rpb24gdGVzdE5leHRFdmVudCh0YXJnZXQsIGV2ZW50VHlwZSkKK3sKKyAgICBzaG91bGRCZSgn
dGhpc09iamVjdHNbJyArIGkgKyAnXScsIHRhcmdldCk7CisgICAgc2hvdWxkQmVFcXVhbFRvU3Ry
aW5nKCdldmVudHNbJyArIGkgKyAnXScsIGV2ZW50VHlwZSk7CisgICAgc2hvdWxkQmUoJ3Rhcmdl
dHNbJyArIGkgKyAnXScsIHRhcmdldCk7CisgICAgaSsrOworfQorCit0ZXN0TmV4dEV2ZW50KCdk
aXZFbGVtZW50JywgJ2JsdXInKTsKK3Rlc3ROZXh0RXZlbnQoJ3dpbmRvdycsICdibHVyJyk7Cit0
ZXN0TmV4dEV2ZW50KCd3aW5kb3cnLCAnZm9jdXMnKTsKK3Rlc3ROZXh0RXZlbnQoJ2RpdkVsZW1l
bnQnLCAnZm9jdXMnKTsKKwordGVzdE5leHRFdmVudCgnZGl2RWxlbWVudCcsICdibHVyJyk7Cit0
ZXN0TmV4dEV2ZW50KCd3aW5kb3cnLCAnYmx1cicpOwordGVzdE5leHRFdmVudCgnaWZyYW1lJywg
J2ZvY3VzJyk7Cit0ZXN0TmV4dEV2ZW50KCdpbm5lckRpdicsICdmb2N1cycpOworCit0ZXN0TmV4
dEV2ZW50KCdpbm5lckRpdicsICdibHVyJyk7Cit0ZXN0TmV4dEV2ZW50KCdpZnJhbWUnLCAnYmx1
cicpOwordGVzdE5leHRFdmVudCgnd2luZG93JywgJ2ZvY3VzJyk7Cit0ZXN0TmV4dEV2ZW50KCdk
aXZFbGVtZW50JywgJ2ZvY3VzJyk7CisKK2RvY3VtZW50LmJvZHkucmVtb3ZlQ2hpbGQoZGl2RWxl
bWVudCk7Citkb2N1bWVudC5ib2R5LnJlbW92ZUNoaWxkKGlmcmFtZUVsZW1lbnQpOworCit2YXIg
c3VjY2Vzc2Z1bGx5UGFyc2VkID0gdHJ1ZTsKSW5kZXg6IExheW91dFRlc3RzL2Zhc3QvZXZlbnRz
L3Jlc291cmNlcy90YWJpbmRleC1mb2N1cy1ibHVyLWFsbC5qcwo9PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlv
dXRUZXN0cy9mYXN0L2V2ZW50cy9yZXNvdXJjZXMvdGFiaW5kZXgtZm9jdXMtYmx1ci1hbGwuanMJ
KHJldmlzaW9uIDQ4MjEwKQorKysgTGF5b3V0VGVzdHMvZmFzdC9ldmVudHMvcmVzb3VyY2VzL3Rh
YmluZGV4LWZvY3VzLWJsdXItYWxsLmpzCSh3b3JraW5nIGNvcHkpCkBAIC00OSw3ICs0OSw3IEBA
IGZ1bmN0aW9uIHRlc3QoKQogICAgIHZhciBob21lQmFzZSA9IHdpbmRvdy5mcmFtZXNbMV0uZG9j
dW1lbnQuZ2V0RWxlbWVudHNCeUNsYXNzTmFtZSgnaG9tZWJhc2UnKTsKICAgICBob21lQmFzZVsw
XS5mb2N1cygpOwogCi0gICAgdmFyIHJlc3VsdFN1bW1hcnkgPSBmb2N1c0NvdW50KyIgZm9jdXMg
LyAiK2JsdXJDb3VudCsiIGJsdXIgZXZlbnRzIGRpc3BhdGNoZWQsIGFuZCBzaG91bGQgYmUgMzM1
IC8gMzM1ICI7CisgICAgdmFyIHJlc3VsdFN1bW1hcnkgPSBmb2N1c0NvdW50KyIgZm9jdXMgLyAi
K2JsdXJDb3VudCsiIGJsdXIgZXZlbnRzIGRpc3BhdGNoZWQsIGFuZCBzaG91bGQgYmUgMzI5IC8g
MzI5ICI7CiAgICAgcmVzdWx0U3VtbWFyeSArPSAoZm9jdXNDb3VudD09Ymx1ckNvdW50KSA/ICI8
c3BhbiBzdHlsZT0nY29sb3I6Z3JlZW4nPlBBU1NFRDwvc3Bhbj48YnI+IiA6ICI8c3BhbiBzdHls
ZT0nY29sb3I6cmVkJz5GQUlMRUQ8L3NwYW4+PGJyPiI7CiAgICAgcmVzdWx0U3VtbWFyeSArPSAi
VG90YWwgb2YgIitmYWlsZWRUZXN0Q291bnQrIiBmb2N1cyB0ZXN0KHMpIGZhaWxlZC4iOwogICAg
IGlmIChmYWlsZWRUZXN0Q291bnQpCg==
</data>

          </attachment>
      

    </bug>

</bugzilla>