<?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>134897</bug_id>
          
          <creation_ts>2014-07-14 13:21:54 -0700</creation_ts>
          <short_desc>Copying and pasting trivial H2 content causes a crash in firstPositionInNode</short_desc>
          <delta_ts>2016-06-14 10:19:21 -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>Mac (Intel)</rep_platform>
          <op_sys>OS X 10.9</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          <see_also>https://bugs.webkit.org/show_bug.cgi?id=158724</see_also>
          <bug_file_loc>http://jsfiddle.net/qhLAN/</bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Steven Roussey">sroussey</reporter>
          <assigned_to name="Myles C. Maxfield">mmaxfield</assigned_to>
          <cc>ap</cc>
    
    <cc>ddkilzer</cc>
    
    <cc>dino</cc>
    
    <cc>enrica</cc>
    
    <cc>jonlee</cc>
    
    <cc>mmaxfield</cc>
    
    <cc>rniwa</cc>
    
    <cc>simon.fraser</cc>
    
    <cc>thorton</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1022295</commentid>
    <comment_count>0</comment_count>
    <who name="Steven Roussey">sroussey</who>
    <bug_when>2014-07-14 13:21:54 -0700</bug_when>
    <thetext>Copy from one content editable and paste in another results in a crash. Seems like a repeat of a bug fixed in Chrome last year. Sample site and instructions can be found here:

http://jsfiddle.net/qhLAN/</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1022296</commentid>
    <comment_count>1</comment_count>
    <who name="Steven Roussey">sroussey</who>
    <bug_when>2014-07-14 13:23:33 -0700</bug_when>
    <thetext>For reference:

https://code.google.com/p/chromium/issues/detail?id=245773</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1022652</commentid>
    <comment_count>2</comment_count>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2014-07-15 20:54:59 -0700</bug_when>
    <thetext>I can reproduce with current nightly.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1022913</commentid>
    <comment_count>3</comment_count>
      <attachid>235043</attachid>
    <who name="Myles C. Maxfield">mmaxfield</who>
    <bug_when>2014-07-16 18:46:42 -0700</bug_when>
    <thetext>Created attachment 235043
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1022916</commentid>
    <comment_count>4</comment_count>
      <attachid>235043</attachid>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2014-07-16 18:56:27 -0700</bug_when>
    <thetext>Comment on attachment 235043
Patch

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

&gt; LayoutTests/editing/pasteboard/heading-crash.html:1
&gt; +&lt;html&gt;

Missing DOCTYPE.

&gt; LayoutTests/editing/pasteboard/heading-crash.html:3
&gt; +&lt;script src=&quot;../../resources/js-test-pre.js&quot;&gt;&lt;/script&gt;

Why do we need js-test-pre in this test?

&gt; LayoutTests/editing/pasteboard/heading-crash.html:8
&gt; +    &lt;h2 id=&quot;source&quot; contenteditable=&quot;true&quot;&gt;Copy This Text&lt;/h2&gt;
&gt; +    &lt;h2 id=&quot;destination&quot; contenteditable=&quot;true&quot;&gt;Paste Here&lt;/h2&gt;

We should dump the result using dump-as-markup.js so that we can see the pasted markup.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1022917</commentid>
    <comment_count>5</comment_count>
      <attachid>235043</attachid>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2014-07-16 19:02:25 -0700</bug_when>
    <thetext>Comment on attachment 235043
Patch

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

&gt; Source/WebCore/editing/ReplaceSelectionCommand.cpp:642
&gt; +            if (headerElement &amp;&amp; headerElement-&gt;parentNode() &amp;&amp; headerElement-&gt;parentNode()-&gt;hasEditableStyle())

Also, we should probably call isContentRichlyEditable instead.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1022920</commentid>
    <comment_count>6</comment_count>
    <who name="Myles C. Maxfield">mmaxfield</who>
    <bug_when>2014-07-16 19:06:45 -0700</bug_when>
    <thetext>I wanted to match the assert in InsertNodeBeforeCommand::InsertNodeBeforeCommand(). Should I update that function too, Ryosuke?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1022925</commentid>
    <comment_count>7</comment_count>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2014-07-16 19:31:59 -0700</bug_when>
    <thetext>(In reply to comment #6)
&gt; I wanted to match the assert in InsertNodeBeforeCommand::InsertNodeBeforeCommand(). Should I update that function too, Ryosuke?

isContentRichlyEditable updates whereas hasEditableStyle doesn&apos;t so we should continue to use hasEditableStyle in the assertion.  i.e. no code change.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1023034</commentid>
    <comment_count>8</comment_count>
      <attachid>235043</attachid>
    <who name="Myles C. Maxfield">mmaxfield</who>
    <bug_when>2014-07-17 10:27:15 -0700</bug_when>
    <thetext>Comment on attachment 235043
Patch

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

&gt;&gt; Source/WebCore/editing/ReplaceSelectionCommand.cpp:642
&gt;&gt; +            if (headerElement &amp;&amp; headerElement-&gt;parentNode() &amp;&amp; headerElement-&gt;parentNode()-&gt;hasEditableStyle())
&gt; 
&gt; Also, we should probably call isContentRichlyEditable instead.

Done.

&gt;&gt; LayoutTests/editing/pasteboard/heading-crash.html:1
&gt;&gt; +&lt;html&gt;
&gt; 
&gt; Missing DOCTYPE.

Done.

&gt;&gt; LayoutTests/editing/pasteboard/heading-crash.html:3
&gt;&gt; +&lt;script src=&quot;../../resources/js-test-pre.js&quot;&gt;&lt;/script&gt;
&gt; 
&gt; Why do we need js-test-pre in this test?

for description() and finishJSTest() (in js-test-post.js)

&gt;&gt; LayoutTests/editing/pasteboard/heading-crash.html:8
&gt;&gt; +    &lt;h2 id=&quot;destination&quot; contenteditable=&quot;true&quot;&gt;Paste Here&lt;/h2&gt;
&gt; 
&gt; We should dump the result using dump-as-markup.js so that we can see the pasted markup.

Done.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1023035</commentid>
    <comment_count>9</comment_count>
      <attachid>235073</attachid>
    <who name="Myles C. Maxfield">mmaxfield</who>
    <bug_when>2014-07-17 10:28:27 -0700</bug_when>
    <thetext>Created attachment 235073
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1023061</commentid>
    <comment_count>10</comment_count>
      <attachid>235073</attachid>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2014-07-17 12:18:03 -0700</bug_when>
    <thetext>Comment on attachment 235073
Patch

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

&gt; LayoutTests/editing/pasteboard/heading-crash-expected.txt:6
&gt; +| &lt;h2&gt;
&gt; +|   id=&quot;source&quot;
&gt; +|   &quot;Copy This Text&lt;#selection-caret&gt;&quot;

This output is incorrect.  We should be stripping the inner h2.
Otherwise, we&apos;d create two h2s next to each other.

So the fix is incorrect.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1023070</commentid>
    <comment_count>11</comment_count>
      <attachid>235073</attachid>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2014-07-17 12:38:41 -0700</bug_when>
    <thetext>Comment on attachment 235073
Patch

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

&gt; Source/WebCore/editing/ReplaceSelectionCommand.cpp:643
&gt; +            if (headerElement &amp;&amp; headerElement-&gt;parentNode() &amp;&amp; headerElement-&gt;parentNode()-&gt;isContentRichlyEditable())
&gt;                  moveNodeOutOfAncestor(node, headerElement);

In the case where we&apos;re already inside a header element, we should probably convert the element into span.
See replaceElementWithSpanPreservingChildrenAndAttributes</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1024135</commentid>
    <comment_count>12</comment_count>
      <attachid>235333</attachid>
    <who name="Myles C. Maxfield">mmaxfield</who>
    <bug_when>2014-07-22 18:31:18 -0700</bug_when>
    <thetext>Created attachment 235333
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1024136</commentid>
    <comment_count>13</comment_count>
      <attachid>235333</attachid>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2014-07-22 18:35:00 -0700</bug_when>
    <thetext>Comment on attachment 235333
Patch

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

&gt; LayoutTests/editing/pasteboard/heading-crash.html:6
&gt; +&lt;head&gt;
&gt; +&lt;script src=&quot;../editing.js&quot;&gt;&lt;/script&gt;
&gt; +&lt;script src=&quot;../../resources/dump-as-markup.js&quot;&gt;&lt;/script&gt;
&gt; +&lt;/head&gt;

We don&apos;t need to put this in head.

&gt; LayoutTests/editing/pasteboard/heading-crash.html:12
&gt; +    &lt;h2 id=&quot;source&quot; contenteditable=&quot;true&quot;&gt;Copy This Text&lt;/h2&gt;
&gt; +    &lt;h2 id=&quot;destination&quot; contenteditable=&quot;true&quot;&gt;Paste Here&lt;/h2&gt;
&gt; +    &lt;script&gt;
&gt; +        if (window.testRunner)
&gt; +            testRunner.dumpAsText();

We don&apos;t normally indent test content like this.

&gt; LayoutTests/editing/pasteboard/heading-crash.html:21
&gt; +        var range = document.createRange();
&gt; +        source.focus();
&gt; +        range.selectNodeContents(source);
&gt; +        selection.removeAllRanges();
&gt; +        selection.addRange(range);

Why don&apos;t you just do document.execCommand(&apos;selectAll&apos;) instead?

&gt; LayoutTests/editing/pasteboard/heading-crash.html:27
&gt; +        selection.removeAllRanges();
&gt; +        range.selectNodeContents(destination);
&gt; +        selection.addRange(range);

Ditto.  destination.focus(); document.execCommand(&apos;selectAll&apos;).</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1024145</commentid>
    <comment_count>14</comment_count>
      <attachid>235333</attachid>
    <who name="Myles C. Maxfield">mmaxfield</who>
    <bug_when>2014-07-22 19:14:48 -0700</bug_when>
    <thetext>Comment on attachment 235333
Patch

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

&gt;&gt; LayoutTests/editing/pasteboard/heading-crash.html:6
&gt;&gt; +&lt;/head&gt;
&gt; 
&gt; We don&apos;t need to put this in head.

Done.

&gt;&gt; LayoutTests/editing/pasteboard/heading-crash.html:12
&gt;&gt; +            testRunner.dumpAsText();
&gt; 
&gt; We don&apos;t normally indent test content like this.

Done.

&gt;&gt; LayoutTests/editing/pasteboard/heading-crash.html:21
&gt;&gt; +        selection.addRange(range);
&gt; 
&gt; Why don&apos;t you just do document.execCommand(&apos;selectAll&apos;) instead?

Good idea. Done.

&gt;&gt; LayoutTests/editing/pasteboard/heading-crash.html:27
&gt;&gt; +        selection.addRange(range);
&gt; 
&gt; Ditto.  destination.focus(); document.execCommand(&apos;selectAll&apos;).

Done.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1024147</commentid>
    <comment_count>15</comment_count>
    <who name="Myles C. Maxfield">mmaxfield</who>
    <bug_when>2014-07-22 19:20:43 -0700</bug_when>
    <thetext>http://trac.webkit.org/changeset/171383</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1202223</commentid>
    <comment_count>16</comment_count>
    <who name="David Kilzer (:ddkilzer)">ddkilzer</who>
    <bug_when>2016-06-14 10:19:09 -0700</bug_when>
    <thetext>&lt;rdar://problem/15457831&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>235043</attachid>
            <date>2014-07-16 18:46:42 -0700</date>
            <delta_ts>2014-07-17 10:28:24 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-134897-20140716184626.patch</filename>
            <type>text/plain</type>
            <size>4833</size>
            <attacher name="Myles C. Maxfield">mmaxfield</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTcxMTUxCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZjQ5ZTIwMDI1YmE0MWMz
ODc1YWRkMGQyYmEyMzU4MjRlYTM1MTcyOS4uMWVkMzMzM2UzZjdiMTcyYmJmN2ZjNjQwNDJjYmM3
ZmI3MDFiMTg3OSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE5IEBACisyMDE0LTA3LTE2ICBNeWxl
cyBDLiBNYXhmaWVsZCAgPG1tYXhmaWVsZEBhcHBsZS5jb20+CisKKyAgICAgICAgQ29weWluZyBh
bmQgcGFzdGluZyB0cml2aWFsIEgyIGNvbnRlbnQgY2F1c2VzIGEgY3Jhc2ggaW4gZmlyc3RQb3Np
dGlvbkluTm9kZQorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/
aWQ9MTM0ODk3CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAg
ICAgUmVwbGFjZVNlbGVjdGlvbkNvbW1hbmQ6Om1ha2VJbnNlcnRlZENvbnRlbnRSb3VuZFRyaXBw
YWJsZVdpdGhIVE1MVHJlZUJ1aWxkZXIoKSBhdHRlbXB0cworICAgICAgICB0byBtb3ZlIHBhc3Rl
ZCBoZWFkaW5ncyBvdXQgb2YgZXhpc3RlZCBoZWFkaW5ncywgd2l0aCBvdXQgcmVnYXJkIHRvIGlm
IHRoZSBleGlzdGluZworICAgICAgICBoZWFkaW5nIGlzIHRoZSBjb250ZW50ZWRpdGFibGUgcm9v
dC4KKworICAgICAgICBUZXN0OiBlZGl0aW5nL3Bhc3RlYm9hcmQvaGVhZGluZy1jcmFzaC5odG1s
CisKKyAgICAgICAgKiBlZGl0aW5nL1JlcGxhY2VTZWxlY3Rpb25Db21tYW5kLmNwcDoKKyAgICAg
ICAgKFdlYkNvcmU6OlJlcGxhY2VTZWxlY3Rpb25Db21tYW5kOjptYWtlSW5zZXJ0ZWRDb250ZW50
Um91bmRUcmlwcGFibGVXaXRoSFRNTFRyZWVCdWlsZGVyKToKKwogMjAxNC0wNy0xNiAgSmVyIE5v
YmxlICA8amVyLm5vYmxlQGFwcGxlLmNvbT4KIAogICAgICAgICBbTVNFXSBodHRwL3Rlc3RzL21l
ZGlhL21lZGlhLXNvdXJjZS9tZWRpYXNvdXJjZS1idWZmZXJlZC5odG1sIGlzIGZsYWtleQpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvZWRpdGluZy9SZXBsYWNlU2VsZWN0aW9uQ29tbWFuZC5j
cHAgYi9Tb3VyY2UvV2ViQ29yZS9lZGl0aW5nL1JlcGxhY2VTZWxlY3Rpb25Db21tYW5kLmNwcApp
bmRleCA2YzA2MmI1NWE2MzY3ZmM5OTBkMDM4NTRhYjY5OTliODk4ZjMwODgxLi4wNGVjNTIzYmE2
ZWEyNWJjNTU0ZmIyNmI0OWQyMWRiNjQ1YjE0ZDgyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9lZGl0aW5nL1JlcGxhY2VTZWxlY3Rpb25Db21tYW5kLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9lZGl0aW5nL1JlcGxhY2VTZWxlY3Rpb25Db21tYW5kLmNwcApAQCAtNjM4LDcgKzYzOCw4IEBA
IHZvaWQgUmVwbGFjZVNlbGVjdGlvbkNvbW1hbmQ6Om1ha2VJbnNlcnRlZENvbnRlbnRSb3VuZFRy
aXBwYWJsZVdpdGhIVE1MVHJlZUJ1aWxkCiAgICAgICAgIH0KIAogICAgICAgICBpZiAoaXNIZWFk
ZXJFbGVtZW50KG5vZGUuZ2V0KCkpKSB7Ci0gICAgICAgICAgICBpZiAoYXV0byogaGVhZGVyRWxl
bWVudCA9IGhpZ2hlc3RFbmNsb3NpbmdOb2RlT2ZUeXBlKHBvc2l0aW9uSW5QYXJlbnRCZWZvcmVO
b2RlKG5vZGUuZ2V0KCkpLCBpc0hlYWRlckVsZW1lbnQpKQorICAgICAgICAgICAgYXV0byogaGVh
ZGVyRWxlbWVudCA9IGhpZ2hlc3RFbmNsb3NpbmdOb2RlT2ZUeXBlKHBvc2l0aW9uSW5QYXJlbnRC
ZWZvcmVOb2RlKG5vZGUuZ2V0KCkpLCBpc0hlYWRlckVsZW1lbnQpOworICAgICAgICAgICAgaWYg
KGhlYWRlckVsZW1lbnQgJiYgaGVhZGVyRWxlbWVudC0+cGFyZW50Tm9kZSgpICYmIGhlYWRlckVs
ZW1lbnQtPnBhcmVudE5vZGUoKS0+aGFzRWRpdGFibGVTdHlsZSgpKQogICAgICAgICAgICAgICAg
IG1vdmVOb2RlT3V0T2ZBbmNlc3Rvcihub2RlLCBoZWFkZXJFbGVtZW50KTsKICAgICAgICAgfQog
ICAgIH0KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0No
YW5nZUxvZwppbmRleCA5ZDlhMjg4NDdmNWFjMDBmYmZhYjQxY2Y2YTg1OGYwM2Q1M2MwOGIzLi43
MWEyNDk4ZGQxMWQ0ZmFmNjgwYWIwYjg2MGZjNDgzZGFhNDlmNDZhIDEwMDY0NAotLS0gYS9MYXlv
dXRUZXN0cy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEs
MTUgQEAKKzIwMTQtMDctMTYgIE15bGVzIEMuIE1heGZpZWxkICA8bW1heGZpZWxkQGFwcGxlLmNv
bT4KKworICAgICAgICBDb3B5aW5nIGFuZCBwYXN0aW5nIHRyaXZpYWwgSDIgY29udGVudCBjYXVz
ZXMgYSBjcmFzaCBpbiBmaXJzdFBvc2l0aW9uSW5Ob2RlCisgICAgICAgIGh0dHBzOi8vYnVncy53
ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMzQ4OTcKKworICAgICAgICBSZXZpZXdlZCBieSBO
T0JPRFkgKE9PUFMhKS4KKworICAgICAgICBDb3B5IGFuZCBwYXN0ZSB0ZXh0IGZyb20gb25lIGhl
YWRpbmcgdG8gYW5vdGhlci4gTWFrZSBzdXJlIHRoZXJlIGlzIG5vIGNyYXNoLgorCisgICAgICAg
ICogZWRpdGluZy9wYXN0ZWJvYXJkL2hlYWRpbmctY3Jhc2gtZXhwZWN0ZWQudHh0OiBBZGRlZC4K
KyAgICAgICAgKiBlZGl0aW5nL3Bhc3RlYm9hcmQvaGVhZGluZy1jcmFzaC5odG1sOiBBZGRlZC4K
KwogMjAxNC0wNy0xNiAgTWlrZSBXZXN0ICA8bWt3c3RAY2hyb21pdW0ub3JnPgogCiAgICAgICAg
IENTUDogRHJvcCAnc2NyaXB0LW5vbmNlJyBkaXJlY3RpdmUuCmRpZmYgLS1naXQgYS9MYXlvdXRU
ZXN0cy9lZGl0aW5nL3Bhc3RlYm9hcmQvaGVhZGluZy1jcmFzaC1leHBlY3RlZC50eHQgYi9MYXlv
dXRUZXN0cy9lZGl0aW5nL3Bhc3RlYm9hcmQvaGVhZGluZy1jcmFzaC1leHBlY3RlZC50eHQKbmV3
IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMC4uNDEwNDFmNGRkOGM4MjhlNWI2OTY2NTVhNTFhN2IxZGRlNzFiOTA0OAotLS0gL2Rl
di9udWxsCisrKyBiL0xheW91dFRlc3RzL2VkaXRpbmcvcGFzdGVib2FyZC9oZWFkaW5nLWNyYXNo
LWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDExIEBACitUaGUgZm9sbG93aW5nIHRlc3QgZG9lcyBh
IGNvcHkgYW5kIGEgcGFzdGUgZnJvbSBvbmUgaGVhZGluZyB0byBhbm90aGVyIGhlYWRpbmcuIFRo
ZSB0ZXN0IGlzIHN1Y2Nlc3NmdWwgaWYgdGhlcmUgaXMgbm8gY3Jhc2guCisKK09uIHN1Y2Nlc3Ms
IHlvdSB3aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJU
RVNUIENPTVBMRVRFIi4KKworCitQQVNTIHN1Y2Nlc3NmdWxseVBhcnNlZCBpcyB0cnVlCisKK1RF
U1QgQ09NUExFVEUKK0NvcHkgVGhpcyBUZXh0CisKK0NvcHkgVGhpcyBUZXh0CmRpZmYgLS1naXQg
YS9MYXlvdXRUZXN0cy9lZGl0aW5nL3Bhc3RlYm9hcmQvaGVhZGluZy1jcmFzaC5odG1sIGIvTGF5
b3V0VGVzdHMvZWRpdGluZy9wYXN0ZWJvYXJkL2hlYWRpbmctY3Jhc2guaHRtbApuZXcgZmlsZSBt
b2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
Li4yZTQ2ODg3Y2E4YWEzMjc0ODllYjQ4OWNiYjZhMjVlMzRmMTZkNmY2Ci0tLSAvZGV2L251bGwK
KysrIGIvTGF5b3V0VGVzdHMvZWRpdGluZy9wYXN0ZWJvYXJkL2hlYWRpbmctY3Jhc2guaHRtbApA
QCAtMCwwICsxLDMzIEBACis8aHRtbD4KKzxoZWFkPgorPHNjcmlwdCBzcmM9Ii4uLy4uL3Jlc291
cmNlcy9qcy10ZXN0LXByZS5qcyI+PC9zY3JpcHQ+Cis8c2NyaXB0IHNyYz0iLi4vZWRpdGluZy5q
cyI+PC9zY3JpcHQ+Cis8L2hlYWQ+Cis8Ym9keT4KKyAgICA8aDIgaWQ9InNvdXJjZSIgY29udGVu
dGVkaXRhYmxlPSJ0cnVlIj5Db3B5IFRoaXMgVGV4dDwvaDI+CisgICAgPGgyIGlkPSJkZXN0aW5h
dGlvbiIgY29udGVudGVkaXRhYmxlPSJ0cnVlIj5QYXN0ZSBIZXJlPC9oMj4KKyAgICA8c2NyaXB0
PgorICAgICAgICBpZiAod2luZG93LnRlc3RSdW5uZXIpCisgICAgICAgICAgICB0ZXN0UnVubmVy
LmR1bXBBc1RleHQoKTsKKworICAgICAgICBkZXNjcmlwdGlvbigiVGhlIGZvbGxvd2luZyB0ZXN0
IGRvZXMgYSBjb3B5IGFuZCBhIHBhc3RlIGZyb20gb25lIGhlYWRpbmcgdG8gYW5vdGhlciBoZWFk
aW5nLiBUaGUgdGVzdCBpcyBzdWNjZXNzZnVsIGlmIHRoZXJlIGlzIG5vIGNyYXNoLiIpOworCisg
ICAgICAgIHZhciBzb3VyY2UgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgic291cmNlIik7Cisg
ICAgICAgIHZhciBkZXN0aW5hdGlvbiA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJkZXN0aW5h
dGlvbiIpOworICAgICAgICB2YXIgc2VsZWN0aW9uID0gd2luZG93LmdldFNlbGVjdGlvbigpOwor
ICAgICAgICB2YXIgcmFuZ2UgPSBkb2N1bWVudC5jcmVhdGVSYW5nZSgpOworICAgICAgICBzb3Vy
Y2UuZm9jdXMoKTsKKyAgICAgICAgcmFuZ2Uuc2VsZWN0Tm9kZUNvbnRlbnRzKHNvdXJjZSk7Cisg
ICAgICAgIHNlbGVjdGlvbi5yZW1vdmVBbGxSYW5nZXMoKTsKKyAgICAgICAgc2VsZWN0aW9uLmFk
ZFJhbmdlKHJhbmdlKTsKKworICAgICAgICBjb3B5Q29tbWFuZCgpOworCisgICAgICAgIHNlbGVj
dGlvbi5yZW1vdmVBbGxSYW5nZXMoKTsKKyAgICAgICAgcmFuZ2Uuc2VsZWN0Tm9kZUNvbnRlbnRz
KGRlc3RpbmF0aW9uKTsKKyAgICAgICAgc2VsZWN0aW9uLmFkZFJhbmdlKHJhbmdlKTsKKworICAg
ICAgICBwYXN0ZUNvbW1hbmQoKTsKKyAgICA8L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSIuLi8uLi9y
ZXNvdXJjZXMvanMtdGVzdC1wb3N0LmpzIj48L3NjcmlwdD4KKzwvaHRtbD4K
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>235073</attachid>
            <date>2014-07-17 10:28:27 -0700</date>
            <delta_ts>2014-07-22 18:31:15 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-134897-20140717102811.patch</filename>
            <type>text/plain</type>
            <size>4818</size>
            <attacher name="Myles C. Maxfield">mmaxfield</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTcxMTUxCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZjQ5ZTIwMDI1YmE0MWMz
ODc1YWRkMGQyYmEyMzU4MjRlYTM1MTcyOS4uMWVkMzMzM2UzZjdiMTcyYmJmN2ZjNjQwNDJjYmM3
ZmI3MDFiMTg3OSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE5IEBACisyMDE0LTA3LTE2ICBNeWxl
cyBDLiBNYXhmaWVsZCAgPG1tYXhmaWVsZEBhcHBsZS5jb20+CisKKyAgICAgICAgQ29weWluZyBh
bmQgcGFzdGluZyB0cml2aWFsIEgyIGNvbnRlbnQgY2F1c2VzIGEgY3Jhc2ggaW4gZmlyc3RQb3Np
dGlvbkluTm9kZQorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/
aWQ9MTM0ODk3CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAg
ICAgUmVwbGFjZVNlbGVjdGlvbkNvbW1hbmQ6Om1ha2VJbnNlcnRlZENvbnRlbnRSb3VuZFRyaXBw
YWJsZVdpdGhIVE1MVHJlZUJ1aWxkZXIoKSBhdHRlbXB0cworICAgICAgICB0byBtb3ZlIHBhc3Rl
ZCBoZWFkaW5ncyBvdXQgb2YgZXhpc3RlZCBoZWFkaW5ncywgd2l0aCBvdXQgcmVnYXJkIHRvIGlm
IHRoZSBleGlzdGluZworICAgICAgICBoZWFkaW5nIGlzIHRoZSBjb250ZW50ZWRpdGFibGUgcm9v
dC4KKworICAgICAgICBUZXN0OiBlZGl0aW5nL3Bhc3RlYm9hcmQvaGVhZGluZy1jcmFzaC5odG1s
CisKKyAgICAgICAgKiBlZGl0aW5nL1JlcGxhY2VTZWxlY3Rpb25Db21tYW5kLmNwcDoKKyAgICAg
ICAgKFdlYkNvcmU6OlJlcGxhY2VTZWxlY3Rpb25Db21tYW5kOjptYWtlSW5zZXJ0ZWRDb250ZW50
Um91bmRUcmlwcGFibGVXaXRoSFRNTFRyZWVCdWlsZGVyKToKKwogMjAxNC0wNy0xNiAgSmVyIE5v
YmxlICA8amVyLm5vYmxlQGFwcGxlLmNvbT4KIAogICAgICAgICBbTVNFXSBodHRwL3Rlc3RzL21l
ZGlhL21lZGlhLXNvdXJjZS9tZWRpYXNvdXJjZS1idWZmZXJlZC5odG1sIGlzIGZsYWtleQpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvZWRpdGluZy9SZXBsYWNlU2VsZWN0aW9uQ29tbWFuZC5j
cHAgYi9Tb3VyY2UvV2ViQ29yZS9lZGl0aW5nL1JlcGxhY2VTZWxlY3Rpb25Db21tYW5kLmNwcApp
bmRleCA2YzA2MmI1NWE2MzY3ZmM5OTBkMDM4NTRhYjY5OTliODk4ZjMwODgxLi42NzVmOGY2NTRk
YmFhZjhlNDM5N2IzZDEyODU3Y2RlYmZiNGE4ZmJjIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9lZGl0aW5nL1JlcGxhY2VTZWxlY3Rpb25Db21tYW5kLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9lZGl0aW5nL1JlcGxhY2VTZWxlY3Rpb25Db21tYW5kLmNwcApAQCAtNjM4LDcgKzYzOCw4IEBA
IHZvaWQgUmVwbGFjZVNlbGVjdGlvbkNvbW1hbmQ6Om1ha2VJbnNlcnRlZENvbnRlbnRSb3VuZFRy
aXBwYWJsZVdpdGhIVE1MVHJlZUJ1aWxkCiAgICAgICAgIH0KIAogICAgICAgICBpZiAoaXNIZWFk
ZXJFbGVtZW50KG5vZGUuZ2V0KCkpKSB7Ci0gICAgICAgICAgICBpZiAoYXV0byogaGVhZGVyRWxl
bWVudCA9IGhpZ2hlc3RFbmNsb3NpbmdOb2RlT2ZUeXBlKHBvc2l0aW9uSW5QYXJlbnRCZWZvcmVO
b2RlKG5vZGUuZ2V0KCkpLCBpc0hlYWRlckVsZW1lbnQpKQorICAgICAgICAgICAgYXV0byogaGVh
ZGVyRWxlbWVudCA9IGhpZ2hlc3RFbmNsb3NpbmdOb2RlT2ZUeXBlKHBvc2l0aW9uSW5QYXJlbnRC
ZWZvcmVOb2RlKG5vZGUuZ2V0KCkpLCBpc0hlYWRlckVsZW1lbnQpOworICAgICAgICAgICAgaWYg
KGhlYWRlckVsZW1lbnQgJiYgaGVhZGVyRWxlbWVudC0+cGFyZW50Tm9kZSgpICYmIGhlYWRlckVs
ZW1lbnQtPnBhcmVudE5vZGUoKS0+aXNDb250ZW50UmljaGx5RWRpdGFibGUoKSkKICAgICAgICAg
ICAgICAgICBtb3ZlTm9kZU91dE9mQW5jZXN0b3Iobm9kZSwgaGVhZGVyRWxlbWVudCk7CiAgICAg
ICAgIH0KICAgICB9CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cgYi9MYXlvdXRU
ZXN0cy9DaGFuZ2VMb2cKaW5kZXggOWQ5YTI4ODQ3ZjVhYzAwZmJmYWI0MWNmNmE4NThmMDNkNTNj
MDhiMy4uNzFhMjQ5OGRkMTFkNGZhZjY4MGFiMGI4NjBmYzQ4M2RhYTQ5ZjQ2YSAxMDA2NDQKLS0t
IGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCisrKyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwpAQCAt
MSwzICsxLDE1IEBACisyMDE0LTA3LTE2ICBNeWxlcyBDLiBNYXhmaWVsZCAgPG1tYXhmaWVsZEBh
cHBsZS5jb20+CisKKyAgICAgICAgQ29weWluZyBhbmQgcGFzdGluZyB0cml2aWFsIEgyIGNvbnRl
bnQgY2F1c2VzIGEgY3Jhc2ggaW4gZmlyc3RQb3NpdGlvbkluTm9kZQorICAgICAgICBodHRwczov
L2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTM0ODk3CisKKyAgICAgICAgUmV2aWV3
ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgQ29weSBhbmQgcGFzdGUgdGV4dCBmcm9t
IG9uZSBoZWFkaW5nIHRvIGFub3RoZXIuIE1ha2Ugc3VyZSB0aGVyZSBpcyBubyBjcmFzaC4KKwor
ICAgICAgICAqIGVkaXRpbmcvcGFzdGVib2FyZC9oZWFkaW5nLWNyYXNoLWV4cGVjdGVkLnR4dDog
QWRkZWQuCisgICAgICAgICogZWRpdGluZy9wYXN0ZWJvYXJkL2hlYWRpbmctY3Jhc2guaHRtbDog
QWRkZWQuCisKIDIwMTQtMDctMTYgIE1pa2UgV2VzdCAgPG1rd3N0QGNocm9taXVtLm9yZz4KIAog
ICAgICAgICBDU1A6IERyb3AgJ3NjcmlwdC1ub25jZScgZGlyZWN0aXZlLgpkaWZmIC0tZ2l0IGEv
TGF5b3V0VGVzdHMvZWRpdGluZy9wYXN0ZWJvYXJkL2hlYWRpbmctY3Jhc2gtZXhwZWN0ZWQudHh0
IGIvTGF5b3V0VGVzdHMvZWRpdGluZy9wYXN0ZWJvYXJkL2hlYWRpbmctY3Jhc2gtZXhwZWN0ZWQu
dHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAuLjI3ZjAwNGVlMmVkMWUxOTZlMmQ2Yzc0NDY4ZjM2N2U0YWUxZWZiMDEK
LS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9lZGl0aW5nL3Bhc3RlYm9hcmQvaGVhZGlu
Zy1jcmFzaC1leHBlY3RlZC50eHQKQEAgLTAsMCArMSw2IEBACitUaGUgZm9sbG93aW5nIHRlc3Qg
ZG9lcyBhIGNvcHkgYW5kIGEgcGFzdGUgZnJvbSBvbmUgaGVhZGluZyB0byBhbm90aGVyIGhlYWRp
bmcuIFRoZSB0ZXN0IGlzIHN1Y2Nlc3NmdWwgaWYgdGhlcmUgaXMgbm8gY3Jhc2guCisKK0Rlc3Rp
bmF0aW9uIHNob3VsZCBzYXkgQ29weSBUaGlzIFRleHQ6Cit8IDxoMj4KK3wgICBpZD0ic291cmNl
IgorfCAgICJDb3B5IFRoaXMgVGV4dDwjc2VsZWN0aW9uLWNhcmV0PiIKZGlmZiAtLWdpdCBhL0xh
eW91dFRlc3RzL2VkaXRpbmcvcGFzdGVib2FyZC9oZWFkaW5nLWNyYXNoLmh0bWwgYi9MYXlvdXRU
ZXN0cy9lZGl0aW5nL3Bhc3RlYm9hcmQvaGVhZGluZy1jcmFzaC5odG1sCm5ldyBmaWxlIG1vZGUg
MTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjE3
NjQ3MjMzNDdkM2M1MDExNmRkZTBkNjQ5MjA5OWY3ODQ5YmIxMzUKLS0tIC9kZXYvbnVsbAorKysg
Yi9MYXlvdXRUZXN0cy9lZGl0aW5nL3Bhc3RlYm9hcmQvaGVhZGluZy1jcmFzaC5odG1sCkBAIC0w
LDAgKzEsMzQgQEAKKzwhRE9DVFlQRSBodG1sPgorPGh0bWw+Cis8aGVhZD4KKzxzY3JpcHQgc3Jj
PSIuLi9lZGl0aW5nLmpzIj48L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSIuLi8uLi9yZXNvdXJjZXMv
ZHVtcC1hcy1tYXJrdXAuanMiPjwvc2NyaXB0PgorPC9oZWFkPgorPGJvZHk+CisgICAgPGgyIGlk
PSJzb3VyY2UiIGNvbnRlbnRlZGl0YWJsZT0idHJ1ZSI+Q29weSBUaGlzIFRleHQ8L2gyPgorICAg
IDxoMiBpZD0iZGVzdGluYXRpb24iIGNvbnRlbnRlZGl0YWJsZT0idHJ1ZSI+UGFzdGUgSGVyZTwv
aDI+CisgICAgPHNjcmlwdD4KKyAgICAgICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKQorICAgICAg
ICAgICAgdGVzdFJ1bm5lci5kdW1wQXNUZXh0KCk7CisKKyAgICAgICAgdmFyIHNvdXJjZSA9IGRv
Y3VtZW50LmdldEVsZW1lbnRCeUlkKCJzb3VyY2UiKTsKKyAgICAgICAgdmFyIGRlc3RpbmF0aW9u
ID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImRlc3RpbmF0aW9uIik7CisgICAgICAgIHZhciBz
ZWxlY3Rpb24gPSB3aW5kb3cuZ2V0U2VsZWN0aW9uKCk7CisgICAgICAgIHZhciByYW5nZSA9IGRv
Y3VtZW50LmNyZWF0ZVJhbmdlKCk7CisgICAgICAgIHNvdXJjZS5mb2N1cygpOworICAgICAgICBy
YW5nZS5zZWxlY3ROb2RlQ29udGVudHMoc291cmNlKTsKKyAgICAgICAgc2VsZWN0aW9uLnJlbW92
ZUFsbFJhbmdlcygpOworICAgICAgICBzZWxlY3Rpb24uYWRkUmFuZ2UocmFuZ2UpOworCisgICAg
ICAgIGNvcHlDb21tYW5kKCk7CisKKyAgICAgICAgc2VsZWN0aW9uLnJlbW92ZUFsbFJhbmdlcygp
OworICAgICAgICByYW5nZS5zZWxlY3ROb2RlQ29udGVudHMoZGVzdGluYXRpb24pOworICAgICAg
ICBzZWxlY3Rpb24uYWRkUmFuZ2UocmFuZ2UpOworCisgICAgICAgIHBhc3RlQ29tbWFuZCgpOwor
CisgICAgICAgIE1hcmt1cC5kZXNjcmlwdGlvbigiVGhlIGZvbGxvd2luZyB0ZXN0IGRvZXMgYSBj
b3B5IGFuZCBhIHBhc3RlIGZyb20gb25lIGhlYWRpbmcgdG8gYW5vdGhlciBoZWFkaW5nLiBUaGUg
dGVzdCBpcyBzdWNjZXNzZnVsIGlmIHRoZXJlIGlzIG5vIGNyYXNoLiIpOworICAgICAgICBNYXJr
dXAuZHVtcChkZXN0aW5hdGlvbiwgJ0Rlc3RpbmF0aW9uIHNob3VsZCBzYXkgQ29weSBUaGlzIFRl
eHQnKTsKKyAgICA8L3NjcmlwdD4KKzwvaHRtbD4K
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>235333</attachid>
            <date>2014-07-22 18:31:18 -0700</date>
            <delta_ts>2014-07-22 19:14:48 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-134897-20140722183103.patch</filename>
            <type>text/plain</type>
            <size>6484</size>
            <attacher name="Myles C. Maxfield">mmaxfield</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTcxMzc1CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZDAyMmVlYjM3NmJmY2Zl
YzJmNjAxNGQwYjFlNjYyNzhkM2FlZDRiYi4uNWFkNzk3NDY4NWRmN2VkMGJjYTJmYTM5OWNhN2Fi
MzI5ZDM2NjQ2YiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE5IEBACisyMDE0LTA3LTE2ICBNeWxl
cyBDLiBNYXhmaWVsZCAgPG1tYXhmaWVsZEBhcHBsZS5jb20+CisKKyAgICAgICAgQ29weWluZyBh
bmQgcGFzdGluZyB0cml2aWFsIEgyIGNvbnRlbnQgY2F1c2VzIGEgY3Jhc2ggaW4gZmlyc3RQb3Np
dGlvbkluTm9kZQorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/
aWQ9MTM0ODk3CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAg
ICAgUmVwbGFjZVNlbGVjdGlvbkNvbW1hbmQ6Om1ha2VJbnNlcnRlZENvbnRlbnRSb3VuZFRyaXBw
YWJsZVdpdGhIVE1MVHJlZUJ1aWxkZXIoKSBhdHRlbXB0cworICAgICAgICB0byBtb3ZlIHBhc3Rl
ZCBoZWFkaW5ncyBvdXQgb2YgZXhpc3RlZCBoZWFkaW5ncywgd2l0aCBvdXQgcmVnYXJkIHRvIGlm
IHRoZSBleGlzdGluZworICAgICAgICBoZWFkaW5nIGlzIHRoZSBjb250ZW50ZWRpdGFibGUgcm9v
dC4KKworICAgICAgICBUZXN0OiBlZGl0aW5nL3Bhc3RlYm9hcmQvaGVhZGluZy1jcmFzaC5odG1s
CisKKyAgICAgICAgKiBlZGl0aW5nL1JlcGxhY2VTZWxlY3Rpb25Db21tYW5kLmNwcDoKKyAgICAg
ICAgKFdlYkNvcmU6OlJlcGxhY2VTZWxlY3Rpb25Db21tYW5kOjptYWtlSW5zZXJ0ZWRDb250ZW50
Um91bmRUcmlwcGFibGVXaXRoSFRNTFRyZWVCdWlsZGVyKToKKwogMjAxNC0wNy0yMiAgTXlsZXMg
Qy4gTWF4ZmllbGQgIDxtbWF4ZmllbGRAYXBwbGUuY29tPgogCiAgICAgICAgIFtpT1NdIFtPU1hd
IERvbid0IHRyYW5zY29kZSBXT0ZGIG9uIHBsYXRmb3JtcyB0aGF0IHN1cHBvcnQgaXQgbmF0aXZl
bHkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2VkaXRpbmcvUmVwbGFjZVNlbGVjdGlvbkNv
bW1hbmQuY3BwIGIvU291cmNlL1dlYkNvcmUvZWRpdGluZy9SZXBsYWNlU2VsZWN0aW9uQ29tbWFu
ZC5jcHAKaW5kZXggNmMwNjJiNTVhNjM2N2ZjOTkwZDAzODU0YWI2OTk5Yjg5OGYzMDg4MS4uZDAx
OWQyMTMyZWQxNzRiMTRmNmQ5MGU4MWJlMTZkZGQ4ZDEyZjZiYSAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvZWRpdGluZy9SZXBsYWNlU2VsZWN0aW9uQ29tbWFuZC5jcHAKKysrIGIvU291cmNl
L1dlYkNvcmUvZWRpdGluZy9SZXBsYWNlU2VsZWN0aW9uQ29tbWFuZC5jcHAKQEAgLTYxOSw3ICs2
MTksNyBAQCBzdGF0aWMgYm9vbCBpc1Byb2hpYml0ZWRQYXJhZ3JhcGhDaGlsZChjb25zdCBBdG9t
aWNTdHJpbmcmIG5hbWUpCiAgICAgcmV0dXJuIGVsZW1lbnRzLmdldCgpLmNvbnRhaW5zKG5hbWUp
OwogfQogCi12b2lkIFJlcGxhY2VTZWxlY3Rpb25Db21tYW5kOjptYWtlSW5zZXJ0ZWRDb250ZW50
Um91bmRUcmlwcGFibGVXaXRoSFRNTFRyZWVCdWlsZGVyKGNvbnN0IEluc2VydGVkTm9kZXMmIGlu
c2VydGVkTm9kZXMpCit2b2lkIFJlcGxhY2VTZWxlY3Rpb25Db21tYW5kOjptYWtlSW5zZXJ0ZWRD
b250ZW50Um91bmRUcmlwcGFibGVXaXRoSFRNTFRyZWVCdWlsZGVyKEluc2VydGVkTm9kZXMmIGlu
c2VydGVkTm9kZXMpCiB7CiAgICAgUmVmUHRyPE5vZGU+IHBhc3RFbmROb2RlID0gaW5zZXJ0ZWRO
b2Rlcy5wYXN0TGFzdExlYWYoKTsKICAgICBSZWZQdHI8Tm9kZT4gbmV4dDsKQEAgLTYzOCw4ICs2
MzgsMTUgQEAgdm9pZCBSZXBsYWNlU2VsZWN0aW9uQ29tbWFuZDo6bWFrZUluc2VydGVkQ29udGVu
dFJvdW5kVHJpcHBhYmxlV2l0aEhUTUxUcmVlQnVpbGQKICAgICAgICAgfQogCiAgICAgICAgIGlm
IChpc0hlYWRlckVsZW1lbnQobm9kZS5nZXQoKSkpIHsKLSAgICAgICAgICAgIGlmIChhdXRvKiBo
ZWFkZXJFbGVtZW50ID0gaGlnaGVzdEVuY2xvc2luZ05vZGVPZlR5cGUocG9zaXRpb25JblBhcmVu
dEJlZm9yZU5vZGUobm9kZS5nZXQoKSksIGlzSGVhZGVyRWxlbWVudCkpCi0gICAgICAgICAgICAg
ICAgbW92ZU5vZGVPdXRPZkFuY2VzdG9yKG5vZGUsIGhlYWRlckVsZW1lbnQpOworICAgICAgICAg
ICAgYXV0byogaGVhZGVyRWxlbWVudCA9IGhpZ2hlc3RFbmNsb3NpbmdOb2RlT2ZUeXBlKHBvc2l0
aW9uSW5QYXJlbnRCZWZvcmVOb2RlKG5vZGUuZ2V0KCkpLCBpc0hlYWRlckVsZW1lbnQpOworICAg
ICAgICAgICAgaWYgKGhlYWRlckVsZW1lbnQpIHsKKyAgICAgICAgICAgICAgICBpZiAoaGVhZGVy
RWxlbWVudC0+cGFyZW50Tm9kZSgpICYmIGhlYWRlckVsZW1lbnQtPnBhcmVudE5vZGUoKS0+aXND
b250ZW50UmljaGx5RWRpdGFibGUoKSkKKyAgICAgICAgICAgICAgICAgICAgbW92ZU5vZGVPdXRP
ZkFuY2VzdG9yKG5vZGUsIGhlYWRlckVsZW1lbnQpOworICAgICAgICAgICAgICAgIGVsc2Ugewor
ICAgICAgICAgICAgICAgICAgICBIVE1MRWxlbWVudCogbmV3U3BhbkVsZW1lbnQgPSByZXBsYWNl
RWxlbWVudFdpdGhTcGFuUHJlc2VydmluZ0NoaWxkcmVuQW5kQXR0cmlidXRlcyh0b0hUTUxFbGVt
ZW50KG5vZGUuZ2V0KCkpKTsKKyAgICAgICAgICAgICAgICAgICAgaW5zZXJ0ZWROb2Rlcy5kaWRS
ZXBsYWNlTm9kZShub2RlLmdldCgpLCBuZXdTcGFuRWxlbWVudCk7CisgICAgICAgICAgICAgICAg
fQorICAgICAgICAgICAgfQogICAgICAgICB9CiAgICAgfQogfQpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvZWRpdGluZy9SZXBsYWNlU2VsZWN0aW9uQ29tbWFuZC5oIGIvU291cmNlL1dlYkNv
cmUvZWRpdGluZy9SZXBsYWNlU2VsZWN0aW9uQ29tbWFuZC5oCmluZGV4IDc1NTk5MWI5ZWNlYmY2
MTIxNzRhMDFiMzRmYzRhNmViOGNiNWJiZWYuLmY3MWIxMWNhYzRkYWU5NWE5NmU4OGQxYTU2MTcx
N2UwNjI1YjA4NWYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2VkaXRpbmcvUmVwbGFjZVNl
bGVjdGlvbkNvbW1hbmQuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9lZGl0aW5nL1JlcGxhY2VTZWxl
Y3Rpb25Db21tYW5kLmgKQEAgLTg5LDcgKzg5LDcgQEAgcHJpdmF0ZToKICAgICB2b2lkIHJlbW92
ZVVucmVuZGVyZWRUZXh0Tm9kZXNBdEVuZHMoSW5zZXJ0ZWROb2RlcyYpOwogICAgIAogICAgIHZv
aWQgcmVtb3ZlUmVkdW5kYW50U3R5bGVzQW5kS2VlcFN0eWxlU3BhbklubGluZShJbnNlcnRlZE5v
ZGVzJik7Ci0gICAgdm9pZCBtYWtlSW5zZXJ0ZWRDb250ZW50Um91bmRUcmlwcGFibGVXaXRoSFRN
TFRyZWVCdWlsZGVyKGNvbnN0IEluc2VydGVkTm9kZXMmKTsKKyAgICB2b2lkIG1ha2VJbnNlcnRl
ZENvbnRlbnRSb3VuZFRyaXBwYWJsZVdpdGhIVE1MVHJlZUJ1aWxkZXIoSW5zZXJ0ZWROb2RlcyYp
OwogICAgIHZvaWQgbW92ZU5vZGVPdXRPZkFuY2VzdG9yKFBhc3NSZWZQdHI8Tm9kZT4sIFBhc3NS
ZWZQdHI8Tm9kZT4gYW5jZXN0b3IpOwogICAgIHZvaWQgaGFuZGxlU3R5bGVTcGFucyhJbnNlcnRl
ZE5vZGVzJik7CiAgICAgdm9pZCBoYW5kbGVQYXN0ZUFzUXVvdGF0aW9uTm9kZSgpOwpkaWZmIC0t
Z2l0IGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCmluZGV4
IDUwYTViODhkYWI1ODExMjgzYzM3NWRiZWIwNTYxNDM5ZWM4MDA3OTIuLmU5NjJiODNhODc5ZGU5
ODRkODUxZjE3ZTkyMzJiNWIyZmY0MjliOWMgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL0NoYW5n
ZUxvZworKysgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNSBAQAorMjAxNC0w
Ny0xNiAgTXlsZXMgQy4gTWF4ZmllbGQgIDxtbWF4ZmllbGRAYXBwbGUuY29tPgorCisgICAgICAg
IENvcHlpbmcgYW5kIHBhc3RpbmcgdHJpdmlhbCBIMiBjb250ZW50IGNhdXNlcyBhIGNyYXNoIGlu
IGZpcnN0UG9zaXRpb25Jbk5vZGUKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hv
d19idWcuY2dpP2lkPTEzNDg5NworCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEp
LgorCisgICAgICAgIENvcHkgYW5kIHBhc3RlIHRleHQgZnJvbSBvbmUgaGVhZGluZyB0byBhbm90
aGVyLiBNYWtlIHN1cmUgdGhlcmUgaXMgbm8gY3Jhc2guCisKKyAgICAgICAgKiBlZGl0aW5nL3Bh
c3RlYm9hcmQvaGVhZGluZy1jcmFzaC1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIGVk
aXRpbmcvcGFzdGVib2FyZC9oZWFkaW5nLWNyYXNoLmh0bWw6IEFkZGVkLgorCiAyMDE0LTA3LTIy
ICBGaWxpcCBQaXpsbyAgPGZwaXpsb0BhcHBsZS5jb20+CiAKICAgICAgICAgTWVyZ2UgcjE2ODYz
NSwgcjE2ODc4MCwgcjE2OTAwNSwgcjE2OTAxNCwgYW5kIHIxNjkxNDMgZnJvbSBmdGxvcHQuCmRp
ZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9lZGl0aW5nL3Bhc3RlYm9hcmQvaGVhZGluZy1jcmFzaC1l
eHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9lZGl0aW5nL3Bhc3RlYm9hcmQvaGVhZGluZy1jcmFz
aC1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uN2QwZjE0Y2M3OWNiMGExMWFiM2Y3ODMyNTY0NTU1
YTU3MDBhZGQxOQotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2VkaXRpbmcvcGFzdGVi
b2FyZC9oZWFkaW5nLWNyYXNoLWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDYgQEAKK1RoZSBmb2xs
b3dpbmcgdGVzdCBkb2VzIGEgY29weSBhbmQgYSBwYXN0ZSBmcm9tIG9uZSBoZWFkaW5nIHRvIGFu
b3RoZXIgaGVhZGluZy4gVGhlIHRlc3QgaXMgc3VjY2Vzc2Z1bCBpZiB0aGVyZSBpcyBubyBjcmFz
aC4KKworRGVzdGluYXRpb24gc2hvdWxkIHNheSBDb3B5IFRoaXMgVGV4dDoKK3wgPHNwYW4+Cit8
ICAgaWQ9InNvdXJjZSIKK3wgICAiQ29weSBUaGlzIFRleHQ8I3NlbGVjdGlvbi1jYXJldD4iCmRp
ZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9lZGl0aW5nL3Bhc3RlYm9hcmQvaGVhZGluZy1jcmFzaC5o
dG1sIGIvTGF5b3V0VGVzdHMvZWRpdGluZy9wYXN0ZWJvYXJkL2hlYWRpbmctY3Jhc2guaHRtbApu
ZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwLi4xNzY0NzIzMzQ3ZDNjNTAxMTZkZGUwZDY0OTIwOTlmNzg0OWJiMTM1Ci0tLSAv
ZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZWRpdGluZy9wYXN0ZWJvYXJkL2hlYWRpbmctY3Jh
c2guaHRtbApAQCAtMCwwICsxLDM0IEBACis8IURPQ1RZUEUgaHRtbD4KKzxodG1sPgorPGhlYWQ+
Cis8c2NyaXB0IHNyYz0iLi4vZWRpdGluZy5qcyI+PC9zY3JpcHQ+Cis8c2NyaXB0IHNyYz0iLi4v
Li4vcmVzb3VyY2VzL2R1bXAtYXMtbWFya3VwLmpzIj48L3NjcmlwdD4KKzwvaGVhZD4KKzxib2R5
PgorICAgIDxoMiBpZD0ic291cmNlIiBjb250ZW50ZWRpdGFibGU9InRydWUiPkNvcHkgVGhpcyBU
ZXh0PC9oMj4KKyAgICA8aDIgaWQ9ImRlc3RpbmF0aW9uIiBjb250ZW50ZWRpdGFibGU9InRydWUi
PlBhc3RlIEhlcmU8L2gyPgorICAgIDxzY3JpcHQ+CisgICAgICAgIGlmICh3aW5kb3cudGVzdFJ1
bm5lcikKKyAgICAgICAgICAgIHRlc3RSdW5uZXIuZHVtcEFzVGV4dCgpOworCisgICAgICAgIHZh
ciBzb3VyY2UgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgic291cmNlIik7CisgICAgICAgIHZh
ciBkZXN0aW5hdGlvbiA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJkZXN0aW5hdGlvbiIpOwor
ICAgICAgICB2YXIgc2VsZWN0aW9uID0gd2luZG93LmdldFNlbGVjdGlvbigpOworICAgICAgICB2
YXIgcmFuZ2UgPSBkb2N1bWVudC5jcmVhdGVSYW5nZSgpOworICAgICAgICBzb3VyY2UuZm9jdXMo
KTsKKyAgICAgICAgcmFuZ2Uuc2VsZWN0Tm9kZUNvbnRlbnRzKHNvdXJjZSk7CisgICAgICAgIHNl
bGVjdGlvbi5yZW1vdmVBbGxSYW5nZXMoKTsKKyAgICAgICAgc2VsZWN0aW9uLmFkZFJhbmdlKHJh
bmdlKTsKKworICAgICAgICBjb3B5Q29tbWFuZCgpOworCisgICAgICAgIHNlbGVjdGlvbi5yZW1v
dmVBbGxSYW5nZXMoKTsKKyAgICAgICAgcmFuZ2Uuc2VsZWN0Tm9kZUNvbnRlbnRzKGRlc3RpbmF0
aW9uKTsKKyAgICAgICAgc2VsZWN0aW9uLmFkZFJhbmdlKHJhbmdlKTsKKworICAgICAgICBwYXN0
ZUNvbW1hbmQoKTsKKworICAgICAgICBNYXJrdXAuZGVzY3JpcHRpb24oIlRoZSBmb2xsb3dpbmcg
dGVzdCBkb2VzIGEgY29weSBhbmQgYSBwYXN0ZSBmcm9tIG9uZSBoZWFkaW5nIHRvIGFub3RoZXIg
aGVhZGluZy4gVGhlIHRlc3QgaXMgc3VjY2Vzc2Z1bCBpZiB0aGVyZSBpcyBubyBjcmFzaC4iKTsK
KyAgICAgICAgTWFya3VwLmR1bXAoZGVzdGluYXRpb24sICdEZXN0aW5hdGlvbiBzaG91bGQgc2F5
IENvcHkgVGhpcyBUZXh0Jyk7CisgICAgPC9zY3JpcHQ+Cis8L2h0bWw+Cg==
</data>
<flag name="review"
          id="259908"
          type_id="1"
          status="+"
          setter="rniwa"
    />
          </attachment>
      

    </bug>

</bugzilla>