<?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>209493</bug_id>
          
          <creation_ts>2020-03-24 13:55:17 -0700</creation_ts>
          <short_desc>Element context character rects may be in wrong coordinate system</short_desc>
          <delta_ts>2020-03-25 14:56:12 -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>WebKit Misc.</component>
          <version>WebKit Local Build</version>
          <rep_platform>iPhone / iPad</rep_platform>
          <op_sys>iOS 13</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          <see_also>https://bugs.webkit.org/show_bug.cgi?id=209506</see_also>
          <bug_file_loc></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="Daniel Bates">dbates</reporter>
          <assigned_to name="Daniel Bates">dbates</assigned_to>
          <cc>webkit-bug-importer</cc>
    
    <cc>wenson_hsieh</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1633467</commentid>
    <comment_count>0</comment_count>
    <who name="Daniel Bates">dbates</who>
    <bug_when>2020-03-24 13:55:17 -0700</bug_when>
    <thetext>Consider a page with the following markup:

&lt;!DOCTYPE html&gt;
&lt;html&gt;
&lt;body&gt;
&lt;input&gt;
&lt;iframe width=&quot;500&quot; height=&quot;500&quot; srcdoc=&quot;&lt;textarea&gt;Hello&lt;/textarea&gt;&quot;&gt;&lt;/iframe&gt;
&lt;/body&gt;
&lt;/html&gt;

If you set the set the insertion point to be before the &apos;H&apos; in the textarea and -requestDocumentContext for character rects then the returned rects are in the coordinate system of the framed document, but they should be in root view coordinates.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1633468</commentid>
    <comment_count>1</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2020-03-24 13:55:27 -0700</bug_when>
    <thetext>&lt;rdar://problem/60840261&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1633469</commentid>
    <comment_count>2</comment_count>
      <attachid>394407</attachid>
    <who name="Daniel Bates">dbates</who>
    <bug_when>2020-03-24 13:57:48 -0700</bug_when>
    <thetext>Created attachment 394407
Patch and tests</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1633472</commentid>
    <comment_count>3</comment_count>
      <attachid>394407</attachid>
    <who name="Wenson Hsieh">wenson_hsieh</who>
    <bug_when>2020-03-24 14:03:22 -0700</bug_when>
    <thetext>Comment on attachment 394407
Patch and tests

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

&gt; Source/WebKit/WebProcess/WebPage/ios/WebPageIOS.mm:4254
&gt; +                rects.append({ currentRange-&gt;ownerDocument().view()-&gt;contentsToRootView(absoluteBoundingBox), { offsetSoFar++, stride } });

What guarantees that view() is non-null here?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1633514</commentid>
    <comment_count>4</comment_count>
      <attachid>394407</attachid>
    <who name="Daniel Bates">dbates</who>
    <bug_when>2020-03-24 14:54:28 -0700</bug_when>
    <thetext>Comment on attachment 394407
Patch and tests

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

Thanks for the review, Wenson.

&gt;&gt; Source/WebKit/WebProcess/WebPage/ios/WebPageIOS.mm:4254
&gt;&gt; +                rects.append({ currentRange-&gt;ownerDocument().view()-&gt;contentsToRootView(absoluteBoundingBox), { offsetSoFar++, stride } });
&gt; 
&gt; What guarantees that view() is non-null here?

How can it be null here? The owner document for these ranges has to be the document in the focused frame since the range is constructed with respect to the frame&apos;s selection. If focusedOrMainFrame() returns a frame without a view then it must the main frame because detaching a focused frame, which is what had to happen for its view to be nullified, defocuses it. And the main frame is the focused frame of last resort. So, that means it only the main frame can be returned and possibly not have a view. But that cannot happen either because there is nothing that this function does that could cause that... oh, I misspoke, layout. That&apos;s an existing bug in this function not related to this patch...Anyway, I&apos;ll take out a ref for the frame view of the focused frame at the top of this function.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1633541</commentid>
    <comment_count>5</comment_count>
      <attachid>394407</attachid>
    <who name="Daniel Bates">dbates</who>
    <bug_when>2020-03-24 15:08:04 -0700</bug_when>
    <thetext>Comment on attachment 394407
Patch and tests

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

&gt;&gt;&gt; Source/WebKit/WebProcess/WebPage/ios/WebPageIOS.mm:4254
&gt;&gt;&gt; +                rects.append({ currentRange-&gt;ownerDocument().view()-&gt;contentsToRootView(absoluteBoundingBox), { offsetSoFar++, stride } });
&gt;&gt; 
&gt;&gt; What guarantees that view() is non-null here?
&gt; 
&gt; How can it be null here? The owner document for these ranges has to be the document in the focused frame since the range is constructed with respect to the frame&apos;s selection. If focusedOrMainFrame() returns a frame without a view then it must the main frame because detaching a focused frame, which is what had to happen for its view to be nullified, defocuses it. And the main frame is the focused frame of last resort. So, that means it only the main frame can be returned and possibly not have a view. But that cannot happen either because there is nothing that this function does that could cause that... oh, I misspoke, layout. That&apos;s an existing bug in this function not related to this patch...Anyway, I&apos;ll take out a ref for the frame view of the focused frame at the top of this function.

Will fix this in bug #209506.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1633546</commentid>
    <comment_count>6</comment_count>
      <attachid>394407</attachid>
    <who name="Daniel Bates">dbates</who>
    <bug_when>2020-03-24 15:09:02 -0700</bug_when>
    <thetext>Comment on attachment 394407
Patch and tests

Clearing flags on attachment: 394407

Committed r258945: &lt;https://trac.webkit.org/changeset/258945&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1633547</commentid>
    <comment_count>7</comment_count>
    <who name="Daniel Bates">dbates</who>
    <bug_when>2020-03-24 15:09:04 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1633787</commentid>
    <comment_count>8</comment_count>
    <who name="Daniel Bates">dbates</who>
    <bug_when>2020-03-24 22:51:35 -0700</bug_when>
    <thetext>Dang it, I forgot this patch depends on another bug fix I didn&apos;t post yet to make selecting position at point work in &lt;iframes&gt;. That&apos;s why the test fails. I&apos;m going to disable the test temporarily for tonight. Tomorrow I will have the patch to fix it....</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1633790</commentid>
    <comment_count>9</comment_count>
    <who name="Daniel Bates">dbates</who>
    <bug_when>2020-03-24 22:53:28 -0700</bug_when>
    <thetext>I&apos;m just going to revert this change for the moment.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1633792</commentid>
    <comment_count>10</comment_count>
    <who name="Daniel Bates">dbates</who>
    <bug_when>2020-03-24 23:00:28 -0700</bug_when>
    <thetext>Reverted r258945 for reason:

Revert change that broke API tests while I investigate offline.

Committed r258974: &lt;https://trac.webkit.org/changeset/258974&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1634060</commentid>
    <comment_count>11</comment_count>
      <attachid>394407</attachid>
    <who name="Daniel Bates">dbates</who>
    <bug_when>2020-03-25 14:52:42 -0700</bug_when>
    <thetext>Comment on attachment 394407
Patch and tests

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

&gt; Tools/TestWebKitAPI/Tests/WebKitCocoa/DocumentEditingContext.mm:520
&gt; +    [webView synchronouslyLoadHTMLString:applyAhemStyle([NSString stringWithFormat:@&quot;&lt;iframe srcdoc=\&quot;%@\&quot; style=&apos;position: absolute; left: 1em; top: 1em; border: none&apos;&gt;&lt;/iframe&gt;&quot;, applyAhemStyle(@&quot;&lt;textarea id=&apos;test&apos; style=&apos;padding: 0&apos;&gt;The quick brown fox jumps over the lazy dog.&lt;/textarea&gt;&lt;script&gt;let textarea = document.querySelector(&apos;iframe&apos;).contentDocument.getElementById(&apos;test&apos;); textarea.focus(); textarea.setSelectionRange(0, 0); /* Place caret at the beginning of the field. */&lt;/script&gt;&quot;)])];

Here&apos;s the bug that led to the test failure....

let textarea = document.querySelector(&apos;iframe&apos;).contentDocument.getElementById(&apos;test&apos;);

should be:

let textarea = document.getElementById(&apos;test&apos;);</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1634061</commentid>
    <comment_count>12</comment_count>
      <attachid>394546</attachid>
    <who name="Daniel Bates">dbates</who>
    <bug_when>2020-03-25 14:54:31 -0700</bug_when>
    <thetext>Created attachment 394546
To Land</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1634062</commentid>
    <comment_count>13</comment_count>
    <who name="Daniel Bates">dbates</who>
    <bug_when>2020-03-25 14:56:12 -0700</bug_when>
    <thetext>Committed r259013: &lt;https://trac.webkit.org/changeset/259013&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>394407</attachid>
            <date>2020-03-24 13:57:48 -0700</date>
            <delta_ts>2020-03-25 14:54:30 -0700</delta_ts>
            <desc>Patch and tests</desc>
            <filename>bug-209493-20200324135748.patch</filename>
            <type>text/plain</type>
            <size>6891</size>
            <attacher name="Daniel Bates">dbates</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjU4ODAzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCmluZGV4IDM3NWViZTQwMTk0NTIyZDJm
ZGQ4ZjdiZWU0MzdmNWY0MGNjMDIyYjQuLjVlOTNhODEwNTE3NjE0YjIxNjJmOGNjYWU4MWJhZDQw
NDQ4OTNkNDcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJj
ZS9XZWJLaXQvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTcgQEAKKzIwMjAtMDMtMjQgIERhbmllbCBC
YXRlcyAgPGRhYmF0ZXNAYXBwbGUuY29tPgorCisgICAgICAgIEVsZW1lbnQgY29udGV4dCBjaGFy
YWN0ZXIgcmVjdHMgbWF5IGJlIGluIHdyb25nIGNvb3JkaW5hdGUgc3lzdGVtCisgICAgICAgIGh0
dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMDk0OTMKKyAgICAgICAgPHJk
YXI6Ly9wcm9ibGVtLzYwODQwMjYxPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09Q
UyEpLgorCisgICAgICAgIENvbnZlcnQgdGhlIGNoYXJhY3RlciByZWN0cyBmcm9tIGNvbnRlbnQg
dmlldyBjb29yZGluYXRlcyB0byByb290IHZpZXcgY29vcmRpbmF0ZXMKKyAgICAgICAgYXMgdGhh
dCBpcyB0aGUgY29vcmRpbmF0ZSBzeXN0ZW0gY2FsbGVycyBvZiAtcmVxdWVzdERvY3VtZW50Q29u
dGV4dCBleHBlY3QuCisKKyAgICAgICAgKiBXZWJQcm9jZXNzL1dlYlBhZ2UvaW9zL1dlYlBhZ2VJ
T1MubW06CisgICAgICAgIChXZWJLaXQ6OldlYlBhZ2U6OnJlcXVlc3REb2N1bWVudEVkaXRpbmdD
b250ZXh0KToKKwogMjAyMC0wMy0yMyAgRGFuaWVsIEJhdGVzICA8ZGFiYXRlc0BhcHBsZS5jb20+
CiAKICAgICAgICAgU2ltcGxpZnkgY2hhcmFjdGVyUmVjdHNGb3JSYW5nZSgpIGluIFdlYlBhZ2U6
OnJlcXVlc3REb2N1bWVudEVkaXRpbmdDb250ZXh0KCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJL
aXQvV2ViUHJvY2Vzcy9XZWJQYWdlL2lvcy9XZWJQYWdlSU9TLm1tIGIvU291cmNlL1dlYktpdC9X
ZWJQcm9jZXNzL1dlYlBhZ2UvaW9zL1dlYlBhZ2VJT1MubW0KaW5kZXggZGNiY2U2NDY2MWUxNmQz
OWE1N2MxZjhmMzdhMTc4NDc3NTM3OGVjZi4uNDg4MWNmNmM4OGFkNzZiMTkzNmNkZDNkYzdjNjk4
MjcyODVkYmRlOSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYlBhZ2Uv
aW9zL1dlYlBhZ2VJT1MubW0KKysrIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYlBhZ2Uv
aW9zL1dlYlBhZ2VJT1MubW0KQEAgLTQyNDgsOCArNDI0OCwxMSBAQCB2b2lkIFdlYlBhZ2U6OnJl
cXVlc3REb2N1bWVudEVkaXRpbmdDb250ZXh0KERvY3VtZW50RWRpdGluZ0NvbnRleHRSZXF1ZXN0
IHJlcXVlcwogICAgICAgICB1bnNpZ25lZCBvZmZzZXRTb0ZhciA9IHN0YXJ0T2Zmc2V0OwogICAg
ICAgICBjb25zdCBpbnQgc3RyaWRlID0gMTsKICAgICAgICAgd2hpbGUgKCFpdGVyYXRvci5hdEVu
ZCgpKSB7Ci0gICAgICAgICAgICBpZiAoIWl0ZXJhdG9yLnRleHQoKS5pc0VtcHR5KCkpCi0gICAg
ICAgICAgICAgICAgcmVjdHMuYXBwZW5kKHsgY3JlYXRlTGl2ZVJhbmdlKGl0ZXJhdG9yLnJhbmdl
KCkpLT5hYnNvbHV0ZUJvdW5kaW5nQm94KFJhbmdlOjpCb3VuZGluZ1JlY3RCZWhhdmlvcjo6SWdu
b3JlRW1wdHlUZXh0U2VsZWN0aW9ucyksIHsgb2Zmc2V0U29GYXIrKywgc3RyaWRlIH0gfSk7Cisg
ICAgICAgICAgICBpZiAoIWl0ZXJhdG9yLnRleHQoKS5pc0VtcHR5KCkpIHsKKyAgICAgICAgICAg
ICAgICBhdXRvIGN1cnJlbnRSYW5nZSA9IGNyZWF0ZUxpdmVSYW5nZShpdGVyYXRvci5yYW5nZSgp
KTsKKyAgICAgICAgICAgICAgICBhdXRvIGFic29sdXRlQm91bmRpbmdCb3ggPSBjdXJyZW50UmFu
Z2UtPmFic29sdXRlQm91bmRpbmdCb3goUmFuZ2U6OkJvdW5kaW5nUmVjdEJlaGF2aW9yOjpJZ25v
cmVFbXB0eVRleHRTZWxlY3Rpb25zKTsKKyAgICAgICAgICAgICAgICByZWN0cy5hcHBlbmQoeyBj
dXJyZW50UmFuZ2UtPm93bmVyRG9jdW1lbnQoKS52aWV3KCktPmNvbnRlbnRzVG9Sb290Vmlldyhh
YnNvbHV0ZUJvdW5kaW5nQm94KSwgeyBvZmZzZXRTb0ZhcisrLCBzdHJpZGUgfSB9KTsKKyAgICAg
ICAgICAgIH0KICAgICAgICAgICAgIGl0ZXJhdG9yLmFkdmFuY2Uoc3RyaWRlKTsKICAgICAgICAg
fQogICAgICAgICByZXR1cm4gcmVjdHM7CmRpZmYgLS1naXQgYS9Ub29scy9DaGFuZ2VMb2cgYi9U
b29scy9DaGFuZ2VMb2cKaW5kZXggYWFjNDBhNGUzMzdmNDhhY2ExYTViOWU4ZGVlMWRmODAyMWI0
ODBjZi4uZDA5NmFjZjRlOGVlN2Q3NGMxZDQ3OGRlMDk1ZDE5OTg1NmEwNzhlZSAxMDA2NDQKLS0t
IGEvVG9vbHMvQ2hhbmdlTG9nCisrKyBiL1Rvb2xzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE2IEBA
CisyMDIwLTAzLTI0ICBEYW5pZWwgQmF0ZXMgIDxkYWJhdGVzQGFwcGxlLmNvbT4KKworICAgICAg
ICBFbGVtZW50IGNvbnRleHQgY2hhcmFjdGVyIHJlY3RzIG1heSBiZSBpbiB3cm9uZyBjb29yZGlu
YXRlIHN5c3RlbQorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/
aWQ9MjA5NDkzCisgICAgICAgIDxyZGFyOi8vcHJvYmxlbS82MDg0MDI2MT4KKworICAgICAgICBS
ZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBBZGQgc29tZSB0ZXN0cy4KKwor
ICAgICAgICAqIFRlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0Q29jb2EvRG9jdW1lbnRFZGl0aW5n
Q29udGV4dC5tbToKKyAgICAgICAgKFRFU1QpOgorCiAyMDIwLTAzLTIyICBEYW5pZWwgQmF0ZXMg
IDxkYWJhdGVzQGFwcGxlLmNvbT4KIAogICAgICAgICBbaU9TXVtXSzJdIFNldCB0ZXh0IHRyYWl0
IGlzU2luZ2xlTGluZURvY3VtZW50CmRpZmYgLS1naXQgYS9Ub29scy9UZXN0V2ViS2l0QVBJL1Rl
c3RzL1dlYktpdENvY29hL0RvY3VtZW50RWRpdGluZ0NvbnRleHQubW0gYi9Ub29scy9UZXN0V2Vi
S2l0QVBJL1Rlc3RzL1dlYktpdENvY29hL0RvY3VtZW50RWRpdGluZ0NvbnRleHQubW0KaW5kZXgg
MTQzYWY4Yjk5NjVmMzdiNzE3OGM5NGE4Njk0NmQ5NDA2MmU0ZGJlZC4uYjZlNGZlOGFkNDM2ZDYw
ODY4N2NmZmU3ZWI0ODM5NmJjOTAwNWQ0YiAxMDA2NDQKLS0tIGEvVG9vbHMvVGVzdFdlYktpdEFQ
SS9UZXN0cy9XZWJLaXRDb2NvYS9Eb2N1bWVudEVkaXRpbmdDb250ZXh0Lm1tCisrKyBiL1Rvb2xz
L1Rlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0Q29jb2EvRG9jdW1lbnRFZGl0aW5nQ29udGV4dC5t
bQpAQCAtNTEzLDYgKzUxMyw2NCBAQCBURVNUKERvY3VtZW50RWRpdGluZ0NvbnRleHQsIFJlcXVl
c3RSZWN0c0luVGV4dEFyZWFBY3Jvc3NXb3JkV3JhcHBlZExpbmUpCiAgICAgfQogfQogCitURVNU
KERvY3VtZW50RWRpdGluZ0NvbnRleHQsIFJlcXVlc3RSZWN0c0luVGV4dEFyZWFJbnNpZGVJRnJh
bWUpCit7CisgICAgYXV0byB3ZWJWaWV3ID0gYWRvcHROUyhbW1Rlc3RXS1dlYlZpZXcgYWxsb2Nd
IGluaXRXaXRoRnJhbWU6TlNNYWtlUmVjdCgwLCAwLCA4MDAsIDYwMCldKTsKKyAgICAvLyBVc2Ug
InBhZGRpbmc6IDAiIGZvciB0aGUgPHRleHRhcmVhPiBhcyB0aGUgZGVmYXVsdCB1c2VyLWFnZW50
IHN0eWxlc2hlZXQgY2FuIGVmZmVjdCB0ZXh0IHdyYXBwaW5nLgorICAgIFt3ZWJWaWV3IHN5bmNo
cm9ub3VzbHlMb2FkSFRNTFN0cmluZzphcHBseUFoZW1TdHlsZShbTlNTdHJpbmcgc3RyaW5nV2l0
aEZvcm1hdDpAIjxpZnJhbWUgc3JjZG9jPVwiJUBcIiBzdHlsZT0ncG9zaXRpb246IGFic29sdXRl
OyBsZWZ0OiAxZW07IHRvcDogMWVtOyBib3JkZXI6IG5vbmUnPjwvaWZyYW1lPiIsIGFwcGx5QWhl
bVN0eWxlKEAiPHRleHRhcmVhIGlkPSd0ZXN0JyBzdHlsZT0ncGFkZGluZzogMCc+VGhlIHF1aWNr
IGJyb3duIGZveCBqdW1wcyBvdmVyIHRoZSBsYXp5IGRvZy48L3RleHRhcmVhPjxzY3JpcHQ+bGV0
IHRleHRhcmVhID0gZG9jdW1lbnQucXVlcnlTZWxlY3RvcignaWZyYW1lJykuY29udGVudERvY3Vt
ZW50LmdldEVsZW1lbnRCeUlkKCd0ZXN0Jyk7IHRleHRhcmVhLmZvY3VzKCk7IHRleHRhcmVhLnNl
dFNlbGVjdGlvblJhbmdlKDAsIDApOyAvKiBQbGFjZSBjYXJldCBhdCB0aGUgYmVnaW5uaW5nIG9m
IHRoZSBmaWVsZC4gKi88L3NjcmlwdD4iKV0pXTsKKworICAgIGF1dG8gKmNvbnRleHQgPSBbd2Vi
VmlldyBzeW5jaHJvbm91c2x5UmVxdWVzdERvY3VtZW50Q29udGV4dDptYWtlUmVxdWVzdChVSVdL
RG9jdW1lbnRSZXF1ZXN0VGV4dCB8IFVJV0tEb2N1bWVudFJlcXVlc3RSZWN0cywgVUlUZXh0R3Jh
bnVsYXJpdHlXb3JkLCAxKV07CisgICAgRVhQRUNUX05PVF9OVUxMKGNvbnRleHQpOworICAgIEVY
UEVDVF9OVUxMKGNvbnRleHQuY29udGV4dEJlZm9yZSk7CisgICAgRVhQRUNUX05TU1RSSU5HX0VR
KCJUaGUiLCBjb250ZXh0LmNvbnRleHRBZnRlcik7CisgICAgYXV0byAqdGV4dFJlY3RzID0gW2Nv
bnRleHQgdGV4dFJlY3RzXTsKKyAgICBFWFBFQ1RfRVEoM1UsIHRleHRSZWN0cy5jb3VudCk7CisK
KyNpZiBQTEFURk9STShNQUNDQVRBTFlTVCkKKyAgICBjb25zdCBzaXplX3QgeVBvcyA9IDI3Owor
ICAgIGNvbnN0IHNpemVfdCBoZWlnaHQgPSAyNjsKKyNlbHNlCisgICAgY29uc3Qgc2l6ZV90IHlQ
b3MgPSAyODsKKyAgICBjb25zdCBzaXplX3QgaGVpZ2h0ID0gMjU7CisjZW5kaWYKKworICAgIGlm
ICh0ZXh0UmVjdHMuY291bnQgPj0gMykgeworICAgICAgICBDR0Zsb2F0IHggPSAyODsKKyAgICAg
ICAgRVhQRUNUX0VRKENHUmVjdE1ha2UoeCArIDAgKiBnbHlwaFdpZHRoLCB5UG9zLCAyNSwgaGVp
Z2h0KSwgdGV4dFJlY3RzWzBdLkNHUmVjdFZhbHVlKTsgLy8gVAorICAgICAgICBFWFBFQ1RfRVEo
Q0dSZWN0TWFrZSh4ICsgMSAqIGdseXBoV2lkdGgsIHlQb3MsIDI1LCBoZWlnaHQpLCB0ZXh0UmVj
dHNbMV0uQ0dSZWN0VmFsdWUpOyAvLyBoCisgICAgICAgIEVYUEVDVF9FUShDR1JlY3RNYWtlKHgg
KyAyICogZ2x5cGhXaWR0aCwgeVBvcywgMjUsIGhlaWdodCksIHRleHRSZWN0c1syXS5DR1JlY3RW
YWx1ZSk7IC8vIGUKKyAgICB9Cit9CisKK1RFU1QoRG9jdW1lbnRFZGl0aW5nQ29udGV4dCwgUmVx
dWVzdFJlY3RzSW5UZXh0QXJlYUluc2lkZVNjcm9sbGVkSUZyYW1lKQoreworICAgIGF1dG8gd2Vi
VmlldyA9IGFkb3B0TlMoW1tUZXN0V0tXZWJWaWV3IGFsbG9jXSBpbml0V2l0aEZyYW1lOk5TTWFr
ZVJlY3QoMCwgMCwgODAwLCA2MDApXSk7CisgICAgLy8gVXNlICJwYWRkaW5nOiAwIiBmb3IgdGhl
IDx0ZXh0YXJlYT4gYXMgdGhlIGRlZmF1bHQgdXNlci1hZ2VudCBzdHlsZXNoZWV0IGNhbiBlZmZl
Y3QgdGV4dCB3cmFwcGluZy4KKyAgICBbd2ViVmlldyBzeW5jaHJvbm91c2x5TG9hZEhUTUxTdHJp
bmc6YXBwbHlBaGVtU3R5bGUoW05TU3RyaW5nIHN0cmluZ1dpdGhGb3JtYXQ6QCI8aWZyYW1lIHNy
Y2RvYz1cIiVAXCIgc3R5bGU9J3Bvc2l0aW9uOiBhYnNvbHV0ZTsgbGVmdDogMWVtOyB0b3A6IDFl
bTsgYm9yZGVyOiBub25lJyBoZWlnaHQ9JzIwMCc+PC9pZnJhbWU+IiwgYXBwbHlBaGVtU3R5bGUo
QCI8Ym9keSBzdHlsZT0naGVpZ2h0OiAxMDAwcHgnPjxkaXYgc3R5bGU9J3dpZHRoOiAyMDBweDsg
aGVpZ2h0OiAyMDBweCc+PC9kaXY+PHRleHRhcmVhIGlkPSd0ZXN0JyBzdHlsZT0ncGFkZGluZzog
MCc+VGhlIHF1aWNrIGJyb3duIGZveCBqdW1wcyBvdmVyIHRoZSBsYXp5IGRvZy48L3RleHRhcmVh
PjxzY3JpcHQ+bGV0IHRleHRhcmVhID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3Rlc3QnKTsg
dGV4dGFyZWEuZm9jdXMoKTsgdGV4dGFyZWEuc2V0U2VsZWN0aW9uUmFuZ2UoMCwgMCk7IHdpbmRv
dy5zY3JvbGxUbygwLCAyMDApOyAvKiBTY3JvbGwgPHRleHRhcmVhPiB0byB0aGUgdG9wLiAqLzwv
c2NyaXB0PjwvYm9keT4iKV0pXTsKKworICAgIGF1dG8gKmNvbnRleHQgPSBbd2ViVmlldyBzeW5j
aHJvbm91c2x5UmVxdWVzdERvY3VtZW50Q29udGV4dDptYWtlUmVxdWVzdChVSVdLRG9jdW1lbnRS
ZXF1ZXN0VGV4dCB8IFVJV0tEb2N1bWVudFJlcXVlc3RSZWN0cywgVUlUZXh0R3JhbnVsYXJpdHlX
b3JkLCAxKV07CisgICAgRVhQRUNUX05PVF9OVUxMKGNvbnRleHQpOworICAgIEVYUEVDVF9OVUxM
KGNvbnRleHQuY29udGV4dEJlZm9yZSk7CisgICAgRVhQRUNUX05TU1RSSU5HX0VRKCJUaGUiLCBj
b250ZXh0LmNvbnRleHRBZnRlcik7CisgICAgYXV0byAqdGV4dFJlY3RzID0gW2NvbnRleHQgdGV4
dFJlY3RzXTsKKyAgICBFWFBFQ1RfRVEoM1UsIHRleHRSZWN0cy5jb3VudCk7CisKKyNpZiBQTEFU
Rk9STShNQUNDQVRBTFlTVCkKKyAgICBjb25zdCBzaXplX3QgeVBvcyA9IDI3OworICAgIGNvbnN0
IHNpemVfdCBoZWlnaHQgPSAyNjsKKyNlbHNlCisgICAgY29uc3Qgc2l6ZV90IHlQb3MgPSAyODsK
KyAgICBjb25zdCBzaXplX3QgaGVpZ2h0ID0gMjU7CisjZW5kaWYKKworICAgIGlmICh0ZXh0UmVj
dHMuY291bnQgPj0gMykgeworICAgICAgICBDR0Zsb2F0IHggPSAyODsKKyAgICAgICAgRVhQRUNU
X0VRKENHUmVjdE1ha2UoeCArIDAgKiBnbHlwaFdpZHRoLCB5UG9zLCAyNSwgaGVpZ2h0KSwgdGV4
dFJlY3RzWzBdLkNHUmVjdFZhbHVlKTsgLy8gVAorICAgICAgICBFWFBFQ1RfRVEoQ0dSZWN0TWFr
ZSh4ICsgMSAqIGdseXBoV2lkdGgsIHlQb3MsIDI1LCBoZWlnaHQpLCB0ZXh0UmVjdHNbMV0uQ0dS
ZWN0VmFsdWUpOyAvLyBoCisgICAgICAgIEVYUEVDVF9FUShDR1JlY3RNYWtlKHggKyAyICogZ2x5
cGhXaWR0aCwgeVBvcywgMjUsIGhlaWdodCksIHRleHRSZWN0c1syXS5DR1JlY3RWYWx1ZSk7IC8v
IGUKKyAgICB9Cit9CisKIC8vIE1BUks6IFRlc3RzIHVzaW5nIHdvcmQgZ3JhbnVsYXJpdHkKIAog
VEVTVChEb2N1bWVudEVkaXRpbmdDb250ZXh0LCBSZXF1ZXN0Rmlyc3RUd29Xb3JkcykK
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>394546</attachid>
            <date>2020-03-25 14:54:31 -0700</date>
            <delta_ts>2020-03-25 14:54:47 -0700</delta_ts>
            <desc>To Land</desc>
            <filename>bug-209493-20200325145431.patch</filename>
            <type>text/plain</type>
            <size>6943</size>
            <attacher name="Daniel Bates">dbates</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjU4OTkzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCmluZGV4IDZmNjViNzAwZDBkMTY1NDdl
YjA1MDEzZDgwZmVhZTIyNjU0ODRmZDMuLjRhZGNlYzI4MWQ3YjE3YTMwYThlOTcyMDJhN2E1MWNi
MjFlOTJiZmUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJj
ZS9XZWJLaXQvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTcgQEAKKzIwMjAtMDMtMjUgIERhbmllbCBC
YXRlcyAgPGRhYmF0ZXNAYXBwbGUuY29tPgorCisgICAgICAgIEVsZW1lbnQgY29udGV4dCBjaGFy
YWN0ZXIgcmVjdHMgbWF5IGJlIGluIHdyb25nIGNvb3JkaW5hdGUgc3lzdGVtCisgICAgICAgIGh0
dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMDk0OTMKKyAgICAgICAgPHJk
YXI6Ly9wcm9ibGVtLzYwODQwMjYxPgorCisgICAgICAgIFJldmlld2VkIGJ5IFdlbnNvbiBIc2ll
aC4KKworICAgICAgICBDb252ZXJ0IHRoZSBjaGFyYWN0ZXIgcmVjdHMgZnJvbSBjb250ZW50IHZp
ZXcgY29vcmRpbmF0ZXMgdG8gcm9vdCB2aWV3IGNvb3JkaW5hdGVzCisgICAgICAgIGFzIHRoYXQg
aXMgdGhlIGNvb3JkaW5hdGUgc3lzdGVtIGNhbGxlcnMgb2YgLXJlcXVlc3REb2N1bWVudENvbnRl
eHQgZXhwZWN0LgorCisgICAgICAgICogV2ViUHJvY2Vzcy9XZWJQYWdlL2lvcy9XZWJQYWdlSU9T
Lm1tOgorICAgICAgICAoV2ViS2l0OjpXZWJQYWdlOjpyZXF1ZXN0RG9jdW1lbnRFZGl0aW5nQ29u
dGV4dCk6CisKIDIwMjAtMDMtMjUgIERhbmllbCBCYXRlcyAgPGRhYmF0ZXNAYXBwbGUuY29tPgog
CiAgICAgICAgIFtpT1NdIFNob3VsZCBzaG93IGlucHV0IHZpZXcgd2hlbiBiZWNhbWUgZmlyc3Qg
cmVzcG9uZGVyIGlmIGtleWJvYXJkIHdhcyBzaG93aW5nIHdoZW4gdGhlIHZpZXcgd2FzIHJlc2ln
bmVkCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViUGFnZS9pb3MvV2Vi
UGFnZUlPUy5tbSBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQYWdlL2lvcy9XZWJQYWdl
SU9TLm1tCmluZGV4IDBmMjMxNjJmMDZmZGM0OTU5NGE0OWI4ZTcxMDljMWJiYTRlYjEwZWEuLjc0
OWI0YjM1ZDBhODg4ODUyYTEzMDAxOTgzYWYzMTdiMGJkYmVlNDAgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQYWdlL2lvcy9XZWJQYWdlSU9TLm1tCisrKyBiL1NvdXJj
ZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQYWdlL2lvcy9XZWJQYWdlSU9TLm1tCkBAIC00MjU3LDgg
KzQyNTcsMTEgQEAgdm9pZCBXZWJQYWdlOjpyZXF1ZXN0RG9jdW1lbnRFZGl0aW5nQ29udGV4dChE
b2N1bWVudEVkaXRpbmdDb250ZXh0UmVxdWVzdCByZXF1ZXMKICAgICAgICAgdW5zaWduZWQgb2Zm
c2V0U29GYXIgPSBzdGFydE9mZnNldDsKICAgICAgICAgY29uc3QgaW50IHN0cmlkZSA9IDE7CiAg
ICAgICAgIHdoaWxlICghaXRlcmF0b3IuYXRFbmQoKSkgewotICAgICAgICAgICAgaWYgKCFpdGVy
YXRvci50ZXh0KCkuaXNFbXB0eSgpKQotICAgICAgICAgICAgICAgIHJlY3RzLmFwcGVuZCh7IGNy
ZWF0ZUxpdmVSYW5nZShpdGVyYXRvci5yYW5nZSgpKS0+YWJzb2x1dGVCb3VuZGluZ0JveChSYW5n
ZTo6Qm91bmRpbmdSZWN0QmVoYXZpb3I6Oklnbm9yZUVtcHR5VGV4dFNlbGVjdGlvbnMpLCB7IG9m
ZnNldFNvRmFyKyssIHN0cmlkZSB9IH0pOworICAgICAgICAgICAgaWYgKCFpdGVyYXRvci50ZXh0
KCkuaXNFbXB0eSgpKSB7CisgICAgICAgICAgICAgICAgYXV0byBjdXJyZW50UmFuZ2UgPSBjcmVh
dGVMaXZlUmFuZ2UoaXRlcmF0b3IucmFuZ2UoKSk7CisgICAgICAgICAgICAgICAgYXV0byBhYnNv
bHV0ZUJvdW5kaW5nQm94ID0gY3VycmVudFJhbmdlLT5hYnNvbHV0ZUJvdW5kaW5nQm94KFJhbmdl
OjpCb3VuZGluZ1JlY3RCZWhhdmlvcjo6SWdub3JlRW1wdHlUZXh0U2VsZWN0aW9ucyk7CisgICAg
ICAgICAgICAgICAgcmVjdHMuYXBwZW5kKHsgY3VycmVudFJhbmdlLT5vd25lckRvY3VtZW50KCku
dmlldygpLT5jb250ZW50c1RvUm9vdFZpZXcoYWJzb2x1dGVCb3VuZGluZ0JveCksIHsgb2Zmc2V0
U29GYXIrKywgc3RyaWRlIH0gfSk7CisgICAgICAgICAgICB9CiAgICAgICAgICAgICBpdGVyYXRv
ci5hZHZhbmNlKHN0cmlkZSk7CiAgICAgICAgIH0KICAgICAgICAgcmV0dXJuIHJlY3RzOwpkaWZm
IC0tZ2l0IGEvVG9vbHMvQ2hhbmdlTG9nIGIvVG9vbHMvQ2hhbmdlTG9nCmluZGV4IDAyNmY1YWFm
YzgzOTMzMmRmMGJiZTZiYmI3ZjZjOTkwNmM0ZWI2MWUuLmQxZTY5NmFjMWY0ZmIxMGU1NzU0ZWJj
OWYzYWJjZDUzYWY5NmZhNTggMTAwNjQ0Ci0tLSBhL1Rvb2xzL0NoYW5nZUxvZworKysgYi9Ub29s
cy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNiBAQAorMjAyMC0wMy0yNSAgRGFuaWVsIEJhdGVzICA8
ZGFiYXRlc0BhcHBsZS5jb20+CisKKyAgICAgICAgRWxlbWVudCBjb250ZXh0IGNoYXJhY3RlciBy
ZWN0cyBtYXkgYmUgaW4gd3JvbmcgY29vcmRpbmF0ZSBzeXN0ZW0KKyAgICAgICAgaHR0cHM6Ly9i
dWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIwOTQ5MworICAgICAgICA8cmRhcjovL3By
b2JsZW0vNjA4NDAyNjE+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgV2Vuc29uIEhzaWVoLgorCisg
ICAgICAgIEFkZCBzb21lIHRlc3RzLgorCisgICAgICAgICogVGVzdFdlYktpdEFQSS9UZXN0cy9X
ZWJLaXRDb2NvYS9Eb2N1bWVudEVkaXRpbmdDb250ZXh0Lm1tOgorICAgICAgICAoVEVTVCk6CisK
IDIwMTktMTAtMDIgIERhbmllbCBCYXRlcyAgPGRhYmF0ZXNAYXBwbGUuY29tPgogCiAgICAgICAg
IFtsbGRiLXdlYmtpdF0gQWRkIHN1cHBvcnQgZm9yIHByZXR0eS1wcmludGluZyBjb21wbGV4IGJp
dG1hc2tzIApkaWZmIC0tZ2l0IGEvVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJLaXRDb2Nv
YS9Eb2N1bWVudEVkaXRpbmdDb250ZXh0Lm1tIGIvVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9X
ZWJLaXRDb2NvYS9Eb2N1bWVudEVkaXRpbmdDb250ZXh0Lm1tCmluZGV4IDE0M2FmOGI5OTY1ZjM3
YjcxNzhjOTRhODY5NDZkOTQwNjJlNGRiZWQuLmEzOWQwZjNmZGM5MDI4NzliYjdjOWI0OWQ5NWUw
OGU1NjZjZjlhY2QgMTAwNjQ0Ci0tLSBhL1Rvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0
Q29jb2EvRG9jdW1lbnRFZGl0aW5nQ29udGV4dC5tbQorKysgYi9Ub29scy9UZXN0V2ViS2l0QVBJ
L1Rlc3RzL1dlYktpdENvY29hL0RvY3VtZW50RWRpdGluZ0NvbnRleHQubW0KQEAgLTUxMyw2ICs1
MTMsNjQgQEAgVEVTVChEb2N1bWVudEVkaXRpbmdDb250ZXh0LCBSZXF1ZXN0UmVjdHNJblRleHRB
cmVhQWNyb3NzV29yZFdyYXBwZWRMaW5lKQogICAgIH0KIH0KIAorVEVTVChEb2N1bWVudEVkaXRp
bmdDb250ZXh0LCBSZXF1ZXN0UmVjdHNJblRleHRBcmVhSW5zaWRlSUZyYW1lKQoreworICAgIGF1
dG8gd2ViVmlldyA9IGFkb3B0TlMoW1tUZXN0V0tXZWJWaWV3IGFsbG9jXSBpbml0V2l0aEZyYW1l
Ok5TTWFrZVJlY3QoMCwgMCwgODAwLCA2MDApXSk7CisgICAgLy8gVXNlICJwYWRkaW5nOiAwIiBm
b3IgdGhlIDx0ZXh0YXJlYT4gYXMgdGhlIGRlZmF1bHQgdXNlci1hZ2VudCBzdHlsZXNoZWV0IGNh
biBlZmZlY3QgdGV4dCB3cmFwcGluZy4KKyAgICBbd2ViVmlldyBzeW5jaHJvbm91c2x5TG9hZEhU
TUxTdHJpbmc6YXBwbHlBaGVtU3R5bGUoW05TU3RyaW5nIHN0cmluZ1dpdGhGb3JtYXQ6QCI8aWZy
YW1lIHNyY2RvYz1cIiVAXCIgc3R5bGU9J3Bvc2l0aW9uOiBhYnNvbHV0ZTsgbGVmdDogMWVtOyB0
b3A6IDFlbTsgYm9yZGVyOiBub25lJz48L2lmcmFtZT4iLCBhcHBseUFoZW1TdHlsZShAIjx0ZXh0
YXJlYSBpZD0ndGVzdCcgc3R5bGU9J3BhZGRpbmc6IDAnPlRoZSBxdWljayBicm93biBmb3gganVt
cHMgb3ZlciB0aGUgbGF6eSBkb2cuPC90ZXh0YXJlYT48c2NyaXB0PmxldCB0ZXh0YXJlYSA9IGRv
Y3VtZW50LmdldEVsZW1lbnRCeUlkKCd0ZXN0Jyk7IHRleHRhcmVhLmZvY3VzKCk7IHRleHRhcmVh
LnNldFNlbGVjdGlvblJhbmdlKDAsIDApOyAvKiBQbGFjZSBjYXJldCBhdCB0aGUgYmVnaW5uaW5n
IG9mIHRoZSBmaWVsZC4gKi88L3NjcmlwdD4iKV0pXTsKKworICAgIGF1dG8gKmNvbnRleHQgPSBb
d2ViVmlldyBzeW5jaHJvbm91c2x5UmVxdWVzdERvY3VtZW50Q29udGV4dDptYWtlUmVxdWVzdChV
SVdLRG9jdW1lbnRSZXF1ZXN0VGV4dCB8IFVJV0tEb2N1bWVudFJlcXVlc3RSZWN0cywgVUlUZXh0
R3JhbnVsYXJpdHlXb3JkLCAxKV07CisgICAgRVhQRUNUX05PVF9OVUxMKGNvbnRleHQpOworICAg
IEVYUEVDVF9OVUxMKGNvbnRleHQuY29udGV4dEJlZm9yZSk7CisgICAgRVhQRUNUX05TU1RSSU5H
X0VRKCJUaGUiLCBjb250ZXh0LmNvbnRleHRBZnRlcik7CisgICAgYXV0byAqdGV4dFJlY3RzID0g
W2NvbnRleHQgdGV4dFJlY3RzXTsKKyAgICBFWFBFQ1RfRVEoM1UsIHRleHRSZWN0cy5jb3VudCk7
CisKKyNpZiBQTEFURk9STShNQUNDQVRBTFlTVCkKKyAgICBjb25zdCBzaXplX3QgeVBvcyA9IDI3
OworICAgIGNvbnN0IHNpemVfdCBoZWlnaHQgPSAyNjsKKyNlbHNlCisgICAgY29uc3Qgc2l6ZV90
IHlQb3MgPSAyODsKKyAgICBjb25zdCBzaXplX3QgaGVpZ2h0ID0gMjU7CisjZW5kaWYKKworICAg
IGlmICh0ZXh0UmVjdHMuY291bnQgPj0gMykgeworICAgICAgICBDR0Zsb2F0IHggPSAyODsKKyAg
ICAgICAgRVhQRUNUX0VRKENHUmVjdE1ha2UoeCArIDAgKiBnbHlwaFdpZHRoLCB5UG9zLCAyNSwg
aGVpZ2h0KSwgdGV4dFJlY3RzWzBdLkNHUmVjdFZhbHVlKTsgLy8gVAorICAgICAgICBFWFBFQ1Rf
RVEoQ0dSZWN0TWFrZSh4ICsgMSAqIGdseXBoV2lkdGgsIHlQb3MsIDI1LCBoZWlnaHQpLCB0ZXh0
UmVjdHNbMV0uQ0dSZWN0VmFsdWUpOyAvLyBoCisgICAgICAgIEVYUEVDVF9FUShDR1JlY3RNYWtl
KHggKyAyICogZ2x5cGhXaWR0aCwgeVBvcywgMjUsIGhlaWdodCksIHRleHRSZWN0c1syXS5DR1Jl
Y3RWYWx1ZSk7IC8vIGUKKyAgICB9Cit9CisKK1RFU1QoRG9jdW1lbnRFZGl0aW5nQ29udGV4dCwg
UmVxdWVzdFJlY3RzSW5UZXh0QXJlYUluc2lkZVNjcm9sbGVkSUZyYW1lKQoreworICAgIGF1dG8g
d2ViVmlldyA9IGFkb3B0TlMoW1tUZXN0V0tXZWJWaWV3IGFsbG9jXSBpbml0V2l0aEZyYW1lOk5T
TWFrZVJlY3QoMCwgMCwgODAwLCA2MDApXSk7CisgICAgLy8gVXNlICJwYWRkaW5nOiAwIiBmb3Ig
dGhlIDx0ZXh0YXJlYT4gYXMgdGhlIGRlZmF1bHQgdXNlci1hZ2VudCBzdHlsZXNoZWV0IGNhbiBl
ZmZlY3QgdGV4dCB3cmFwcGluZy4KKyAgICBbd2ViVmlldyBzeW5jaHJvbm91c2x5TG9hZEhUTUxT
dHJpbmc6YXBwbHlBaGVtU3R5bGUoW05TU3RyaW5nIHN0cmluZ1dpdGhGb3JtYXQ6QCI8aWZyYW1l
IHNyY2RvYz1cIiVAXCIgc3R5bGU9J3Bvc2l0aW9uOiBhYnNvbHV0ZTsgbGVmdDogMWVtOyB0b3A6
IDFlbTsgYm9yZGVyOiBub25lJyBoZWlnaHQ9JzIwMCc+PC9pZnJhbWU+IiwgYXBwbHlBaGVtU3R5
bGUoQCI8Ym9keSBzdHlsZT0naGVpZ2h0OiAxMDAwcHgnPjxkaXYgc3R5bGU9J3dpZHRoOiAyMDBw
eDsgaGVpZ2h0OiAyMDBweCc+PC9kaXY+PHRleHRhcmVhIGlkPSd0ZXN0JyBzdHlsZT0ncGFkZGlu
ZzogMCc+VGhlIHF1aWNrIGJyb3duIGZveCBqdW1wcyBvdmVyIHRoZSBsYXp5IGRvZy48L3RleHRh
cmVhPjxzY3JpcHQ+bGV0IHRleHRhcmVhID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3Rlc3Qn
KTsgdGV4dGFyZWEuZm9jdXMoKTsgdGV4dGFyZWEuc2V0U2VsZWN0aW9uUmFuZ2UoMCwgMCk7IC8q
IFBsYWNlIGNhcmV0IGF0IHRoZSBiZWdpbm5pbmcgb2YgdGhlIGZpZWxkLiAqLyB3aW5kb3cuc2Ny
b2xsVG8oMCwgMjAwKTsgLyogU2Nyb2xsIDx0ZXh0YXJlYT4gdG8gdGhlIHRvcC4gKi88L3Njcmlw
dD48L2JvZHk+IildKV07CisKKyAgICBhdXRvICpjb250ZXh0ID0gW3dlYlZpZXcgc3luY2hyb25v
dXNseVJlcXVlc3REb2N1bWVudENvbnRleHQ6bWFrZVJlcXVlc3QoVUlXS0RvY3VtZW50UmVxdWVz
dFRleHQgfCBVSVdLRG9jdW1lbnRSZXF1ZXN0UmVjdHMsIFVJVGV4dEdyYW51bGFyaXR5V29yZCwg
MSldOworICAgIEVYUEVDVF9OT1RfTlVMTChjb250ZXh0KTsKKyAgICBFWFBFQ1RfTlVMTChjb250
ZXh0LmNvbnRleHRCZWZvcmUpOworICAgIEVYUEVDVF9OU1NUUklOR19FUSgiVGhlIiwgY29udGV4
dC5jb250ZXh0QWZ0ZXIpOworICAgIGF1dG8gKnRleHRSZWN0cyA9IFtjb250ZXh0IHRleHRSZWN0
c107CisgICAgRVhQRUNUX0VRKDNVLCB0ZXh0UmVjdHMuY291bnQpOworCisjaWYgUExBVEZPUk0o
TUFDQ0FUQUxZU1QpCisgICAgY29uc3Qgc2l6ZV90IHlQb3MgPSAyNzsKKyAgICBjb25zdCBzaXpl
X3QgaGVpZ2h0ID0gMjY7CisjZWxzZQorICAgIGNvbnN0IHNpemVfdCB5UG9zID0gMjg7CisgICAg
Y29uc3Qgc2l6ZV90IGhlaWdodCA9IDI1OworI2VuZGlmCisKKyAgICBpZiAodGV4dFJlY3RzLmNv
dW50ID49IDMpIHsKKyAgICAgICAgQ0dGbG9hdCB4ID0gMjg7CisgICAgICAgIEVYUEVDVF9FUShD
R1JlY3RNYWtlKHggKyAwICogZ2x5cGhXaWR0aCwgeVBvcywgMjUsIGhlaWdodCksIHRleHRSZWN0
c1swXS5DR1JlY3RWYWx1ZSk7IC8vIFQKKyAgICAgICAgRVhQRUNUX0VRKENHUmVjdE1ha2UoeCAr
IDEgKiBnbHlwaFdpZHRoLCB5UG9zLCAyNSwgaGVpZ2h0KSwgdGV4dFJlY3RzWzFdLkNHUmVjdFZh
bHVlKTsgLy8gaAorICAgICAgICBFWFBFQ1RfRVEoQ0dSZWN0TWFrZSh4ICsgMiAqIGdseXBoV2lk
dGgsIHlQb3MsIDI1LCBoZWlnaHQpLCB0ZXh0UmVjdHNbMl0uQ0dSZWN0VmFsdWUpOyAvLyBlCisg
ICAgfQorfQorCiAvLyBNQVJLOiBUZXN0cyB1c2luZyB3b3JkIGdyYW51bGFyaXR5CiAKIFRFU1Qo
RG9jdW1lbnRFZGl0aW5nQ29udGV4dCwgUmVxdWVzdEZpcnN0VHdvV29yZHMpCg==
</data>

          </attachment>
      

    </bug>

</bugzilla>