<?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>126322</bug_id>
          
          <creation_ts>2013-12-30 21:05:12 -0800</creation_ts>
          <short_desc>REGRESSION (r158617): Find on Page can get stuck in a loop when the search string occurs in an &lt;input&gt; in a &lt;fieldset&gt;</short_desc>
          <delta_ts>2014-04-14 23:26:54 -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>HTML Editing</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc>data:text/html,&lt;fieldset&gt;&lt;input%20value=rule&gt;</bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar, Regression</keywords>
          <priority>P1</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter>mitz</reporter>
          <assigned_to name="Darin Adler">darin</assigned_to>
          <cc>cfleizach</cc>
    
    <cc>darin</cc>
    
    <cc>rniwa</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>963443</commentid>
    <comment_count>0</comment_count>
    <who name="">mitz</who>
    <bug_when>2013-12-30 21:05:12 -0800</bug_when>
    <thetext>To reproduce: navigate to the URL in Safari, choose Edit &gt; Find &gt; Find, and in the Find bar, type “rule” (without the quotes). Notice how Safari reports more than 1,000 matches.

This was caused by &lt;http://trac.webkit.org/r158617&gt;, the fix for bug 123697.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>963457</commentid>
    <comment_count>1</comment_count>
    <who name="">mitz</who>
    <bug_when>2013-12-30 21:54:22 -0800</bug_when>
    <thetext>&lt;rdar://problem/15733725&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1000272</commentid>
    <comment_count>2</comment_count>
    <who name="Darin Adler">darin</who>
    <bug_when>2014-04-13 01:11:04 -0700</bug_when>
    <thetext>The problem with http://trac.webkit.org/r158617 is that it changes the behavior of the low-level function Range::firstNode. I’m going to roll that part of the patch out and then see what happens to the accessibility behavior.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1000273</commentid>
    <comment_count>3</comment_count>
    <who name="Darin Adler">darin</who>
    <bug_when>2014-04-13 01:17:04 -0700</bug_when>
    <thetext>I just tested Safari 7.0.3 and it also shows the &quot;more then 1,000 matches&quot; behavior. Does that make sense given that http://trac.webkit.org/r158617 should not be there in the WebKit used by Safari 7.0.3?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1000274</commentid>
    <comment_count>4</comment_count>
    <who name="chris fleizach">cfleizach</who>
    <bug_when>2014-04-13 01:24:08 -0700</bug_when>
    <thetext>(In reply to comment #3)
&gt; I just tested Safari 7.0.3 and it also shows the &quot;more then 1,000 matches&quot; behavior. Does that make sense given that http://trac.webkit.org/r158617 should not be there in the WebKit used by Safari 7.0.3?

I think this change went into the 7.0.3 update</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1000302</commentid>
    <comment_count>5</comment_count>
    <who name="Darin Adler">darin</who>
    <bug_when>2014-04-13 10:08:05 -0700</bug_when>
    <thetext>Yes, removing the incorrect change to Range::firstNode does indeed fix the find problem right away.

But it reintroduces the problem from bug 123697.

The core of the problem is trying to make elements with rendered children work the way that &lt;img&gt; elements work with our editing code. Unfortunately, for &lt;img&gt; elements, we are still stuck with the old model where we represent “before the image” as (&lt;img&gt;, 0) in a lot of code; parent node &lt;img&gt;, offset 0. Which in actual Range semantics means “inside the image”, not “before the image“.

We have a long term plan to get rid of this, but since it’s still around it causes us major headaches.

Here, the problem is that for the &lt;div role=&quot;image&quot;&gt;, (&lt;div&gt;, 0) can mean either “before the image” or “inside the image”. The hacks that make this almost work are getting out of hand at this point.

Instead of modifying firstNode, we need to modify Position::parentAnchoredEquivalent to handle this case.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1000306</commentid>
    <comment_count>6</comment_count>
      <attachid>229236</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2014-04-13 11:22:12 -0700</bug_when>
    <thetext>Created attachment 229236
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1000307</commentid>
    <comment_count>7</comment_count>
    <who name="Darin Adler">darin</who>
    <bug_when>2014-04-13 11:23:02 -0700</bug_when>
    <thetext>The patch is ready to go and passes all the existing tests. But before landing it we should really add a new test for the actual problem with find. That’s the only thing preventing me from putting this up for review and landing it.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1000374</commentid>
    <comment_count>8</comment_count>
      <attachid>229259</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2014-04-13 21:23:30 -0700</bug_when>
    <thetext>Created attachment 229259
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1000381</commentid>
    <comment_count>9</comment_count>
      <attachid>229259</attachid>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2014-04-13 21:54:14 -0700</bug_when>
    <thetext>Comment on attachment 229259
Patch

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

&gt; Source/WebCore/dom/Element.cpp:2944
&gt; +    return !equalIgnoringCase(fastGetAttribute(roleAttr), &quot;img&quot;);

Should other element subclasses that override this method check this condition as well?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1000383</commentid>
    <comment_count>10</comment_count>
    <who name="Darin Adler">darin</who>
    <bug_when>2014-04-13 21:58:58 -0700</bug_when>
    <thetext>(In reply to comment #9)
&gt; Should other element subclasses that override this method check this condition as well?

The only element classes that override this for any reason other than to unconditionally return false are HTMLObjectElement and HTMLHRElement. I’m not sure that either of them really needs to support role=&quot;image&quot;, but I could change them to call through to the base class.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1000412</commentid>
    <comment_count>11</comment_count>
    <who name="Darin Adler">darin</who>
    <bug_when>2014-04-13 23:55:40 -0700</bug_when>
    <thetext>Committed r167210: &lt;http://trac.webkit.org/changeset/167210&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1000581</commentid>
    <comment_count>12</comment_count>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2014-04-14 12:53:57 -0700</bug_when>
    <thetext>This change broke a test, editing/editability/ignored-content.html either fails or asserts: http://webkit-test-results.appspot.com/dashboards/flakiness_dashboard.html#tests=editing%2Feditability%2Fignored-content.html</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1000719</commentid>
    <comment_count>13</comment_count>
    <who name="Darin Adler">darin</who>
    <bug_when>2014-04-14 20:06:46 -0700</bug_when>
    <thetext>Committed r167291: &lt;http://trac.webkit.org/changeset/167291&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1000720</commentid>
    <comment_count>14</comment_count>
    <who name="Darin Adler">darin</who>
    <bug_when>2014-04-14 20:07:23 -0700</bug_when>
    <thetext>The followup fixes the problem seen on the bots/flakiness dashboard.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1000777</commentid>
    <comment_count>15</comment_count>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2014-04-14 23:26:54 -0700</bug_when>
    <thetext>Confirmed, thank you!</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>229236</attachid>
            <date>2014-04-13 11:22:12 -0700</date>
            <delta_ts>2014-04-13 21:23:27 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-126322-20140413112151.patch</filename>
            <type>text/plain</type>
            <size>6430</size>
            <attacher name="Darin Adler">darin</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTY3MTkyCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMTAwZWI3NGQ2YTNmOTM1
ZDJmYWI4MGI0N2NkODRkZmU3NGRjNzNhOS4uZjA4Zjk3MDhiNzZhNjFhMTY1YmM4NjE4MDhhNDYx
ZGFkMmEyNmU2NiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDMwIEBACisyMDE0LTA0LTEzICBEYXJp
biBBZGxlciAgPGRhcmluQGFwcGxlLmNvbT4KKworICAgICAgICBSRUdSRVNTSU9OIChyMTU4NjE3
KTogRmluZCBvbiBQYWdlIGNhbiBnZXQgc3R1Y2sgaW4gYSBsb29wIHdoZW4gdGhlIHNlYXJjaCBz
dHJpbmcgb2NjdXJzIGluIGFuIDxpbnB1dD4gaW4gYSA8ZmllbGRzZXQ+CisgICAgICAgIGh0dHBz
Oi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMjYzMjIKKworICAgICAgICBSZXZp
ZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIGRvbS9FbGVtZW50LmNwcDoKKyAg
ICAgICAgKFdlYkNvcmU6OkVsZW1lbnQ6OmNhbkNvbnRhaW5SYW5nZUVuZFBvaW50KTogTm93IHJl
dHVybnMgZmFsc2Ugd2hlbiB0aGUgcm9sZSBvZiB0aGUgZWxlbWVudAorICAgICAgICBpcyAiaW1n
Ii4gVGhpcyBpcyB0aGUgc2FtZSBydWxlIHRoYXQncyBoYXJkLWNvZGVkIGluIGlzUmVuZGVyUmVw
bGFjZWRFbGVtZW50IGZvciB0aGUgc2FtZQorICAgICAgICByZWFzb24uIE5lZWQgbW9yZSB0ZXN0
IGNvdmVyYWdlIHRvIG1ha2Ugc3VyZSB0aGlzIHJvbGUgZmVhdHVyZSB3b3JrcyBjb25zaXN0ZW50
bHkuCisKKyAgICAgICAgKiBkb20vRWxlbWVudC5oOiBNYWRlIGNhbkNvbnRhaW5SYW5nZUVuZFBv
aW50IG5vIGxvbmdlciBpbmxpbmUgc2luY2UgaXQncyBub3QganVzdCBhCisgICAgICAgIHJldHVy
biBzdGF0ZW1lbnQgYW55IG1vcmUuCisKKyAgICAgICAgKiBkb20vUG9zaXRpb24uY3BwOgorICAg
ICAgICAoV2ViQ29yZTo6UG9zaXRpb246OmlzQ2FuZGlkYXRlKTogVG9vayBvdXQgY29kZSB0aGF0
IGNhbGxzIGlzUmVuZGVyZXJSZXBsYWNlZEVsZW1lbnQKKyAgICAgICAgdGhhdCB3YXMgYWRkZWQg
aW4gcjE1ODYxNzsgbm90IG5lZWRlZCBub3cgdGhhdCB3ZSB1cGRhdGVkIGNhbkNvbnRhaW5SYW5n
ZUVuZFBvaW50LgorCisgICAgICAgICogZG9tL1JhbmdlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6
OlJhbmdlOjpmaXJzdE5vZGUpOiBSZW1vdmVkIGNvZGUgaGVyZSB0aGF0IGNhbGxlZCBpc1JlbmRl
cmVyUmVwbGFjZWRFbGVtZW50LgorICAgICAgICBUaGlzIHdhcyB0aGUgd3JvbmcgbGV2ZWwgdG8g
YmUgYWRkaW5nIGVkaXRpbmcgbG9naWMsIGFuZCB0aGVyZSdzIGEgRklYTUUgaGVyZSB0byB0aGF0
CisgICAgICAgIGVmZmVjdCwgd2hpY2ggd2UgYXJlIG5vdyBkZWxldGluZy4gVGhpcyB3YXMgdGhl
IGNoYW5nZSB0aGF0IGJyb2tlIEZpbmQuCisKKyAgICAgICAgKiBlZGl0aW5nL1RleHRJdGVyYXRv
ci5jcHA6IEFkZGVkIGEgY29tbWVudCBhYm91dCB0aGUgcmVkdW5kYW5jeSBiZXR3ZWVuIHRoZQor
ICAgICAgICBpc1JlbmRlcmVyUmVwbGFjZWRFbGVtZW50IGFuZCBlZGl0aW5nSWdub3Jlc0NvbnRl
bnQgZnVuY3Rpb25zLgorCiAyMDE0LTA0LTEyICBEYXJpbiBBZGxlciAgPGRhcmluQGFwcGxlLmNv
bT4KIAogICAgICAgICBSRUdSRVNTSU9OIChyMTY2ODYwKTogQVNTRVJUSU9OIEZBSUxFRDogIWlz
Q2FsY3VsYXRlZCgpIG9uIGZhc3QvY3NzL2ltYWdlLXNldC12YWx1ZS1ub3QtcmVtb3ZlZC1jcmFz
aC5odG1sCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9hY2Nlc3NpYmlsaXR5L0FjY2Vzc2li
aWxpdHlPYmplY3QuY3BwIGIvU291cmNlL1dlYkNvcmUvYWNjZXNzaWJpbGl0eS9BY2Nlc3NpYmls
aXR5T2JqZWN0LmNwcAppbmRleCA1NmMzODMwNDZlY2M0Mjc3ZmU2NTBiNWU5YzIzYzEwNDAwZDc2
OTNmLi42MWY3NGM5YjhjOTFiNGJmZTViNjgxYjM2ZmM4ZWFiNmJhOWUyMmY3IDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9hY2Nlc3NpYmlsaXR5L0FjY2Vzc2liaWxpdHlPYmplY3QuY3BwCisr
KyBiL1NvdXJjZS9XZWJDb3JlL2FjY2Vzc2liaWxpdHkvQWNjZXNzaWJpbGl0eU9iamVjdC5jcHAK
QEAgLTEwNjksNyArMTA2OSw3IEBAIFN0cmluZyBBY2Nlc3NpYmlsaXR5T2JqZWN0OjpsaXN0TWFy
a2VyVGV4dEZvck5vZGVBbmRQb3NpdGlvbihOb2RlKiBub2RlLCBjb25zdCBWCiAgICAgLy8gd2hl
biBpdGVyYXRpbmcgdGV4dC4KICAgICByZXR1cm4gbGlzdEl0ZW0tPm1hcmtlclRleHRXaXRoU3Vm
Zml4KCk7CiB9Ci0gICAgCisKIFN0cmluZyBBY2Nlc3NpYmlsaXR5T2JqZWN0OjpzdHJpbmdGb3JW
aXNpYmxlUG9zaXRpb25SYW5nZShjb25zdCBWaXNpYmxlUG9zaXRpb25SYW5nZSYgdmlzaWJsZVBv
c2l0aW9uUmFuZ2UpIGNvbnN0CiB7CiAgICAgaWYgKHZpc2libGVQb3NpdGlvblJhbmdlLmlzTnVs
bCgpKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvZG9tL0VsZW1lbnQuY3BwIGIvU291cmNl
L1dlYkNvcmUvZG9tL0VsZW1lbnQuY3BwCmluZGV4IDBiODI1OWQ4MjUyMjQ4MTRjZWQ4NTgxNWYz
YmQ2YzJlOWE5MGI2MWYuLmFjYjI0NmUwMDg4YjljNzBiNWRlMGFjMTFmYzQ0ZjIzYjc3Yzc4NmQg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2RvbS9FbGVtZW50LmNwcAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9kb20vRWxlbWVudC5jcHAKQEAgLTI5MzksNCArMjkzOSw5IEBAIHZvaWQgRWxlbWVu
dDo6Y2xlYXJIYXNQZW5kaW5nUmVzb3VyY2VzKCkKICAgICBlbnN1cmVFbGVtZW50UmFyZURhdGEo
KS5zZXRIYXNQZW5kaW5nUmVzb3VyY2VzKGZhbHNlKTsKIH0KIAorYm9vbCBFbGVtZW50OjpjYW5D
b250YWluUmFuZ2VFbmRQb2ludCgpIGNvbnN0Cit7CisgICAgcmV0dXJuICFlcXVhbElnbm9yaW5n
Q2FzZShmYXN0R2V0QXR0cmlidXRlKHJvbGVBdHRyKSwgImltZyIpOworfQorCiB9IC8vIG5hbWVz
cGFjZSBXZWJDb3JlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9kb20vRWxlbWVudC5oIGIv
U291cmNlL1dlYkNvcmUvZG9tL0VsZW1lbnQuaAppbmRleCA2MmI2MTcyZTY0NWEwZGQ0ZTZiYzU3
MTNhYjQ5YzhmYjg4Yjg4ZDA3Li40ZDJkZjc3ZmRiZDNjNzc0NzExMzZkN2ZmNjg5ZWNhYTczODY5
ZmRhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9kb20vRWxlbWVudC5oCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL2RvbS9FbGVtZW50LmgKQEAgLTQ4NCw3ICs0ODQsNyBAQCBwdWJsaWM6CiAgICAg
dmlydHVhbCBib29sIGlzRnJhbWVFbGVtZW50QmFzZSgpIGNvbnN0IHsgcmV0dXJuIGZhbHNlOyB9
CiAgICAgdmlydHVhbCBib29sIGlzU2VhcmNoRmllbGRDYW5jZWxCdXR0b25FbGVtZW50KCkgY29u
c3QgeyByZXR1cm4gZmFsc2U7IH0KIAotICAgIHZpcnR1YWwgYm9vbCBjYW5Db250YWluUmFuZ2VF
bmRQb2ludCgpIGNvbnN0IG92ZXJyaWRlIHsgcmV0dXJuIHRydWU7IH0KKyAgICB2aXJ0dWFsIGJv
b2wgY2FuQ29udGFpblJhbmdlRW5kUG9pbnQoKSBjb25zdCBvdmVycmlkZTsKIAogICAgIC8vIFVz
ZWQgZm9yIGRpc2FibGVkIGZvcm0gZWxlbWVudHM7IGlmIHRydWUsIHByZXZlbnRzIG1vdXNlIGV2
ZW50cyBmcm9tIGJlaW5nIGRpc3BhdGNoZWQKICAgICAvLyB0byBldmVudCBsaXN0ZW5lcnMsIGFu
ZCBwcmV2ZW50cyBET01BY3RpdmF0ZSBldmVudHMgZnJvbSBiZWluZyBzZW50IGF0IGFsbC4KZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2RvbS9Qb3NpdGlvbi5jcHAgYi9Tb3VyY2UvV2ViQ29y
ZS9kb20vUG9zaXRpb24uY3BwCmluZGV4IGM1N2M2Zjc2NDJmNjkyZTA4NGZhZTVlZGQ1ZWYxODFm
ZDNkNTg1NDQuLjNhZDhlZGFlN2Q5ZjNlOThiYzNmYmRjYWZiYTRkMzhlMmRmZDNkNmMgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2RvbS9Qb3NpdGlvbi5jcHAKKysrIGIvU291cmNlL1dlYkNv
cmUvZG9tL1Bvc2l0aW9uLmNwcApAQCAtMjI0LDYgKzIyNCw3IEBAIFBvc2l0aW9uIFBvc2l0aW9u
OjpwYXJlbnRBbmNob3JlZEVxdWl2YWxlbnQoKSBjb25zdAogICAgICAgICAgICAgcmV0dXJuIHBv
c2l0aW9uSW5QYXJlbnRCZWZvcmVOb2RlKG1fYW5jaG9yTm9kZS5nZXQoKSk7CiAgICAgICAgIHJl
dHVybiBQb3NpdGlvbihtX2FuY2hvck5vZGUuZ2V0KCksIDAsIFBvc2l0aW9uSXNPZmZzZXRJbkFu
Y2hvcik7CiAgICAgfQorCiAgICAgaWYgKCFtX2FuY2hvck5vZGUtPm9mZnNldEluQ2hhcmFjdGVy
cygpCiAgICAgICAgICYmIChtX2FuY2hvclR5cGUgPT0gUG9zaXRpb25Jc0FmdGVyQW5jaG9yIHx8
IG1fYW5jaG9yVHlwZSA9PSBQb3NpdGlvbklzQWZ0ZXJDaGlsZHJlbiB8fCBzdGF0aWNfY2FzdDx1
bnNpZ25lZD4obV9vZmZzZXQpID09IG1fYW5jaG9yTm9kZS0+Y2hpbGROb2RlQ291bnQoKSkKICAg
ICAgICAgJiYgKGVkaXRpbmdJZ25vcmVzQ29udGVudChtX2FuY2hvck5vZGUuZ2V0KCkpIHx8IGlz
UmVuZGVyZWRUYWJsZShtX2FuY2hvck5vZGUuZ2V0KCkpKQpAQCAtOTM1LDkgKzkzNiw2IEBAIGJv
b2wgUG9zaXRpb246OmlzQ2FuZGlkYXRlKCkgY29uc3QKICAgICBpZiAobV9hbmNob3JOb2RlLT5o
YXNUYWdOYW1lKGh0bWxUYWcpKQogICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgICAgIAotICAg
IGlmIChpc1JlbmRlcmVyUmVwbGFjZWRFbGVtZW50KHJlbmRlcmVyKSkKLSAgICAgICAgcmV0dXJu
ICFub2RlSXNVc2VyU2VsZWN0Tm9uZShkZXByZWNhdGVkTm9kZSgpKSAmJiBhdEZpcnN0RWRpdGlu
Z1Bvc2l0aW9uRm9yTm9kZSgpOwotCiAgICAgaWYgKHJlbmRlcmVyLT5pc1JlbmRlckJsb2NrRmxv
dygpKSB7CiAgICAgICAgIFJlbmRlckJsb2NrRmxvdyYgYmxvY2sgPSB0b1JlbmRlckJsb2NrRmxv
dygqcmVuZGVyZXIpOwogICAgICAgICBpZiAoYmxvY2subG9naWNhbEhlaWdodCgpIHx8IG1fYW5j
aG9yTm9kZS0+aGFzVGFnTmFtZShib2R5VGFnKSkgewpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvZG9tL1JhbmdlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2RvbS9SYW5nZS5jcHAKaW5kZXggNGZl
NzE5ZTkzOTBhZTlhOTlkMzdhOGNhMzVjODkwYzVlYzMzYzk1NS4uYWIxZjI0MGNlNzk1ZmVmN2Zk
ODAyMjAzMWM1YmZmM2RkOTRkMTI0NSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvZG9tL1Jh
bmdlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9kb20vUmFuZ2UuY3BwCkBAIC0xNTcwLDEwICsx
NTcwLDYgQEAgTm9kZSogUmFuZ2U6OmZpcnN0Tm9kZSgpIGNvbnN0CiAgICAgICAgIHJldHVybiAw
OwogICAgIGlmIChtX3N0YXJ0LmNvbnRhaW5lcigpLT5vZmZzZXRJbkNoYXJhY3RlcnMoKSkKICAg
ICAgICAgcmV0dXJuIG1fc3RhcnQuY29udGFpbmVyKCk7Ci0gICAgLy8gRklYTUU6IEEgcmVuZGVy
ZXItYmFzZWQgcnVsZSBpcyBjb21wbGV0ZWx5IG91dCBvZiBwbGFjZSBoZXJlLgotICAgIC8vIEZv
ciBvbmUgdGhpbmcsIHRoZSByZW5kZXJlciBjb3VsZCBiZSBvdXQgb2YgZGF0ZSBpZiB0aGUgRE9N
IHdhcyByZWNlbnRseSBjaGFuZ2VkLgotICAgIGlmIChpc1JlbmRlcmVyUmVwbGFjZWRFbGVtZW50
KG1fc3RhcnQuY29udGFpbmVyKCktPnJlbmRlcmVyKCkpKQotICAgICAgICByZXR1cm4gbV9zdGFy
dC5jb250YWluZXIoKTsKICAgICBpZiAoTm9kZSogY2hpbGQgPSBtX3N0YXJ0LmNvbnRhaW5lcigp
LT5jaGlsZE5vZGUobV9zdGFydC5vZmZzZXQoKSkpCiAgICAgICAgIHJldHVybiBjaGlsZDsKICAg
ICBpZiAoIW1fc3RhcnQub2Zmc2V0KCkpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9lZGl0
aW5nL1RleHRJdGVyYXRvci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9lZGl0aW5nL1RleHRJdGVyYXRv
ci5jcHAKaW5kZXggN2U5NjhiYTkwNmFjYjk3MzEyM2M0YWFiYTAyZTJkMTZiN2EzMzQzNi4uYTUx
NDNkZWYxOTliOTVlZTQyNmNiZDAxMjBlOWZmYzI2MGY0MjEyZiAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvZWRpdGluZy9UZXh0SXRlcmF0b3IuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Vk
aXRpbmcvVGV4dEl0ZXJhdG9yLmNwcApAQCAtMjQyLDYgKzI0Miw4IEBAIHN0YXRpYyB2b2lkIHNl
dFVwRnVsbHlDbGlwcGVkU3RhY2soQml0U3RhY2smIHN0YWNrLCBOb2RlJiBub2RlKQogICAgIEFT
U0VSVChzdGFjay5zaXplKCkgPT0gMSArIGRlcHRoQ3Jvc3NpbmdTaGFkb3dCb3VuZGFyaWVzKG5v
ZGUpKTsKIH0KIAorLy8gRklYTUU6IGVkaXRpbmdJZ25vcmVzQ29udGVudCBhbmQgaXNSZW5kZXJl
clJlcGxhY2VkRWxlbWVudCB0cnkgdG8gZG8gdGhlIHNhbWUgam9iLgorLy8gSXQncyBub3QgZ29v
ZCB0byBoYXZlIGJvdGggb2YgdGhlbS4KIGJvb2wgaXNSZW5kZXJlclJlcGxhY2VkRWxlbWVudChS
ZW5kZXJPYmplY3QqIHJlbmRlcmVyKQogewogICAgIGlmICghcmVuZGVyZXIpCg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>229259</attachid>
            <date>2014-04-13 21:23:30 -0700</date>
            <delta_ts>2014-04-14 20:07:34 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-126322-20140413212309.patch</filename>
            <type>text/plain</type>
            <size>13090</size>
            <attacher name="Darin Adler">darin</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTY3MjA3CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNjY0MmI5ZWZmOTBjYTEx
YWNhMTUyN2YyYzQzMmRiOTc3OGE3MDI3NC4uZDIxNzIyOTkwMWExMmJhOTU1ZDgxOGYzOTA0YjA3
NjQ2NjhlZmI5OSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDMzIEBACisyMDE0LTA0LTEzICBEYXJp
biBBZGxlciAgPGRhcmluQGFwcGxlLmNvbT4KKworICAgICAgICBSRUdSRVNTSU9OIChyMTU4NjE3
KTogRmluZCBvbiBQYWdlIGNhbiBnZXQgc3R1Y2sgaW4gYSBsb29wIHdoZW4gdGhlIHNlYXJjaCBz
dHJpbmcgb2NjdXJzIGluIGFuIDxpbnB1dD4gaW4gYSA8ZmllbGRzZXQ+CisgICAgICAgIGh0dHBz
Oi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMjYzMjIKKworICAgICAgICBSZXZp
ZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIGRvbS9FbGVtZW50LmNwcDoKKyAg
ICAgICAgKFdlYkNvcmU6OkVsZW1lbnQ6OmNhbkNvbnRhaW5SYW5nZUVuZFBvaW50KTogTm93IHJl
dHVybnMgZmFsc2Ugd2hlbiB0aGUgcm9sZSBvZiB0aGUgZWxlbWVudAorICAgICAgICBpcyAiaW1n
Ii4gVGhpcyBpcyB0aGUgc2FtZSBydWxlIHRoYXQncyBoYXJkLWNvZGVkIGluIGlzUmVuZGVyUmVw
bGFjZWRFbGVtZW50IGZvciB0aGUgc2FtZQorICAgICAgICByZWFzb24uIE5lZWQgbW9yZSB0ZXN0
IGNvdmVyYWdlIHRvIG1ha2Ugc3VyZSB0aGlzIHJvbGUgZmVhdHVyZSB3b3JrcyBjb25zaXN0ZW50
bHkuCisKKyAgICAgICAgKiBkb20vRWxlbWVudC5oOiBNYWRlIGNhbkNvbnRhaW5SYW5nZUVuZFBv
aW50IG5vIGxvbmdlciBpbmxpbmUgc2luY2UgaXQncyBub3QganVzdCBhCisgICAgICAgIHJldHVy
biBzdGF0ZW1lbnQgYW55IG1vcmUuCisKKyAgICAgICAgKiBkb20vUG9zaXRpb24uY3BwOgorICAg
ICAgICAoV2ViQ29yZTo6UG9zaXRpb246OmlzQ2FuZGlkYXRlKTogVG9vayBvdXQgY29kZSB0aGF0
IGNhbGxzIGlzUmVuZGVyZXJSZXBsYWNlZEVsZW1lbnQKKyAgICAgICAgdGhhdCB3YXMgYWRkZWQg
aW4gcjE1ODYxNzsgbm90IG5lZWRlZCBub3cgdGhhdCB3ZSB1cGRhdGVkIGNhbkNvbnRhaW5SYW5n
ZUVuZFBvaW50LgorCisgICAgICAgICogZG9tL1JhbmdlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6
OlJhbmdlOjpmaXJzdE5vZGUpOiBSZW1vdmVkIGNvZGUgaGVyZSB0aGF0IGNhbGxlZCBpc1JlbmRl
cmVyUmVwbGFjZWRFbGVtZW50LgorICAgICAgICBUaGlzIHdhcyB0aGUgd3JvbmcgbGV2ZWwgdG8g
YmUgYWRkaW5nIGVkaXRpbmcgbG9naWMsIGFuZCB0aGVyZSdzIGEgRklYTUUgaGVyZSB0byB0aGF0
CisgICAgICAgIGVmZmVjdCwgd2hpY2ggd2UgYXJlIG5vdyBkZWxldGluZy4gVGhpcyB3YXMgdGhl
IGNoYW5nZSB0aGF0IGJyb2tlIEZpbmQuCisKKyAgICAgICAgKiBlZGl0aW5nL1RleHRJdGVyYXRv
ci5jcHA6IEFkZGVkIGEgY29tbWVudCBhYm91dCB0aGUgcmVkdW5kYW5jeSBiZXR3ZWVuIHRoZQor
ICAgICAgICBpc1JlbmRlcmVyUmVwbGFjZWRFbGVtZW50IGFuZCBlZGl0aW5nSWdub3Jlc0NvbnRl
bnQgZnVuY3Rpb25zLgorCisgICAgICAgICogdGVzdGluZy9JbnRlcm5hbHMuY3BwOgorICAgICAg
ICAoV2ViQ29yZTo6SW50ZXJuYWxzOjpjb3VudE1hdGNoZXNGb3JUZXh0KTogU2V0IHRoZSBsaW1p
dCB0byAxMDAwIGluc3RlYWQgb2YgaW5maW5pdGUuCisKIDIwMTQtMDQtMTMgIEFuZHkgRXN0ZXMg
IDxhZXN0ZXNAYXBwbGUuY29tPgogCiAgICAgICAgIFtRdWlja0xvb2tdIE1vdmUgZmlsZSBzeXN0
ZW0tcmVsYXRlZCBjb2RlIGludG8gV2ViS2l0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9h
Y2Nlc3NpYmlsaXR5L0FjY2Vzc2liaWxpdHlPYmplY3QuY3BwIGIvU291cmNlL1dlYkNvcmUvYWNj
ZXNzaWJpbGl0eS9BY2Nlc3NpYmlsaXR5T2JqZWN0LmNwcAppbmRleCA1NmMzODMwNDZlY2M0Mjc3
ZmU2NTBiNWU5YzIzYzEwNDAwZDc2OTNmLi42MWY3NGM5YjhjOTFiNGJmZTViNjgxYjM2ZmM4ZWFi
NmJhOWUyMmY3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9hY2Nlc3NpYmlsaXR5L0FjY2Vz
c2liaWxpdHlPYmplY3QuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2FjY2Vzc2liaWxpdHkvQWNj
ZXNzaWJpbGl0eU9iamVjdC5jcHAKQEAgLTEwNjksNyArMTA2OSw3IEBAIFN0cmluZyBBY2Nlc3Np
YmlsaXR5T2JqZWN0OjpsaXN0TWFya2VyVGV4dEZvck5vZGVBbmRQb3NpdGlvbihOb2RlKiBub2Rl
LCBjb25zdCBWCiAgICAgLy8gd2hlbiBpdGVyYXRpbmcgdGV4dC4KICAgICByZXR1cm4gbGlzdEl0
ZW0tPm1hcmtlclRleHRXaXRoU3VmZml4KCk7CiB9Ci0gICAgCisKIFN0cmluZyBBY2Nlc3NpYmls
aXR5T2JqZWN0OjpzdHJpbmdGb3JWaXNpYmxlUG9zaXRpb25SYW5nZShjb25zdCBWaXNpYmxlUG9z
aXRpb25SYW5nZSYgdmlzaWJsZVBvc2l0aW9uUmFuZ2UpIGNvbnN0CiB7CiAgICAgaWYgKHZpc2li
bGVQb3NpdGlvblJhbmdlLmlzTnVsbCgpKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvZG9t
L0VsZW1lbnQuY3BwIGIvU291cmNlL1dlYkNvcmUvZG9tL0VsZW1lbnQuY3BwCmluZGV4IDBiODI1
OWQ4MjUyMjQ4MTRjZWQ4NTgxNWYzYmQ2YzJlOWE5MGI2MWYuLmFjYjI0NmUwMDg4YjljNzBiNWRl
MGFjMTFmYzQ0ZjIzYjc3Yzc4NmQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2RvbS9FbGVt
ZW50LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9kb20vRWxlbWVudC5jcHAKQEAgLTI5MzksNCAr
MjkzOSw5IEBAIHZvaWQgRWxlbWVudDo6Y2xlYXJIYXNQZW5kaW5nUmVzb3VyY2VzKCkKICAgICBl
bnN1cmVFbGVtZW50UmFyZURhdGEoKS5zZXRIYXNQZW5kaW5nUmVzb3VyY2VzKGZhbHNlKTsKIH0K
IAorYm9vbCBFbGVtZW50OjpjYW5Db250YWluUmFuZ2VFbmRQb2ludCgpIGNvbnN0Cit7CisgICAg
cmV0dXJuICFlcXVhbElnbm9yaW5nQ2FzZShmYXN0R2V0QXR0cmlidXRlKHJvbGVBdHRyKSwgImlt
ZyIpOworfQorCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9kb20vRWxlbWVudC5oIGIvU291cmNlL1dlYkNvcmUvZG9tL0VsZW1lbnQuaAppbmRleCA2
MmI2MTcyZTY0NWEwZGQ0ZTZiYzU3MTNhYjQ5YzhmYjg4Yjg4ZDA3Li40ZDJkZjc3ZmRiZDNjNzc0
NzExMzZkN2ZmNjg5ZWNhYTczODY5ZmRhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9kb20v
RWxlbWVudC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2RvbS9FbGVtZW50LmgKQEAgLTQ4NCw3ICs0
ODQsNyBAQCBwdWJsaWM6CiAgICAgdmlydHVhbCBib29sIGlzRnJhbWVFbGVtZW50QmFzZSgpIGNv
bnN0IHsgcmV0dXJuIGZhbHNlOyB9CiAgICAgdmlydHVhbCBib29sIGlzU2VhcmNoRmllbGRDYW5j
ZWxCdXR0b25FbGVtZW50KCkgY29uc3QgeyByZXR1cm4gZmFsc2U7IH0KIAotICAgIHZpcnR1YWwg
Ym9vbCBjYW5Db250YWluUmFuZ2VFbmRQb2ludCgpIGNvbnN0IG92ZXJyaWRlIHsgcmV0dXJuIHRy
dWU7IH0KKyAgICB2aXJ0dWFsIGJvb2wgY2FuQ29udGFpblJhbmdlRW5kUG9pbnQoKSBjb25zdCBv
dmVycmlkZTsKIAogICAgIC8vIFVzZWQgZm9yIGRpc2FibGVkIGZvcm0gZWxlbWVudHM7IGlmIHRy
dWUsIHByZXZlbnRzIG1vdXNlIGV2ZW50cyBmcm9tIGJlaW5nIGRpc3BhdGNoZWQKICAgICAvLyB0
byBldmVudCBsaXN0ZW5lcnMsIGFuZCBwcmV2ZW50cyBET01BY3RpdmF0ZSBldmVudHMgZnJvbSBi
ZWluZyBzZW50IGF0IGFsbC4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2RvbS9Qb3NpdGlv
bi5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9kb20vUG9zaXRpb24uY3BwCmluZGV4IGM1N2M2Zjc2NDJm
NjkyZTA4NGZhZTVlZGQ1ZWYxODFmZDNkNTg1NDQuLjNhZDhlZGFlN2Q5ZjNlOThiYzNmYmRjYWZi
YTRkMzhlMmRmZDNkNmMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2RvbS9Qb3NpdGlvbi5j
cHAKKysrIGIvU291cmNlL1dlYkNvcmUvZG9tL1Bvc2l0aW9uLmNwcApAQCAtMjI0LDYgKzIyNCw3
IEBAIFBvc2l0aW9uIFBvc2l0aW9uOjpwYXJlbnRBbmNob3JlZEVxdWl2YWxlbnQoKSBjb25zdAog
ICAgICAgICAgICAgcmV0dXJuIHBvc2l0aW9uSW5QYXJlbnRCZWZvcmVOb2RlKG1fYW5jaG9yTm9k
ZS5nZXQoKSk7CiAgICAgICAgIHJldHVybiBQb3NpdGlvbihtX2FuY2hvck5vZGUuZ2V0KCksIDAs
IFBvc2l0aW9uSXNPZmZzZXRJbkFuY2hvcik7CiAgICAgfQorCiAgICAgaWYgKCFtX2FuY2hvck5v
ZGUtPm9mZnNldEluQ2hhcmFjdGVycygpCiAgICAgICAgICYmIChtX2FuY2hvclR5cGUgPT0gUG9z
aXRpb25Jc0FmdGVyQW5jaG9yIHx8IG1fYW5jaG9yVHlwZSA9PSBQb3NpdGlvbklzQWZ0ZXJDaGls
ZHJlbiB8fCBzdGF0aWNfY2FzdDx1bnNpZ25lZD4obV9vZmZzZXQpID09IG1fYW5jaG9yTm9kZS0+
Y2hpbGROb2RlQ291bnQoKSkKICAgICAgICAgJiYgKGVkaXRpbmdJZ25vcmVzQ29udGVudChtX2Fu
Y2hvck5vZGUuZ2V0KCkpIHx8IGlzUmVuZGVyZWRUYWJsZShtX2FuY2hvck5vZGUuZ2V0KCkpKQpA
QCAtOTM1LDkgKzkzNiw2IEBAIGJvb2wgUG9zaXRpb246OmlzQ2FuZGlkYXRlKCkgY29uc3QKICAg
ICBpZiAobV9hbmNob3JOb2RlLT5oYXNUYWdOYW1lKGh0bWxUYWcpKQogICAgICAgICByZXR1cm4g
ZmFsc2U7CiAgICAgICAgIAotICAgIGlmIChpc1JlbmRlcmVyUmVwbGFjZWRFbGVtZW50KHJlbmRl
cmVyKSkKLSAgICAgICAgcmV0dXJuICFub2RlSXNVc2VyU2VsZWN0Tm9uZShkZXByZWNhdGVkTm9k
ZSgpKSAmJiBhdEZpcnN0RWRpdGluZ1Bvc2l0aW9uRm9yTm9kZSgpOwotCiAgICAgaWYgKHJlbmRl
cmVyLT5pc1JlbmRlckJsb2NrRmxvdygpKSB7CiAgICAgICAgIFJlbmRlckJsb2NrRmxvdyYgYmxv
Y2sgPSB0b1JlbmRlckJsb2NrRmxvdygqcmVuZGVyZXIpOwogICAgICAgICBpZiAoYmxvY2subG9n
aWNhbEhlaWdodCgpIHx8IG1fYW5jaG9yTm9kZS0+aGFzVGFnTmFtZShib2R5VGFnKSkgewpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvZG9tL1JhbmdlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2Rv
bS9SYW5nZS5jcHAKaW5kZXggNGZlNzE5ZTkzOTBhZTlhOTlkMzdhOGNhMzVjODkwYzVlYzMzYzk1
NS4uYWIxZjI0MGNlNzk1ZmVmN2ZkODAyMjAzMWM1YmZmM2RkOTRkMTI0NSAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvZG9tL1JhbmdlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9kb20vUmFu
Z2UuY3BwCkBAIC0xNTcwLDEwICsxNTcwLDYgQEAgTm9kZSogUmFuZ2U6OmZpcnN0Tm9kZSgpIGNv
bnN0CiAgICAgICAgIHJldHVybiAwOwogICAgIGlmIChtX3N0YXJ0LmNvbnRhaW5lcigpLT5vZmZz
ZXRJbkNoYXJhY3RlcnMoKSkKICAgICAgICAgcmV0dXJuIG1fc3RhcnQuY29udGFpbmVyKCk7Ci0g
ICAgLy8gRklYTUU6IEEgcmVuZGVyZXItYmFzZWQgcnVsZSBpcyBjb21wbGV0ZWx5IG91dCBvZiBw
bGFjZSBoZXJlLgotICAgIC8vIEZvciBvbmUgdGhpbmcsIHRoZSByZW5kZXJlciBjb3VsZCBiZSBv
dXQgb2YgZGF0ZSBpZiB0aGUgRE9NIHdhcyByZWNlbnRseSBjaGFuZ2VkLgotICAgIGlmIChpc1Jl
bmRlcmVyUmVwbGFjZWRFbGVtZW50KG1fc3RhcnQuY29udGFpbmVyKCktPnJlbmRlcmVyKCkpKQot
ICAgICAgICByZXR1cm4gbV9zdGFydC5jb250YWluZXIoKTsKICAgICBpZiAoTm9kZSogY2hpbGQg
PSBtX3N0YXJ0LmNvbnRhaW5lcigpLT5jaGlsZE5vZGUobV9zdGFydC5vZmZzZXQoKSkpCiAgICAg
ICAgIHJldHVybiBjaGlsZDsKICAgICBpZiAoIW1fc3RhcnQub2Zmc2V0KCkpCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9lZGl0aW5nL1RleHRJdGVyYXRvci5jcHAgYi9Tb3VyY2UvV2ViQ29y
ZS9lZGl0aW5nL1RleHRJdGVyYXRvci5jcHAKaW5kZXggN2U5NjhiYTkwNmFjYjk3MzEyM2M0YWFi
YTAyZTJkMTZiN2EzMzQzNi4uYTUxNDNkZWYxOTliOTVlZTQyNmNiZDAxMjBlOWZmYzI2MGY0MjEy
ZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvZWRpdGluZy9UZXh0SXRlcmF0b3IuY3BwCisr
KyBiL1NvdXJjZS9XZWJDb3JlL2VkaXRpbmcvVGV4dEl0ZXJhdG9yLmNwcApAQCAtMjQyLDYgKzI0
Miw4IEBAIHN0YXRpYyB2b2lkIHNldFVwRnVsbHlDbGlwcGVkU3RhY2soQml0U3RhY2smIHN0YWNr
LCBOb2RlJiBub2RlKQogICAgIEFTU0VSVChzdGFjay5zaXplKCkgPT0gMSArIGRlcHRoQ3Jvc3Np
bmdTaGFkb3dCb3VuZGFyaWVzKG5vZGUpKTsKIH0KIAorLy8gRklYTUU6IGVkaXRpbmdJZ25vcmVz
Q29udGVudCBhbmQgaXNSZW5kZXJlclJlcGxhY2VkRWxlbWVudCB0cnkgdG8gZG8gdGhlIHNhbWUg
am9iLgorLy8gSXQncyBub3QgZ29vZCB0byBoYXZlIGJvdGggb2YgdGhlbS4KIGJvb2wgaXNSZW5k
ZXJlclJlcGxhY2VkRWxlbWVudChSZW5kZXJPYmplY3QqIHJlbmRlcmVyKQogewogICAgIGlmICgh
cmVuZGVyZXIpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS90ZXN0aW5nL0ludGVybmFscy5j
cHAgYi9Tb3VyY2UvV2ViQ29yZS90ZXN0aW5nL0ludGVybmFscy5jcHAKaW5kZXggZjc5NzM1OGYx
MmIyNTRkN2M1MGQzYTA3MDQ2NTdjYTZlMTg2NDM3My4uYjcwZGEzZTI3MjBkYWEyMGFlZDNhMDM1
MDAwNTM4MWFjNTQ3ZTA2OSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvdGVzdGluZy9JbnRl
cm5hbHMuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3Rlc3RpbmcvSW50ZXJuYWxzLmNwcApAQCAt
MTQzNSw3ICsxNDM1LDcgQEAgdW5zaWduZWQgSW50ZXJuYWxzOjpjb3VudE1hdGNoZXNGb3JUZXh0
KGNvbnN0IFN0cmluZyYgdGV4dCwgdW5zaWduZWQgZmluZE9wdGlvbnMKICAgICAgICAgcmV0dXJu
IDA7CiAKICAgICBib29sIG1hcmsgPSBtYXJrTWF0Y2hlcyA9PSAibWFyayI7Ci0gICAgcmV0dXJu
IGRvY3VtZW50LT5mcmFtZSgpLT5lZGl0b3IoKS5jb3VudE1hdGNoZXNGb3JUZXh0KHRleHQsIG51
bGxwdHIsIGZpbmRPcHRpb25zLCBzdGQ6Om51bWVyaWNfbGltaXRzPHVuc2lnbmVkPjo6bWF4KCks
IG1hcmssIG51bGxwdHIpOworICAgIHJldHVybiBkb2N1bWVudC0+ZnJhbWUoKS0+ZWRpdG9yKCku
Y291bnRNYXRjaGVzRm9yVGV4dCh0ZXh0LCBudWxscHRyLCBmaW5kT3B0aW9ucywgMTAwMCwgbWFy
aywgbnVsbHB0cik7CiB9CiAKIGNvbnN0IFByb2ZpbGVzQXJyYXkmIEludGVybmFsczo6Y29uc29s
ZVByb2ZpbGVzKCkgY29uc3QKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xh
eW91dFRlc3RzL0NoYW5nZUxvZwppbmRleCA5NjBlNzljZGU5Njk3ZGZhYmJiYjc1ZGJmYmQxNGU5
Njc5M2E5YTdlLi43NmMxNWNjYWJjZjFjZjZlZTEyYmZkZGUwZDdmODBmNjQzMmQwMTA2IDEwMDY0
NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9n
CkBAIC0xLDMgKzEsMTYgQEAKKzIwMTQtMDQtMTMgIERhcmluIEFkbGVyICA8ZGFyaW5AYXBwbGUu
Y29tPgorCisgICAgICAgIFJFR1JFU1NJT04gKHIxNTg2MTcpOiBGaW5kIG9uIFBhZ2UgY2FuIGdl
dCBzdHVjayBpbiBhIGxvb3Agd2hlbiB0aGUgc2VhcmNoIHN0cmluZyBvY2N1cnMgaW4gYW4gPGlu
cHV0PiBpbiBhIDxmaWVsZHNldD4KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hv
d19idWcuY2dpP2lkPTEyNjMyMgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEp
LgorCisgICAgICAgICogZWRpdGluZy90ZXh0LWl0ZXJhdG9yL2NvdW50LW1hdGNoZXMtaW4tZm9y
bS1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIGVkaXRpbmcvdGV4dC1pdGVyYXRvci9j
b3VudC1tYXRjaGVzLWluLWZvcm0uaHRtbDogQWRkZWQuCisKKyAgICAgICAgKiBmYXN0L3RleHQv
d2luZG93LWZpbmQuaHRtbDogVHdlYWtlZCB0aGUgdGVzdCBhIGJpdCwgbWFraW5nIGl0IGEgbGl0
dGxlIGVhc2llciB0bworICAgICAgICBzZWUgaWYgdGhlIHRlc3QgaGFzbid0IGV2ZW4gcnVuLgor
CiAyMDE0LTA0LTA4ICBPbGl2ZXIgSHVudCAgPG9saXZlckBhcHBsZS5jb20+CiAKICAgICAgICAg
UmV3cml0ZSBGdW5jdGlvbi5iaW5kIGFzIGEgYnVpbHRpbgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVz
dHMvZWRpdGluZy90ZXh0LWl0ZXJhdG9yL2NvdW50LW1hdGNoZXMtaW4tZm9ybS1leHBlY3RlZC50
eHQgYi9MYXlvdXRUZXN0cy9lZGl0aW5nL3RleHQtaXRlcmF0b3IvY291bnQtbWF0Y2hlcy1pbi1m
b3JtLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4yZTAzYzRhMDQ5ODk3MzAyNWFkYTBlOWNmZGU0
MTc1MDg0M2E0Nzg5Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZWRpdGluZy90ZXh0
LWl0ZXJhdG9yL2NvdW50LW1hdGNoZXMtaW4tZm9ybS1leHBlY3RlZC50eHQKQEAgLTAsMCArMSw1
IEBACitQQVNTIGludGVybmFscy5jb3VudE1hdGNoZXNGb3JUZXh0KCdydWxlJywgMjMsICcnKSBp
cyAxCitQQVNTIHN1Y2Nlc3NmdWxseVBhcnNlZCBpcyB0cnVlCisKK1RFU1QgQ09NUExFVEUKKwpk
aWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZWRpdGluZy90ZXh0LWl0ZXJhdG9yL2NvdW50LW1hdGNo
ZXMtaW4tZm9ybS5odG1sIGIvTGF5b3V0VGVzdHMvZWRpdGluZy90ZXh0LWl0ZXJhdG9yL2NvdW50
LW1hdGNoZXMtaW4tZm9ybS5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjI1YWVhZGM0YmQ2ODlkNDRlZjQwNzM2
MzE3ZDA2MDcxMTBiNGRiMTYKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9lZGl0aW5n
L3RleHQtaXRlcmF0b3IvY291bnQtbWF0Y2hlcy1pbi1mb3JtLmh0bWwKQEAgLTAsMCArMSw4IEBA
Cis8aGVhZD4KKzxzY3JpcHQgc3JjPSIuLi8uLi9yZXNvdXJjZXMvanMtdGVzdC1wcmUuanMiPjwv
c2NyaXB0PgorPGJvZHk+Cis8ZmllbGRzZXQ+PGlucHV0IHZhbHVlPSJydWxlIj48L2ZpZWxkc2V0
PgorPHNjcmlwdD4KK3Nob3VsZEJlKCJpbnRlcm5hbHMuY291bnRNYXRjaGVzRm9yVGV4dCgncnVs
ZScsIDIzLCAnJykiLCAiMSIpOworPC9zY3JpcHQ+Cis8c2NyaXB0IHNyYz0iLi4vLi4vcmVzb3Vy
Y2VzL2pzLXRlc3QtcG9zdC5qcyI+PC9zY3JpcHQ+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9m
YXN0L3RleHQvd2luZG93LWZpbmQuaHRtbCBiL0xheW91dFRlc3RzL2Zhc3QvdGV4dC93aW5kb3ct
ZmluZC5odG1sCmluZGV4IDA0ZDNiMjMwOThmMzEzODkzNDA0ZGRhNDJhZWE4MmI3MDkyYjUyOTMu
LmY0NTUxZDIyODgwNGVhMTFlM2ZjZGRjZGRiMjU0NTkwYWEyZDFhMmQgMTAwNjQ0Ci0tLSBhL0xh
eW91dFRlc3RzL2Zhc3QvdGV4dC93aW5kb3ctZmluZC5odG1sCisrKyBiL0xheW91dFRlc3RzL2Zh
c3QvdGV4dC93aW5kb3ctZmluZC5odG1sCkBAIC0xLDUwICsxLDQ1IEBACiA8aHRtbD4KIDxoZWFk
PgogPHNjcmlwdD4KLWlmICh3aW5kb3cudGVzdFJ1bm5lcikgewotICB0ZXN0UnVubmVyLmR1bXBB
c1RleHQoKTsKLSAgdGVzdFJ1bm5lci53YWl0VW50aWxEb25lKCk7Ci19CisKK2lmICh3aW5kb3cu
dGVzdFJ1bm5lcikKKyAgICB0ZXN0UnVubmVyLmR1bXBBc1RleHQoKTsKIAogZnVuY3Rpb24gZmFp
bChzKSB7Ci0gIGRvY3VtZW50LmJvZHkuaW5uZXJIVE1MID0gIkZBSUw6ICIgKyBzOworICAgIGRv
Y3VtZW50LmJvZHkuaW5uZXJIVE1MID0gIkZBSUw6ICIgKyBzOwogfQogCiBmdW5jdGlvbiBydW5U
ZXN0KCkgewotICAvLyBOZWVkIHRvIGZvcmNlIGxheW91dCBmb3Igd2luZG93LmZpbmQoKSB0byBv
cGVyYXRlIGNvcnJlY3RseS4KLSAgdmFyIGZvcmNlTGF5b3V0ID0gZG9jdW1lbnQuYm9keS5vZmZz
ZXRIZWlnaHQ7Ci0gIGlmICh3aW5kb3cuZmluZCgnbm9uc2Vuc2UnKSkgZmFpbCgnZm91bmQ6IG5v
bnNlbnNlJyk7Ci0gIC8vIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD01
MzY1NCAtLSBmYWlsdXJlIHdoZW4gZmxpcHBpbmcKLSAgLy8gY2FzZSBzZW5zaXRpdml0eSBiYWNr
LXRvLWJhY2suCi0gIGlmICh3aW5kb3cuZmluZCgnbm9uc2Vuc2UnLCB0cnVlKSkgZmFpbCgnZm91
bmQ6IG5vbnNlbnNlJyk7Ci0gIGlmICh3aW5kb3cuZmluZCgnbm9uc2Vuc2UnLCBmYWxzZSkpIGZh
aWwoJ2ZvdW5kOiBub25zZW5zZScpOwotICBpZiAoIXdpbmRvdy5maW5kKCdmb3InKSkgZmFpbCgn
bm90IGZvdW5kOiBmb3InKTsKLSAgaWYgKHdpbmRvdy5maW5kKCdmb3InKSkgZmFpbCgnZm91bmQ6
IGZvcicpOwotICAvLyBHbyBiYWNrd2FyZHMuCi0gIGlmICghd2luZG93LmZpbmQoJ3Rlc3QnLCB0
cnVlLCB0cnVlLCBmYWxzZSkpIGZhaWwoJ25vdCBmb3VuZDogdGVzdCcpOwotICBpZiAod2luZG93
LmZpbmQoJ2ZvcicsIHRydWUsIHRydWUsIGZhbHNlKSkgZmFpbCgnZm91bmQ6IGZvcicpOwotICAv
LyBCYWNrd2FyZHMgYW5kIGNhc2Ugc2Vuc2l0aXZpdHkuCi0gIGlmICh3aW5kb3cuZmluZCgndGhp
cycsIHRydWUsIHRydWUsIGZhbHNlKSkgZmFpbCgnZm91bmQ6IHRoaXMnKTsKLSAgaWYgKCF3aW5k
b3cuZmluZCgnVGhpcycsIHRydWUsIHRydWUsIGZhbHNlKSkgZmFpbCgnbm90IGZvdW5kOiBUaGlz
Jyk7Ci0gIC8vIFdyYXAtYXJvdW5kIGZvcndhcmRzLgotICBpZiAoIXdpbmRvdy5maW5kKCdmb3In
LCB0cnVlLCBmYWxzZSwgdHJ1ZSkpIGZhaWwoJ25vdCBmb3VuZDogZm9yJyk7Ci0gIGlmICghd2lu
ZG93LmZpbmQoJ2ZvcicsIHRydWUsIGZhbHNlLCB0cnVlKSkgZmFpbCgnbm90IGZvdW5kOiBmb3In
KTsKLSAgLy8gV3JhcC1hcm91bmQgYmFja3dhcmRzLgotICBpZiAoIXdpbmRvdy5maW5kKCdmb3In
LCB0cnVlLCB0cnVlLCB0cnVlKSkgZmFpbCgnbm90IGZvdW5kOiBmb3InKTsKLSAgaWYgKCF3aW5k
b3cuZmluZCgnZm9yJywgdHJ1ZSwgdHJ1ZSwgdHJ1ZSkpIGZhaWwoJ25vdCBmb3VuZDogZm9yJyk7
Ci0gIC8vIENhc2Ugc2Vuc2l0aXZpdHksIGZvcndhcmRzLgotICBpZiAoIXdpbmRvdy5maW5kKCdm
b3InLCB0cnVlLCBmYWxzZSwgdHJ1ZSkpIGZhaWwoJ25vdCBmb3VuZDogZm9yJyk7Ci0gIGlmICgh
d2luZG93LmZpbmQoJ2ZPUicsIGZhbHNlLCBmYWxzZSwgdHJ1ZSkpIGZhaWwoJ25vdCBmb3VuZDog
Zm9yJyk7Ci0gIGlmICghd2luZG93LmZpbmQoJ2ZvcicsIGZhbHNlLCBmYWxzZSwgdHJ1ZSkpIGZh
aWwoJ25vdCBmb3VuZDogZm9yJyk7Ci0gIGlmICghd2luZG93LmZpbmQoJ2ZvcicsIHRydWUsIGZh
bHNlLCB0cnVlKSkgZmFpbCgnbm90IGZvdW5kOiBmb3InKTsKLSAgaWYgKHdpbmRvdy5maW5kKCdG
T1InLCB0cnVlLCBmYWxzZSwgdHJ1ZSkpIGZhaWwoJ2ZvdW5kOiBGT1InKTsKKyAgICBpZiAod2lu
ZG93LmZpbmQoJ25vbnNlbnNlJykpIGZhaWwoJ2ZvdW5kOiBub25zZW5zZScpOworICAgIGlmICh3
aW5kb3cuZmluZCgnbm9uc2Vuc2UnLCB0cnVlKSkgZmFpbCgnZm91bmQ6IG5vbnNlbnNlJyk7Cisg
ICAgaWYgKHdpbmRvdy5maW5kKCdub25zZW5zZScsIGZhbHNlKSkgZmFpbCgnZm91bmQ6IG5vbnNl
bnNlJyk7CisgICAgaWYgKCF3aW5kb3cuZmluZCgnZm9yJykpIGZhaWwoJ25vdCBmb3VuZDogZm9y
Jyk7CisgICAgaWYgKHdpbmRvdy5maW5kKCdmb3InKSkgZmFpbCgnZm91bmQ6IGZvcicpOworICAg
IC8vIEdvIGJhY2t3YXJkcy4KKyAgICBpZiAoIXdpbmRvdy5maW5kKCd0ZXN0JywgdHJ1ZSwgdHJ1
ZSwgZmFsc2UpKSBmYWlsKCdub3QgZm91bmQ6IHRlc3QnKTsKKyAgICBpZiAod2luZG93LmZpbmQo
J2ZvcicsIHRydWUsIHRydWUsIGZhbHNlKSkgZmFpbCgnZm91bmQ6IGZvcicpOworICAgIC8vIEJh
Y2t3YXJkcyBhbmQgY2FzZSBzZW5zaXRpdml0eS4KKyAgICBpZiAod2luZG93LmZpbmQoJ3RoaXMn
LCB0cnVlLCB0cnVlLCBmYWxzZSkpIGZhaWwoJ2ZvdW5kOiB0aGlzJyk7CisgICAgaWYgKCF3aW5k
b3cuZmluZCgnVGhpcycsIHRydWUsIHRydWUsIGZhbHNlKSkgZmFpbCgnbm90IGZvdW5kOiBUaGlz
Jyk7CisgICAgLy8gV3JhcC1hcm91bmQgZm9yd2FyZHMuCisgICAgaWYgKCF3aW5kb3cuZmluZCgn
Zm9yJywgdHJ1ZSwgZmFsc2UsIHRydWUpKSBmYWlsKCdub3QgZm91bmQ6IGZvcicpOworICAgIGlm
ICghd2luZG93LmZpbmQoJ2ZvcicsIHRydWUsIGZhbHNlLCB0cnVlKSkgZmFpbCgnbm90IGZvdW5k
OiBmb3InKTsKKyAgICAvLyBXcmFwLWFyb3VuZCBiYWNrd2FyZHMuCisgICAgaWYgKCF3aW5kb3cu
ZmluZCgnZm9yJywgdHJ1ZSwgdHJ1ZSwgdHJ1ZSkpIGZhaWwoJ25vdCBmb3VuZDogZm9yJyk7Cisg
ICAgaWYgKCF3aW5kb3cuZmluZCgnZm9yJywgdHJ1ZSwgdHJ1ZSwgdHJ1ZSkpIGZhaWwoJ25vdCBm
b3VuZDogZm9yJyk7CisgICAgLy8gQ2FzZSBzZW5zaXRpdml0eSwgZm9yd2FyZHMuCisgICAgaWYg
KCF3aW5kb3cuZmluZCgnZm9yJywgdHJ1ZSwgZmFsc2UsIHRydWUpKSBmYWlsKCdub3QgZm91bmQ6
IGZvcicpOworICAgIGlmICghd2luZG93LmZpbmQoJ2ZPUicsIGZhbHNlLCBmYWxzZSwgdHJ1ZSkp
IGZhaWwoJ25vdCBmb3VuZDogZm9yJyk7CisgICAgaWYgKCF3aW5kb3cuZmluZCgnZm9yJywgZmFs
c2UsIGZhbHNlLCB0cnVlKSkgZmFpbCgnbm90IGZvdW5kOiBmb3InKTsKKyAgICBpZiAoIXdpbmRv
dy5maW5kKCdmb3InLCB0cnVlLCBmYWxzZSwgdHJ1ZSkpIGZhaWwoJ25vdCBmb3VuZDogZm9yJyk7
CisgICAgaWYgKHdpbmRvdy5maW5kKCdGT1InLCB0cnVlLCBmYWxzZSwgdHJ1ZSkpIGZhaWwoJ2Zv
dW5kOiBGT1InKTsKIAotICBpZiAod2luZG93LnRlc3RSdW5uZXIpCi0gICAgdGVzdFJ1bm5lci5u
b3RpZnlEb25lKCk7CisgICAgZG9jdW1lbnQuYm9keS5pbm5lckhUTUwgPSAiVGhpcyBpcyBhIHRl
c3QgZm9yIHdpbmRvdy5maW5kKCkuIFNVQ0NFU1MhIjsKIH0KKwogPC9zY3JpcHQ+CiA8L2hlYWQ+
CiA8Ym9keSBvbmxvYWQ9InJ1blRlc3QoKSI+Ci1UaGlzIGlzIGEgdGVzdCBmb3Igd2luZG93LmZp
bmQoKS4gU1VDQ0VTUyEKK1RoaXMgaXMgYSB0ZXN0IGZvciB3aW5kb3cuZmluZCgpOyB0aGUgdGVz
dCBoYXMgbm90IHJ1biB5ZXQuCiA8L2JvZHk+CiA8L2h0bWw+Cg==
</data>

          </attachment>
      

    </bug>

</bugzilla>