<?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>215329</bug_id>
          
          <creation_ts>2020-08-10 12:19:46 -0700</creation_ts>
          <short_desc>Add quirk to force touch events on mail.yahoo.com</short_desc>
          <delta_ts>2023-08-24 23:30:42 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>New Bugs</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <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>
          
          <blocked>260700</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Devin Rousso">hi</reporter>
          <assigned_to name="Devin Rousso">hi</assigned_to>
          <cc>cdumez</cc>
    
    <cc>darin</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>hi</cc>
    
    <cc>japhet</cc>
    
    <cc>thorton</cc>
    
    <cc>webkit-bug-importer</cc>
    
    <cc>wenson_hsieh</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1679140</commentid>
    <comment_count>0</comment_count>
    <who name="Devin Rousso">hi</who>
    <bug_when>2020-08-10 12:19:46 -0700</bug_when>
    <thetext>&lt;https://mail.yahoo.com/&gt; serves the mobile site even in desktop browsing &quot;mode&quot;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1679141</commentid>
    <comment_count>1</comment_count>
    <who name="Devin Rousso">hi</who>
    <bug_when>2020-08-10 12:20:00 -0700</bug_when>
    <thetext>&lt;rdar://problem/59824469&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1679144</commentid>
    <comment_count>2</comment_count>
      <attachid>406317</attachid>
    <who name="Devin Rousso">hi</who>
    <bug_when>2020-08-10 12:22:30 -0700</bug_when>
    <thetext>Created attachment 406317
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1679148</commentid>
    <comment_count>3</comment_count>
      <attachid>406317</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2020-08-10 12:29:09 -0700</bug_when>
    <thetext>Comment on attachment 406317
Patch

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

&gt; Source/WebCore/page/Quirks.cpp:501
&gt; +    auto&amp; url = m_document-&gt;topDocument().url();
&gt; +    auto host = url.host().toString();
&gt; +    if (host.startsWithIgnoringASCIICase(&quot;mail.&quot;) &amp;&amp; topPrivatelyControlledDomain(host).startsWith(&quot;yahoo.&quot;))
&gt; +        return true;
&gt; +
&gt; +    return false;

Can do this more efficiently like so:

    auto host = m_document-&gt;topDocument().url().host();
    return startsWithLettersIgnoringASCIICase(host, &quot;mail.&quot;) &amp;&amp; topPrivatelyControlledDomain(host.toString()).startsWith(&quot;yahoo.&quot;);

Also, I think we should write an isYahooMail helper function so we can share this logic with Quirks::shouldAvoidPastingImagesAsWebContent. Also, that uses a data member to cache the result. Should we be doing that here too? Or sharing a single one?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1679153</commentid>
    <comment_count>4</comment_count>
      <attachid>406317</attachid>
    <who name="Tim Horton">thorton</who>
    <bug_when>2020-08-10 12:34:52 -0700</bug_when>
    <thetext>Comment on attachment 406317
Patch

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

&gt; Source/WebCore/ChangeLog:12
&gt; +        &lt;https://mail.yahoo.com/&gt; serves the mobile site even in desktop browsing &quot;mode&quot;.

There&apos;s a bit of missing context here: that the mobile site doesn&apos;t work well with mouse events in a particular case.

&gt; Source/WebKit/WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:570
&gt; +#if ENABLE(IOS_TOUCH_EVENTS)
&gt; +    if (mouseEventPolicy == MouseEventPolicy::Default &amp;&amp; document-&gt;quirks().shouldSynthesizeTouchEvents())
&gt; +        mouseEventPolicy = MouseEventPolicy::SynthesizeTouchEvents;
&gt; +#endif

Is there a reason we can&apos;t tuck this away in the DocumentLoader mouseEventPolicy() getter instead?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1679198</commentid>
    <comment_count>5</comment_count>
      <attachid>406317</attachid>
    <who name="Devin Rousso">hi</who>
    <bug_when>2020-08-10 14:08:10 -0700</bug_when>
    <thetext>Comment on attachment 406317
Patch

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

&gt;&gt; Source/WebCore/page/Quirks.cpp:501
&gt;&gt; +    return false;
&gt; 
&gt; Can do this more efficiently like so:
&gt; 
&gt;     auto host = m_document-&gt;topDocument().url().host();
&gt;     return startsWithLettersIgnoringASCIICase(host, &quot;mail.&quot;) &amp;&amp; topPrivatelyControlledDomain(host.toString()).startsWith(&quot;yahoo.&quot;);
&gt; 
&gt; Also, I think we should write an isYahooMail helper function so we can share this logic with Quirks::shouldAvoidPastingImagesAsWebContent. Also, that uses a data member to cache the result. Should we be doing that here too? Or sharing a single one?

A shared function is a good idea I&apos;ll do that.

As far as saving this to a variable, I was thinking that this is only called during top-level/frame navigations so it wouldn&apos;t happen that often, but perhaps caching it is a good idea.

&gt;&gt; Source/WebKit/WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:570
&gt;&gt; +#endif
&gt; 
&gt; Is there a reason we can&apos;t tuck this away in the DocumentLoader mouseEventPolicy() getter instead?

I was trying to follow what `DocumentLoader::simulatedMouseEventsDispatchPolicy` does, but I think your idea is probably cleaner.  I&apos;ll change it.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1679242</commentid>
    <comment_count>6</comment_count>
      <attachid>406342</attachid>
    <who name="Devin Rousso">hi</who>
    <bug_when>2020-08-10 16:22:08 -0700</bug_when>
    <thetext>Created attachment 406342
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1679278</commentid>
    <comment_count>7</comment_count>
      <attachid>406351</attachid>
    <who name="Devin Rousso">hi</who>
    <bug_when>2020-08-10 17:50:43 -0700</bug_when>
    <thetext>Created attachment 406351
Patch

fix win build</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1679289</commentid>
    <comment_count>8</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2020-08-10 18:48:14 -0700</bug_when>
    <thetext>Committed r265485: &lt;https://trac.webkit.org/changeset/265485&gt;

All reviewed patches have been landed. Closing bug and clearing flags on attachment 406351.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>406317</attachid>
            <date>2020-08-10 12:22:30 -0700</date>
            <delta_ts>2020-08-10 16:22:07 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>215329.diff</filename>
            <type>text/plain</type>
            <size>5383</size>
            <attacher name="Devin Rousso">hi</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZwppbmRleCBmODYzNWVmOGQ4NS4uZTNjZWY5Y2JjNGMgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL0NoYW5nZUxvZworKysgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKQEAgLTEs
MyArMSwxNiBAQAorMjAyMC0wOC0wNyAgRGV2aW4gUm91c3NvICA8ZHJvdXNzb0BhcHBsZS5jb20+
CisKKyAgICAgICAgQWRkIHF1aXJrIHRvIGZvcmNlIHRvdWNoIGV2ZW50cyBvbiBtYWlsLnlhaG9v
LmNvbQorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjE1
MzI5CisgICAgICAgIDxyZGFyOi8vcHJvYmxlbS81OTgyNDQ2OT4KKworICAgICAgICBSZXZpZXdl
ZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIHBhZ2UvUXVpcmtzLmg6CisgICAgICAg
ICogcGFnZS9RdWlya3MuY3BwOgorICAgICAgICAoV2ViQ29yZTo6UXVpcmtzOjpzaG91bGRTeW50
aGVzaXplVG91Y2hFdmVudHMgY29uc3QpOiBBZGRlZC4KKyAgICAgICAgPGh0dHBzOi8vbWFpbC55
YWhvby5jb20vPiBzZXJ2ZXMgdGhlIG1vYmlsZSBzaXRlIGV2ZW4gaW4gZGVza3RvcCBicm93c2lu
ZyAibW9kZSIuCisKIDIwMjAtMDgtMDYgIENocmlzIER1bWV6ICA8Y2R1bWV6QGFwcGxlLmNvbT4K
IAogICAgICAgICBNZWRpYVN0cmVhbUF1ZGlvRGVzdGluYXRpb25Ob2RlIHNob3VsZCBoYXZlIGEg
Y29uc3RydWN0b3IKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUXVpcmtzLmNwcCBi
L1NvdXJjZS9XZWJDb3JlL3BhZ2UvUXVpcmtzLmNwcAppbmRleCBjMzcyMTk2ODI0My4uYjBmODI3
ZDRlNGYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUXVpcmtzLmNwcAorKysgYi9T
b3VyY2UvV2ViQ29yZS9wYWdlL1F1aXJrcy5jcHAKQEAgLTQ4Nyw2ICs0ODcsMjEgQEAgYm9vbCBR
dWlya3M6OnNob3VsZFByZXZlbnREaXNwYXRjaE9mVG91Y2hFdmVudChjb25zdCBBdG9tU3RyaW5n
JiB0b3VjaEV2ZW50VHlwZSwKIAogI2VuZGlmCiAKKyNpZiBFTkFCTEUoSU9TX1RPVUNIX0VWRU5U
UykKK2Jvb2wgUXVpcmtzOjpzaG91bGRTeW50aGVzaXplVG91Y2hFdmVudHMoKSBjb25zdAorewor
ICAgIGlmICghbmVlZHNRdWlya3MoKSkKKyAgICAgICAgcmV0dXJuIGZhbHNlOworCisgICAgYXV0
byYgdXJsID0gbV9kb2N1bWVudC0+dG9wRG9jdW1lbnQoKS51cmwoKTsKKyAgICBhdXRvIGhvc3Qg
PSB1cmwuaG9zdCgpLnRvU3RyaW5nKCk7CisgICAgaWYgKGhvc3Quc3RhcnRzV2l0aElnbm9yaW5n
QVNDSUlDYXNlKCJtYWlsLiIpICYmIHRvcFByaXZhdGVseUNvbnRyb2xsZWREb21haW4oaG9zdCku
c3RhcnRzV2l0aCgieWFob28uIikpCisgICAgICAgIHJldHVybiB0cnVlOworCisgICAgcmV0dXJu
IGZhbHNlOworfQorI2VuZGlmCisKIGJvb2wgUXVpcmtzOjpzaG91bGRBdm9pZFJlc2l6aW5nV2hl
bklucHV0Vmlld0JvdW5kc0NoYW5nZSgpIGNvbnN0CiB7CiAgICAgaWYgKCFuZWVkc1F1aXJrcygp
KQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGFnZS9RdWlya3MuaCBiL1NvdXJjZS9XZWJD
b3JlL3BhZ2UvUXVpcmtzLmgKaW5kZXggNGJjYzIwZDVkMWIuLjNiZmY5YWQ5MGE3IDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL1F1aXJrcy5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3Bh
Z2UvUXVpcmtzLmgKQEAgLTU5LDYgKzU5LDkgQEAgcHVibGljOgogICAgIGJvb2wgc2hvdWxkTWFr
ZVRvdWNoRXZlbnROb25DYW5jZWxhYmxlRm9yVGFyZ2V0KEV2ZW50VGFyZ2V0KikgY29uc3Q7CiAg
ICAgYm9vbCBzaG91bGRQcmV2ZW50UG9pbnRlck1lZGlhUXVlcnlGcm9tRXZhbHVhdGluZ1RvQ29h
cnNlKCkgY29uc3Q7CiAgICAgYm9vbCBzaG91bGRQcmV2ZW50RGlzcGF0Y2hPZlRvdWNoRXZlbnQo
Y29uc3QgQXRvbVN0cmluZyYsIEV2ZW50VGFyZ2V0KikgY29uc3Q7CisjZW5kaWYKKyNpZiBFTkFC
TEUoSU9TX1RPVUNIX0VWRU5UUykKKyAgICBXRUJDT1JFX0VYUE9SVCBib29sIHNob3VsZFN5bnRo
ZXNpemVUb3VjaEV2ZW50cygpIGNvbnN0OwogI2VuZGlmCiAgICAgYm9vbCBzaG91bGREaXNhYmxl
UG9pbnRlckV2ZW50c1F1aXJrKCkgY29uc3Q7CiAgICAgYm9vbCBuZWVkc0lucHV0TW9kZU5vbmVJ
bXBsaWNpdGx5KGNvbnN0IEhUTUxFbGVtZW50JikgY29uc3Q7CmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViS2l0L0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCmluZGV4IGUxOTY4MWU4
YmI2Li5jOTEzMzE3MzJmMSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9DaGFuZ2VMb2cKKysr
IGIvU291cmNlL1dlYktpdC9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNSBAQAorMjAyMC0wOC0wNyAg
RGV2aW4gUm91c3NvICA8ZHJvdXNzb0BhcHBsZS5jb20+CisKKyAgICAgICAgQWRkIHF1aXJrIHRv
IGZvcmNlIHRvdWNoIGV2ZW50cyBvbiBtYWlsLnlhaG9vLmNvbQorICAgICAgICBodHRwczovL2J1
Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjE1MzI5CisgICAgICAgIDxyZGFyOi8vcHJv
YmxlbS81OTgyNDQ2OT4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKwor
ICAgICAgICAqIFdlYlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQvV2ViRnJhbWVMb2FkZXJDbGllbnQu
Y3BwOgorICAgICAgICAoV2ViS2l0OjpXZWJGcmFtZUxvYWRlckNsaWVudDo6ZGlzcGF0Y2hEaWRD
b21taXRMb2FkKToKKyAgICAgICAgQ2hhbmdlIHRoZSBgTW91c2VFdmVudFBvbGljeWAgYmFzZWQg
b24gdGhpcyBxdWlyaywgYnV0IG9ubHkgaWYgaXQncyBgRGVmYXVsdGAuCisKIDIwMjAtMDgtMDYg
IERhdmlkIEtpbHplciAgPGRka2lsemVyQGFwcGxlLmNvbT4KIAogICAgICAgICBXVEY6Om1ha2VT
dHJpbmcoKSBzaG91bGQgaGFuZGxlIGVudW0gdmFsdWVzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
S2l0L1dlYlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQvV2ViRnJhbWVMb2FkZXJDbGllbnQuY3BwIGIv
U291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L1dlYkZyYW1lTG9hZGVyQ2xp
ZW50LmNwcAppbmRleCBiNTY1NzFiYWJiOC4uODNkNTQ0YmZiM2QgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9XZWJGcmFtZUxvYWRlckNsaWVudC5j
cHAKKysrIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L1dlYkZyYW1l
TG9hZGVyQ2xpZW50LmNwcApAQCAtODQsNiArODQsNyBAQAogI2luY2x1ZGUgPFdlYkNvcmUvUGx1
Z2luRG9jdW1lbnQuaD4KICNpbmNsdWRlIDxXZWJDb3JlL1BvbGljeUNoZWNrZXIuaD4KICNpbmNs
dWRlIDxXZWJDb3JlL1Byb2dyZXNzVHJhY2tlci5oPgorI2luY2x1ZGUgPFdlYkNvcmUvUXVpcmtz
Lmg+CiAjaW5jbHVkZSA8V2ViQ29yZS9SZXNvdXJjZUVycm9yLmg+CiAjaW5jbHVkZSA8V2ViQ29y
ZS9SZXNvdXJjZVJlcXVlc3QuaD4KICNpbmNsdWRlIDxXZWJDb3JlL1J1bnRpbWVBcHBsaWNhdGlv
bkNoZWNrcy5oPgpAQCAtNTU5LDkgKzU2MCwxNyBAQCB2b2lkIFdlYkZyYW1lTG9hZGVyQ2xpZW50
OjpkaXNwYXRjaERpZENvbW1pdExvYWQoT3B0aW9uYWw8SGFzSW5zZWN1cmVDb250ZW50PiBoYQog
ICAgIGJvb2wgdXNlZExlZ2FjeVRMUyA9IGRvY3VtZW50TG9hZGVyLnJlc3BvbnNlKCkudXNlZExl
Z2FjeVRMUygpOwogICAgIGlmICghdXNlZExlZ2FjeVRMUyAmJiB1c2VkTGVnYWN5VExTRnJvbVBh
Z2VDYWNoZSkKICAgICAgICAgdXNlZExlZ2FjeVRMUyA9IHVzZWRMZWdhY3lUTFNGcm9tUGFnZUNh
Y2hlID09IFVzZWRMZWdhY3lUTFM6OlllczsKKworICAgIGF1dG8qIGRvY3VtZW50ID0gbV9mcmFt
ZS0+Y29yZUZyYW1lKCktPmRvY3VtZW50KCk7CisKKyAgICBhdXRvIG1vdXNlRXZlbnRQb2xpY3kg
PSBkb2N1bWVudExvYWRlci5tb3VzZUV2ZW50UG9saWN5KCk7CisjaWYgRU5BQkxFKElPU19UT1VD
SF9FVkVOVFMpCisgICAgaWYgKG1vdXNlRXZlbnRQb2xpY3kgPT0gTW91c2VFdmVudFBvbGljeTo6
RGVmYXVsdCAmJiBkb2N1bWVudC0+cXVpcmtzKCkuc2hvdWxkU3ludGhlc2l6ZVRvdWNoRXZlbnRz
KCkpCisgICAgICAgIG1vdXNlRXZlbnRQb2xpY3kgPSBNb3VzZUV2ZW50UG9saWN5OjpTeW50aGVz
aXplVG91Y2hFdmVudHM7CisjZW5kaWYKICAgICAKICAgICAvLyBOb3RpZnkgdGhlIFVJUHJvY2Vz
cy4KLSAgICB3ZWJQYWdlLT5zZW5kKE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OkRpZENvbW1pdExv
YWRGb3JGcmFtZShtX2ZyYW1lLT5mcmFtZUlEKCksIG1fZnJhbWUtPmluZm8oKSwgZG9jdW1lbnRM
b2FkZXIucmVxdWVzdCgpLCBkb2N1bWVudExvYWRlci5uYXZpZ2F0aW9uSUQoKSwgZG9jdW1lbnRM
b2FkZXIucmVzcG9uc2UoKS5taW1lVHlwZSgpLCBtX2ZyYW1lSGFzQ3VzdG9tQ29udGVudFByb3Zp
ZGVyLCBtX2ZyYW1lLT5jb3JlRnJhbWUoKS0+bG9hZGVyKCkubG9hZFR5cGUoKSwgdmFsdWVPckNv
bXB1dGUoZG9jdW1lbnRMb2FkZXIucmVzcG9uc2UoKS5jZXJ0aWZpY2F0ZUluZm8oKSwgW10geyBy
ZXR1cm4gQ2VydGlmaWNhdGVJbmZvKCk7IH0pLCB1c2VkTGVnYWN5VExTLCBtX2ZyYW1lLT5jb3Jl
RnJhbWUoKS0+ZG9jdW1lbnQoKS0+aXNQbHVnaW5Eb2N1bWVudCgpLCBoYXNJbnNlY3VyZUNvbnRl
bnQsIGRvY3VtZW50TG9hZGVyLm1vdXNlRXZlbnRQb2xpY3koKSwgVXNlckRhdGEoV2ViUHJvY2Vz
czo6c2luZ2xldG9uKCkudHJhbnNmb3JtT2JqZWN0c1RvSGFuZGxlcyh1c2VyRGF0YS5nZXQoKSku
Z2V0KCkpKSk7CisgICAgd2ViUGFnZS0+c2VuZChNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpEaWRD
b21taXRMb2FkRm9yRnJhbWUobV9mcmFtZS0+ZnJhbWVJRCgpLCBtX2ZyYW1lLT5pbmZvKCksIGRv
Y3VtZW50TG9hZGVyLnJlcXVlc3QoKSwgZG9jdW1lbnRMb2FkZXIubmF2aWdhdGlvbklEKCksIGRv
Y3VtZW50TG9hZGVyLnJlc3BvbnNlKCkubWltZVR5cGUoKSwgbV9mcmFtZUhhc0N1c3RvbUNvbnRl
bnRQcm92aWRlciwgbV9mcmFtZS0+Y29yZUZyYW1lKCktPmxvYWRlcigpLmxvYWRUeXBlKCksIHZh
bHVlT3JDb21wdXRlKGRvY3VtZW50TG9hZGVyLnJlc3BvbnNlKCkuY2VydGlmaWNhdGVJbmZvKCks
IFtdIHsgcmV0dXJuIENlcnRpZmljYXRlSW5mbygpOyB9KSwgdXNlZExlZ2FjeVRMUywgZG9jdW1l
bnQtPmlzUGx1Z2luRG9jdW1lbnQoKSwgaGFzSW5zZWN1cmVDb250ZW50LCBtb3VzZUV2ZW50UG9s
aWN5LCBVc2VyRGF0YShXZWJQcm9jZXNzOjpzaW5nbGV0b24oKS50cmFuc2Zvcm1PYmplY3RzVG9I
YW5kbGVzKHVzZXJEYXRhLmdldCgpKS5nZXQoKSkpKTsKICAgICB3ZWJQYWdlLT5kaWRDb21taXRM
b2FkKG1fZnJhbWUucHRyKCkpOwogfQogCg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>406342</attachid>
            <date>2020-08-10 16:22:08 -0700</date>
            <delta_ts>2020-08-10 17:50:41 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-215329-20200810162207.patch</filename>
            <type>text/plain</type>
            <size>6479</size>
            <attacher name="Devin Rousso">hi</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZwppbmRleCA3ZWE5MTE3ZWVhZTgxYmY4NjMxNDlhMTY0NTFlYWI5ZTcwMzFkNzM1Li4w
OWRkYWEzYzRiZjBlYmU5Y2FmOWY0ZTdmYzI3NGEzZGM0YmFmODQzIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0x
LDMgKzEsMjcgQEAKKzIwMjAtMDgtMTAgIERldmluIFJvdXNzbyAgPGRyb3Vzc29AYXBwbGUuY29t
PgorCisgICAgICAgIEFkZCBxdWlyayB0byBmb3JjZSB0b3VjaCBldmVudHMgb24gbWFpbC55YWhv
by5jb20KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIx
NTMyOQorICAgICAgICA8cmRhcjovL3Byb2JsZW0vNTk4MjQ0Njk+CisKKyAgICAgICAgUmV2aWV3
ZWQgYnkgRGFyaW4gQWRsZXIgYW5kIFRpbSBIb3J0b24uCisKKyAgICAgICAgPGh0dHBzOi8vbWFp
bC55YWhvby5jb20vPiBzZXJ2ZXMgYSBtb2JpbGUgc2l0ZSBldmVuIGluIGRlc2t0b3AgYnJvd3Np
bmcgIm1vZGUiLCBtZWFuaW5nCisgICAgICAgIHRoYXQgY2VydGFpbiBhY3Rpb25zLCBzdWNoIGFz
IHNlbGVjdGluZyBhbiBhdWZvdGlsbCBjb250YWN0LCBleHBlY3QgbW9iaWxlIGJlaGF2aW9ycywK
KyAgICAgICAgc3VjaCBhcyBtb3VzZSBldmVudHMgYmVpbmcgZGlzcGF0Y2hlZCBhZnRlciB0b3Vj
aCBldmVudHMgcmF0aGVyIHRoYW4gaW5zdGFudGx5IChpbiB0aGUKKyAgICAgICAgY2FzZSBvZiBh
IGNvbm5lY3RlZCB0cmFja3BhZCB3aXRoIGFuIGlQYWQpLiBUaGlzIHF1aXJrIGVuc3VyZXMgYWx3
YXlzIG1vYmlsZSBiZWhhdmlvciBmb3IKKyAgICAgICAgdGhvc2UgYWN0aW9ucywgbWF0Y2hpbmcg
dGhlIGV4cGVjdGF0aW9ucyBvZiA8aHR0cHM6Ly9tYWlsLnlhaG9vLmNvbS8+LgorCisgICAgICAg
ICogcGFnZS9RdWlya3MuaDoKKyAgICAgICAgKiBwYWdlL1F1aXJrcy5jcHA6CisgICAgICAgIChX
ZWJDb3JlOjppc1lhaG9vTWFpbCk6IEFkZGVkLgorICAgICAgICAoV2ViQ29yZTo6UXVpcmtzOjpz
aG91bGRTeW50aGVzaXplVG91Y2hFdmVudHMgY29uc3QpOiBBZGRlZC4KKyAgICAgICAgKFdlYkNv
cmU6OlF1aXJrczo6c2hvdWxkQXZvaWRQYXN0aW5nSW1hZ2VzQXNXZWJDb250ZW50IGNvbnN0KToK
KworICAgICAgICAqIGxvYWRlci9Eb2N1bWVudExvYWRlci5oOgorICAgICAgICAqIGxvYWRlci9E
b2N1bWVudExvYWRlci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpEb2N1bWVudExvYWRlcjo6bW91
c2VFdmVudFBvbGljeSBjb25zdCk6CisKIDIwMjAtMDgtMDkgIFNhaWQgQWJvdS1IYWxsYXdhICA8
c2Fib3VoYWxsYXdhQGFwcGxlLmNvbT4KIAogICAgICAgICBbbWFjT1NdIERyYWcvZHJvcCBhbiBp
bWFnZSBvZiBhIHVuc3VwcG9ydGVkIGZvcm1hdCB0byBhbiBmaWxlIGlucHV0IGVsZW1lbnQgc2hv
dWxkIGNvbnZlcnQgaXQgdG8gYSBzdXBwb3J0ZWQgZm9ybWF0CmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9sb2FkZXIvRG9jdW1lbnRMb2FkZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvbG9hZGVy
L0RvY3VtZW50TG9hZGVyLmNwcAppbmRleCA0MDhhMTNlMzc0YmVjNzhlNjdhYzk5MGI3OGE2Mjgx
MTBlMWViMTMwLi5lOTk0MTMxOTdlMGMxMWJjZjljNjdjYTY2ZjEzMmI3Nzk5ZGRiY2M0IDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvRG9jdW1lbnRMb2FkZXIuY3BwCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL2xvYWRlci9Eb2N1bWVudExvYWRlci5jcHAKQEAgLTcyLDYgKzcyLDcgQEAK
ICNpbmNsdWRlICJQbGF0Zm9ybVN0cmF0ZWdpZXMuaCIKICNpbmNsdWRlICJQb2xpY3lDaGVja2Vy
LmgiCiAjaW5jbHVkZSAiUHJvZ3Jlc3NUcmFja2VyLmgiCisjaW5jbHVkZSAiUXVpcmtzLmgiCiAj
aW5jbHVkZSAiUmVzb3VyY2VIYW5kbGUuaCIKICNpbmNsdWRlICJSZXNvdXJjZUxvYWRPYnNlcnZl
ci5oIgogI2luY2x1ZGUgIlJ1bnRpbWVFbmFibGVkRmVhdHVyZXMuaCIKQEAgLTEyNTQsNiArMTI1
NSwxOSBAQCB2b2lkIERvY3VtZW50TG9hZGVyOjphcHBseVBvbGljaWVzVG9TZXR0aW5ncygpCiAj
ZW5kaWYKIH0KIAorTW91c2VFdmVudFBvbGljeSBEb2N1bWVudExvYWRlcjo6bW91c2VFdmVudFBv
bGljeSgpIGNvbnN0Cit7CisjaWYgRU5BQkxFKElPU19UT1VDSF9FVkVOVFMpCisgICAgaWYgKG1f
bW91c2VFdmVudFBvbGljeSA9PSBNb3VzZUV2ZW50UG9saWN5OjpEZWZhdWx0KSB7CisgICAgICAg
IGlmIChhdXRvKiBkb2N1bWVudCA9IHRoaXMtPmRvY3VtZW50KCkpIHsKKyAgICAgICAgICAgIGlm
IChkb2N1bWVudC0+cXVpcmtzKCkuc2hvdWxkU3ludGhlc2l6ZVRvdWNoRXZlbnRzKCkpCisgICAg
ICAgICAgICAgICAgcmV0dXJuIE1vdXNlRXZlbnRQb2xpY3k6OlN5bnRoZXNpemVUb3VjaEV2ZW50
czsKKyAgICAgICAgfQorICAgIH0KKyNlbmRpZgorICAgIHJldHVybiBtX21vdXNlRXZlbnRQb2xp
Y3k7Cit9CisKIHZvaWQgRG9jdW1lbnRMb2FkZXI6OmF0dGFjaFRvRnJhbWUoRnJhbWUmIGZyYW1l
KQogewogICAgIGlmIChtX2ZyYW1lID09ICZmcmFtZSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL2xvYWRlci9Eb2N1bWVudExvYWRlci5oIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL0RvY3Vt
ZW50TG9hZGVyLmgKaW5kZXggMjZkNWRhODVkM2Q1YTUxZjgyOTNhMjA0ZTUyZmUwZWJlNWVhNWUw
Yy4uYzIxNjc4MjAxNzAxZDNmYThkNDFjOWVmNDVlZTgyNGVkZGZmNjRiZiAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvbG9hZGVyL0RvY3VtZW50TG9hZGVyLmgKKysrIGIvU291cmNlL1dlYkNv
cmUvbG9hZGVyL0RvY3VtZW50TG9hZGVyLmgKQEAgLTMzMSw3ICszMzEsNyBAQCBwdWJsaWM6CiAg
ICAgTGVnYWN5T3ZlcmZsb3dTY3JvbGxpbmdUb3VjaFBvbGljeSBsZWdhY3lPdmVyZmxvd1Njcm9s
bGluZ1RvdWNoUG9saWN5KCkgY29uc3QgeyByZXR1cm4gbV9sZWdhY3lPdmVyZmxvd1Njcm9sbGlu
Z1RvdWNoUG9saWN5OyB9CiAgICAgdm9pZCBzZXRMZWdhY3lPdmVyZmxvd1Njcm9sbGluZ1RvdWNo
UG9saWN5KExlZ2FjeU92ZXJmbG93U2Nyb2xsaW5nVG91Y2hQb2xpY3kgcG9saWN5KSB7IG1fbGVn
YWN5T3ZlcmZsb3dTY3JvbGxpbmdUb3VjaFBvbGljeSA9IHBvbGljeTsgfQogCi0gICAgTW91c2VF
dmVudFBvbGljeSBtb3VzZUV2ZW50UG9saWN5KCkgY29uc3QgeyByZXR1cm4gbV9tb3VzZUV2ZW50
UG9saWN5OyB9CisgICAgV0VCQ09SRV9FWFBPUlQgTW91c2VFdmVudFBvbGljeSBtb3VzZUV2ZW50
UG9saWN5KCkgY29uc3Q7CiAgICAgdm9pZCBzZXRNb3VzZUV2ZW50UG9saWN5KE1vdXNlRXZlbnRQ
b2xpY3kgcG9saWN5KSB7IG1fbW91c2VFdmVudFBvbGljeSA9IHBvbGljeTsgfQogCiAgICAgdm9p
ZCBhZGRTdWJyZXNvdXJjZUxvYWRlcihSZXNvdXJjZUxvYWRlciopOwpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvcGFnZS9RdWlya3MuY3BwIGIvU291cmNlL1dlYkNvcmUvcGFnZS9RdWlya3Mu
Y3BwCmluZGV4IGMzNzIxOTY4MjQzZDE1NzgyNjBlYWM4ZTIzYmJkY2FhNTM1YjhhNjkuLjZlNWQ3
NTNhYzg2NmIxZTViNDkxNWE0ZDZhYzBjNzgzNmMxZTYyYTMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL3BhZ2UvUXVpcmtzLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL1F1aXJrcy5j
cHAKQEAgLTY1LDYgKzY1LDEyIEBAIHN0YXRpYyBpbmxpbmUgT3B0aW9uU2V0PEF1dG9wbGF5UXVp
cms+IGFsbG93ZWRBdXRvcGxheVF1aXJrcyhEb2N1bWVudCYgZG9jdW1lbnQpCiAgICAgcmV0dXJu
IGxvYWRlci0+YWxsb3dlZEF1dG9wbGF5UXVpcmtzKCk7CiB9CiAKK3N0YXRpYyBpbmxpbmUgYm9v
bCBpc1lhaG9vTWFpbChEb2N1bWVudCYgZG9jdW1lbnQpCit7CisgICAgYXV0byBob3N0ID0gZG9j
dW1lbnQudG9wRG9jdW1lbnQoKS51cmwoKS5ob3N0KCk7CisgICAgcmV0dXJuIHN0YXJ0c1dpdGhM
ZXR0ZXJzSWdub3JpbmdBU0NJSUNhc2UoaG9zdCwgIm1haWwuIikgJiYgdG9wUHJpdmF0ZWx5Q29u
dHJvbGxlZERvbWFpbihob3N0LnRvU3RyaW5nKCkpLnN0YXJ0c1dpdGgoInlhaG9vLiIpOworfQor
CiBRdWlya3M6OlF1aXJrcyhEb2N1bWVudCYgZG9jdW1lbnQpCiAgICAgOiBtX2RvY3VtZW50KG1h
a2VXZWFrUHRyKGRvY3VtZW50KSkKIHsKQEAgLTQ4Nyw2ICs0OTMsMTggQEAgYm9vbCBRdWlya3M6
OnNob3VsZFByZXZlbnREaXNwYXRjaE9mVG91Y2hFdmVudChjb25zdCBBdG9tU3RyaW5nJiB0b3Vj
aEV2ZW50VHlwZSwKIAogI2VuZGlmCiAKKyNpZiBFTkFCTEUoSU9TX1RPVUNIX0VWRU5UUykKK2Jv
b2wgUXVpcmtzOjpzaG91bGRTeW50aGVzaXplVG91Y2hFdmVudHMoKSBjb25zdAoreworICAgIGlm
ICghbmVlZHNRdWlya3MoKSkKKyAgICAgICAgcmV0dXJuIGZhbHNlOworCisgICAgaWYgKCFtX3No
b3VsZFN5bnRoZXNpemVUb3VjaEV2ZW50c1F1aXJrKQorICAgICAgICBtX3Nob3VsZFN5bnRoZXNp
emVUb3VjaEV2ZW50c1F1aXJrID0gaXNZYWhvb01haWwoKm1fZG9jdW1lbnQpOworICAgIHJldHVy
biBtX3Nob3VsZFN5bnRoZXNpemVUb3VjaEV2ZW50c1F1aXJrLnZhbHVlKCk7Cit9CisjZW5kaWYK
KwogYm9vbCBRdWlya3M6OnNob3VsZEF2b2lkUmVzaXppbmdXaGVuSW5wdXRWaWV3Qm91bmRzQ2hh
bmdlKCkgY29uc3QKIHsKICAgICBpZiAoIW5lZWRzUXVpcmtzKCkpCkBAIC04NDEsMTAgKzg1OSw4
IEBAIGJvb2wgUXVpcmtzOjpzaG91bGRBdm9pZFBhc3RpbmdJbWFnZXNBc1dlYkNvbnRlbnQoKSBj
b25zdAogICAgICAgICByZXR1cm4gZmFsc2U7CiAKICNpZiBQTEFURk9STShJT1NfRkFNSUxZKQot
ICAgIGlmICghbV9zaG91bGRBdm9pZFBhc3RpbmdJbWFnZXNBc1dlYkNvbnRlbnQpIHsKLSAgICAg
ICAgYXV0byBob3N0ID0gbV9kb2N1bWVudC0+dG9wRG9jdW1lbnQoKS51cmwoKS5ob3N0KCkudG9T
dHJpbmcoKTsKLSAgICAgICAgbV9zaG91bGRBdm9pZFBhc3RpbmdJbWFnZXNBc1dlYkNvbnRlbnQg
PSBob3N0LnN0YXJ0c1dpdGhJZ25vcmluZ0FTQ0lJQ2FzZSgibWFpbC4iKSAmJiB0b3BQcml2YXRl
bHlDb250cm9sbGVkRG9tYWluKGhvc3QpLnN0YXJ0c1dpdGgoInlhaG9vLiIpOwotICAgIH0KKyAg
ICBpZiAoIW1fc2hvdWxkQXZvaWRQYXN0aW5nSW1hZ2VzQXNXZWJDb250ZW50KQorICAgICAgICBt
X3Nob3VsZEF2b2lkUGFzdGluZ0ltYWdlc0FzV2ViQ29udGVudCA9IGlzWWFob29NYWlsKCptX2Rv
Y3VtZW50KTsKICAgICByZXR1cm4gKm1fc2hvdWxkQXZvaWRQYXN0aW5nSW1hZ2VzQXNXZWJDb250
ZW50OwogI2Vsc2UKICAgICByZXR1cm4gZmFsc2U7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9wYWdlL1F1aXJrcy5oIGIvU291cmNlL1dlYkNvcmUvcGFnZS9RdWlya3MuaAppbmRleCA0YmNj
MjBkNWQxYjdkMmE4ZTBlOTAyYzYwYjVkNGMyZTRkMzQ3ZmJkLi5kNjA1NTllMzczZmM5Y2M4Zjc0
NWRhZTg2YWM1YWMxNjdmM2Y0ZTdkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL1F1
aXJrcy5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUXVpcmtzLmgKQEAgLTU5LDYgKzU5LDkg
QEAgcHVibGljOgogICAgIGJvb2wgc2hvdWxkTWFrZVRvdWNoRXZlbnROb25DYW5jZWxhYmxlRm9y
VGFyZ2V0KEV2ZW50VGFyZ2V0KikgY29uc3Q7CiAgICAgYm9vbCBzaG91bGRQcmV2ZW50UG9pbnRl
ck1lZGlhUXVlcnlGcm9tRXZhbHVhdGluZ1RvQ29hcnNlKCkgY29uc3Q7CiAgICAgYm9vbCBzaG91
bGRQcmV2ZW50RGlzcGF0Y2hPZlRvdWNoRXZlbnQoY29uc3QgQXRvbVN0cmluZyYsIEV2ZW50VGFy
Z2V0KikgY29uc3Q7CisjZW5kaWYKKyNpZiBFTkFCTEUoSU9TX1RPVUNIX0VWRU5UUykKKyAgICBX
RUJDT1JFX0VYUE9SVCBib29sIHNob3VsZFN5bnRoZXNpemVUb3VjaEV2ZW50cygpIGNvbnN0Owog
I2VuZGlmCiAgICAgYm9vbCBzaG91bGREaXNhYmxlUG9pbnRlckV2ZW50c1F1aXJrKCkgY29uc3Q7
CiAgICAgYm9vbCBuZWVkc0lucHV0TW9kZU5vbmVJbXBsaWNpdGx5KGNvbnN0IEhUTUxFbGVtZW50
JikgY29uc3Q7CkBAIC0xMzMsNiArMTM2LDkgQEAgcHJpdmF0ZToKICAgICBtdXRhYmxlIE9wdGlv
bmFsPGJvb2w+IG1fc2hvdWxkRGlzYWJsZUVsZW1lbnRGdWxsc2NyZWVuUXVpcms7CiAjaWYgRU5B
QkxFKFRPVUNIX0VWRU5UUykKICAgICBtdXRhYmxlIE9wdGlvbmFsPGJvb2w+IG1fc2hvdWxkRGlz
cGF0Y2hTaW11bGF0ZWRNb3VzZUV2ZW50c1F1aXJrOworI2VuZGlmCisjaWYgRU5BQkxFKElPU19U
T1VDSF9FVkVOVFMpCisgICAgbXV0YWJsZSBPcHRpb25hbDxib29sPiBtX3Nob3VsZFN5bnRoZXNp
emVUb3VjaEV2ZW50c1F1aXJrOwogI2VuZGlmCiAgICAgbXV0YWJsZSBPcHRpb25hbDxib29sPiBt
X25lZWRzQ2FuUGxheUFmdGVyU2Vla2VkUXVpcms7CiAgICAgbXV0YWJsZSBPcHRpb25hbDxib29s
PiBtX3Nob3VsZEJ5cGFzc0FzeW5jU2NyaXB0RGVmZXJyaW5nOwo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>406351</attachid>
            <date>2020-08-10 17:50:43 -0700</date>
            <delta_ts>2020-08-10 18:48:15 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-215329-20200810175042.patch</filename>
            <type>text/plain</type>
            <size>6519</size>
            <attacher name="Devin Rousso">hi</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZwppbmRleCA3ZWE5MTE3ZWVhZTgxYmY4NjMxNDlhMTY0NTFlYWI5ZTcwMzFkNzM1Li4w
OWRkYWEzYzRiZjBlYmU5Y2FmOWY0ZTdmYzI3NGEzZGM0YmFmODQzIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0x
LDMgKzEsMjcgQEAKKzIwMjAtMDgtMTAgIERldmluIFJvdXNzbyAgPGRyb3Vzc29AYXBwbGUuY29t
PgorCisgICAgICAgIEFkZCBxdWlyayB0byBmb3JjZSB0b3VjaCBldmVudHMgb24gbWFpbC55YWhv
by5jb20KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIx
NTMyOQorICAgICAgICA8cmRhcjovL3Byb2JsZW0vNTk4MjQ0Njk+CisKKyAgICAgICAgUmV2aWV3
ZWQgYnkgRGFyaW4gQWRsZXIgYW5kIFRpbSBIb3J0b24uCisKKyAgICAgICAgPGh0dHBzOi8vbWFp
bC55YWhvby5jb20vPiBzZXJ2ZXMgYSBtb2JpbGUgc2l0ZSBldmVuIGluIGRlc2t0b3AgYnJvd3Np
bmcgIm1vZGUiLCBtZWFuaW5nCisgICAgICAgIHRoYXQgY2VydGFpbiBhY3Rpb25zLCBzdWNoIGFz
IHNlbGVjdGluZyBhbiBhdWZvdGlsbCBjb250YWN0LCBleHBlY3QgbW9iaWxlIGJlaGF2aW9ycywK
KyAgICAgICAgc3VjaCBhcyBtb3VzZSBldmVudHMgYmVpbmcgZGlzcGF0Y2hlZCBhZnRlciB0b3Vj
aCBldmVudHMgcmF0aGVyIHRoYW4gaW5zdGFudGx5IChpbiB0aGUKKyAgICAgICAgY2FzZSBvZiBh
IGNvbm5lY3RlZCB0cmFja3BhZCB3aXRoIGFuIGlQYWQpLiBUaGlzIHF1aXJrIGVuc3VyZXMgYWx3
YXlzIG1vYmlsZSBiZWhhdmlvciBmb3IKKyAgICAgICAgdGhvc2UgYWN0aW9ucywgbWF0Y2hpbmcg
dGhlIGV4cGVjdGF0aW9ucyBvZiA8aHR0cHM6Ly9tYWlsLnlhaG9vLmNvbS8+LgorCisgICAgICAg
ICogcGFnZS9RdWlya3MuaDoKKyAgICAgICAgKiBwYWdlL1F1aXJrcy5jcHA6CisgICAgICAgIChX
ZWJDb3JlOjppc1lhaG9vTWFpbCk6IEFkZGVkLgorICAgICAgICAoV2ViQ29yZTo6UXVpcmtzOjpz
aG91bGRTeW50aGVzaXplVG91Y2hFdmVudHMgY29uc3QpOiBBZGRlZC4KKyAgICAgICAgKFdlYkNv
cmU6OlF1aXJrczo6c2hvdWxkQXZvaWRQYXN0aW5nSW1hZ2VzQXNXZWJDb250ZW50IGNvbnN0KToK
KworICAgICAgICAqIGxvYWRlci9Eb2N1bWVudExvYWRlci5oOgorICAgICAgICAqIGxvYWRlci9E
b2N1bWVudExvYWRlci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpEb2N1bWVudExvYWRlcjo6bW91
c2VFdmVudFBvbGljeSBjb25zdCk6CisKIDIwMjAtMDgtMDkgIFNhaWQgQWJvdS1IYWxsYXdhICA8
c2Fib3VoYWxsYXdhQGFwcGxlLmNvbT4KIAogICAgICAgICBbbWFjT1NdIERyYWcvZHJvcCBhbiBp
bWFnZSBvZiBhIHVuc3VwcG9ydGVkIGZvcm1hdCB0byBhbiBmaWxlIGlucHV0IGVsZW1lbnQgc2hv
dWxkIGNvbnZlcnQgaXQgdG8gYSBzdXBwb3J0ZWQgZm9ybWF0CmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9sb2FkZXIvRG9jdW1lbnRMb2FkZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvbG9hZGVy
L0RvY3VtZW50TG9hZGVyLmNwcAppbmRleCA0MDhhMTNlMzc0YmVjNzhlNjdhYzk5MGI3OGE2Mjgx
MTBlMWViMTMwLi5lOTk0MTMxOTdlMGMxMWJjZjljNjdjYTY2ZjEzMmI3Nzk5ZGRiY2M0IDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvRG9jdW1lbnRMb2FkZXIuY3BwCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL2xvYWRlci9Eb2N1bWVudExvYWRlci5jcHAKQEAgLTcyLDYgKzcyLDcgQEAK
ICNpbmNsdWRlICJQbGF0Zm9ybVN0cmF0ZWdpZXMuaCIKICNpbmNsdWRlICJQb2xpY3lDaGVja2Vy
LmgiCiAjaW5jbHVkZSAiUHJvZ3Jlc3NUcmFja2VyLmgiCisjaW5jbHVkZSAiUXVpcmtzLmgiCiAj
aW5jbHVkZSAiUmVzb3VyY2VIYW5kbGUuaCIKICNpbmNsdWRlICJSZXNvdXJjZUxvYWRPYnNlcnZl
ci5oIgogI2luY2x1ZGUgIlJ1bnRpbWVFbmFibGVkRmVhdHVyZXMuaCIKQEAgLTEyNTQsNiArMTI1
NSwxOSBAQCB2b2lkIERvY3VtZW50TG9hZGVyOjphcHBseVBvbGljaWVzVG9TZXR0aW5ncygpCiAj
ZW5kaWYKIH0KIAorTW91c2VFdmVudFBvbGljeSBEb2N1bWVudExvYWRlcjo6bW91c2VFdmVudFBv
bGljeSgpIGNvbnN0Cit7CisjaWYgRU5BQkxFKElPU19UT1VDSF9FVkVOVFMpCisgICAgaWYgKG1f
bW91c2VFdmVudFBvbGljeSA9PSBNb3VzZUV2ZW50UG9saWN5OjpEZWZhdWx0KSB7CisgICAgICAg
IGlmIChhdXRvKiBkb2N1bWVudCA9IHRoaXMtPmRvY3VtZW50KCkpIHsKKyAgICAgICAgICAgIGlm
IChkb2N1bWVudC0+cXVpcmtzKCkuc2hvdWxkU3ludGhlc2l6ZVRvdWNoRXZlbnRzKCkpCisgICAg
ICAgICAgICAgICAgcmV0dXJuIE1vdXNlRXZlbnRQb2xpY3k6OlN5bnRoZXNpemVUb3VjaEV2ZW50
czsKKyAgICAgICAgfQorICAgIH0KKyNlbmRpZgorICAgIHJldHVybiBtX21vdXNlRXZlbnRQb2xp
Y3k7Cit9CisKIHZvaWQgRG9jdW1lbnRMb2FkZXI6OmF0dGFjaFRvRnJhbWUoRnJhbWUmIGZyYW1l
KQogewogICAgIGlmIChtX2ZyYW1lID09ICZmcmFtZSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL2xvYWRlci9Eb2N1bWVudExvYWRlci5oIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL0RvY3Vt
ZW50TG9hZGVyLmgKaW5kZXggMjZkNWRhODVkM2Q1YTUxZjgyOTNhMjA0ZTUyZmUwZWJlNWVhNWUw
Yy4uYzIxNjc4MjAxNzAxZDNmYThkNDFjOWVmNDVlZTgyNGVkZGZmNjRiZiAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvbG9hZGVyL0RvY3VtZW50TG9hZGVyLmgKKysrIGIvU291cmNlL1dlYkNv
cmUvbG9hZGVyL0RvY3VtZW50TG9hZGVyLmgKQEAgLTMzMSw3ICszMzEsNyBAQCBwdWJsaWM6CiAg
ICAgTGVnYWN5T3ZlcmZsb3dTY3JvbGxpbmdUb3VjaFBvbGljeSBsZWdhY3lPdmVyZmxvd1Njcm9s
bGluZ1RvdWNoUG9saWN5KCkgY29uc3QgeyByZXR1cm4gbV9sZWdhY3lPdmVyZmxvd1Njcm9sbGlu
Z1RvdWNoUG9saWN5OyB9CiAgICAgdm9pZCBzZXRMZWdhY3lPdmVyZmxvd1Njcm9sbGluZ1RvdWNo
UG9saWN5KExlZ2FjeU92ZXJmbG93U2Nyb2xsaW5nVG91Y2hQb2xpY3kgcG9saWN5KSB7IG1fbGVn
YWN5T3ZlcmZsb3dTY3JvbGxpbmdUb3VjaFBvbGljeSA9IHBvbGljeTsgfQogCi0gICAgTW91c2VF
dmVudFBvbGljeSBtb3VzZUV2ZW50UG9saWN5KCkgY29uc3QgeyByZXR1cm4gbV9tb3VzZUV2ZW50
UG9saWN5OyB9CisgICAgV0VCQ09SRV9FWFBPUlQgTW91c2VFdmVudFBvbGljeSBtb3VzZUV2ZW50
UG9saWN5KCkgY29uc3Q7CiAgICAgdm9pZCBzZXRNb3VzZUV2ZW50UG9saWN5KE1vdXNlRXZlbnRQ
b2xpY3kgcG9saWN5KSB7IG1fbW91c2VFdmVudFBvbGljeSA9IHBvbGljeTsgfQogCiAgICAgdm9p
ZCBhZGRTdWJyZXNvdXJjZUxvYWRlcihSZXNvdXJjZUxvYWRlciopOwpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvcGFnZS9RdWlya3MuY3BwIGIvU291cmNlL1dlYkNvcmUvcGFnZS9RdWlya3Mu
Y3BwCmluZGV4IGMzNzIxOTY4MjQzZDE1NzgyNjBlYWM4ZTIzYmJkY2FhNTM1YjhhNjkuLjIwYjEx
OGM0YjMyNTdjYjFiZDBlMmRlYmViMzk3MTNjNTI4NmI4MDAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL3BhZ2UvUXVpcmtzLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL1F1aXJrcy5j
cHAKQEAgLTY1LDYgKzY1LDE0IEBAIHN0YXRpYyBpbmxpbmUgT3B0aW9uU2V0PEF1dG9wbGF5UXVp
cms+IGFsbG93ZWRBdXRvcGxheVF1aXJrcyhEb2N1bWVudCYgZG9jdW1lbnQpCiAgICAgcmV0dXJu
IGxvYWRlci0+YWxsb3dlZEF1dG9wbGF5UXVpcmtzKCk7CiB9CiAKKyNpZiBFTkFCTEUoUFVCTElD
X1NVRkZJWF9MSVNUKQorc3RhdGljIGlubGluZSBib29sIGlzWWFob29NYWlsKERvY3VtZW50JiBk
b2N1bWVudCkKK3sKKyAgICBhdXRvIGhvc3QgPSBkb2N1bWVudC50b3BEb2N1bWVudCgpLnVybCgp
Lmhvc3QoKTsKKyAgICByZXR1cm4gc3RhcnRzV2l0aExldHRlcnNJZ25vcmluZ0FTQ0lJQ2FzZSho
b3N0LCAibWFpbC4iKSAmJiB0b3BQcml2YXRlbHlDb250cm9sbGVkRG9tYWluKGhvc3QudG9TdHJp
bmcoKSkuc3RhcnRzV2l0aCgieWFob28uIik7Cit9CisjZW5kaWYKKwogUXVpcmtzOjpRdWlya3Mo
RG9jdW1lbnQmIGRvY3VtZW50KQogICAgIDogbV9kb2N1bWVudChtYWtlV2Vha1B0cihkb2N1bWVu
dCkpCiB7CkBAIC00ODcsNiArNDk1LDE4IEBAIGJvb2wgUXVpcmtzOjpzaG91bGRQcmV2ZW50RGlz
cGF0Y2hPZlRvdWNoRXZlbnQoY29uc3QgQXRvbVN0cmluZyYgdG91Y2hFdmVudFR5cGUsCiAKICNl
bmRpZgogCisjaWYgRU5BQkxFKElPU19UT1VDSF9FVkVOVFMpCitib29sIFF1aXJrczo6c2hvdWxk
U3ludGhlc2l6ZVRvdWNoRXZlbnRzKCkgY29uc3QKK3sKKyAgICBpZiAoIW5lZWRzUXVpcmtzKCkp
CisgICAgICAgIHJldHVybiBmYWxzZTsKKworICAgIGlmICghbV9zaG91bGRTeW50aGVzaXplVG91
Y2hFdmVudHNRdWlyaykKKyAgICAgICAgbV9zaG91bGRTeW50aGVzaXplVG91Y2hFdmVudHNRdWly
ayA9IGlzWWFob29NYWlsKCptX2RvY3VtZW50KTsKKyAgICByZXR1cm4gbV9zaG91bGRTeW50aGVz
aXplVG91Y2hFdmVudHNRdWlyay52YWx1ZSgpOworfQorI2VuZGlmCisKIGJvb2wgUXVpcmtzOjpz
aG91bGRBdm9pZFJlc2l6aW5nV2hlbklucHV0Vmlld0JvdW5kc0NoYW5nZSgpIGNvbnN0CiB7CiAg
ICAgaWYgKCFuZWVkc1F1aXJrcygpKQpAQCAtODQxLDEwICs4NjEsOCBAQCBib29sIFF1aXJrczo6
c2hvdWxkQXZvaWRQYXN0aW5nSW1hZ2VzQXNXZWJDb250ZW50KCkgY29uc3QKICAgICAgICAgcmV0
dXJuIGZhbHNlOwogCiAjaWYgUExBVEZPUk0oSU9TX0ZBTUlMWSkKLSAgICBpZiAoIW1fc2hvdWxk
QXZvaWRQYXN0aW5nSW1hZ2VzQXNXZWJDb250ZW50KSB7Ci0gICAgICAgIGF1dG8gaG9zdCA9IG1f
ZG9jdW1lbnQtPnRvcERvY3VtZW50KCkudXJsKCkuaG9zdCgpLnRvU3RyaW5nKCk7Ci0gICAgICAg
IG1fc2hvdWxkQXZvaWRQYXN0aW5nSW1hZ2VzQXNXZWJDb250ZW50ID0gaG9zdC5zdGFydHNXaXRo
SWdub3JpbmdBU0NJSUNhc2UoIm1haWwuIikgJiYgdG9wUHJpdmF0ZWx5Q29udHJvbGxlZERvbWFp
bihob3N0KS5zdGFydHNXaXRoKCJ5YWhvby4iKTsKLSAgICB9CisgICAgaWYgKCFtX3Nob3VsZEF2
b2lkUGFzdGluZ0ltYWdlc0FzV2ViQ29udGVudCkKKyAgICAgICAgbV9zaG91bGRBdm9pZFBhc3Rp
bmdJbWFnZXNBc1dlYkNvbnRlbnQgPSBpc1lhaG9vTWFpbCgqbV9kb2N1bWVudCk7CiAgICAgcmV0
dXJuICptX3Nob3VsZEF2b2lkUGFzdGluZ0ltYWdlc0FzV2ViQ29udGVudDsKICNlbHNlCiAgICAg
cmV0dXJuIGZhbHNlOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGFnZS9RdWlya3MuaCBi
L1NvdXJjZS9XZWJDb3JlL3BhZ2UvUXVpcmtzLmgKaW5kZXggNGJjYzIwZDVkMWI3ZDJhOGUwZTkw
MmM2MGI1ZDRjMmU0ZDM0N2ZiZC4uZDYwNTU5ZTM3M2ZjOWNjOGY3NDVkYWU4NmFjNWFjMTY3ZjNm
NGU3ZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGFnZS9RdWlya3MuaAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9wYWdlL1F1aXJrcy5oCkBAIC01OSw2ICs1OSw5IEBAIHB1YmxpYzoKICAgICBi
b29sIHNob3VsZE1ha2VUb3VjaEV2ZW50Tm9uQ2FuY2VsYWJsZUZvclRhcmdldChFdmVudFRhcmdl
dCopIGNvbnN0OwogICAgIGJvb2wgc2hvdWxkUHJldmVudFBvaW50ZXJNZWRpYVF1ZXJ5RnJvbUV2
YWx1YXRpbmdUb0NvYXJzZSgpIGNvbnN0OwogICAgIGJvb2wgc2hvdWxkUHJldmVudERpc3BhdGNo
T2ZUb3VjaEV2ZW50KGNvbnN0IEF0b21TdHJpbmcmLCBFdmVudFRhcmdldCopIGNvbnN0OworI2Vu
ZGlmCisjaWYgRU5BQkxFKElPU19UT1VDSF9FVkVOVFMpCisgICAgV0VCQ09SRV9FWFBPUlQgYm9v
bCBzaG91bGRTeW50aGVzaXplVG91Y2hFdmVudHMoKSBjb25zdDsKICNlbmRpZgogICAgIGJvb2wg
c2hvdWxkRGlzYWJsZVBvaW50ZXJFdmVudHNRdWlyaygpIGNvbnN0OwogICAgIGJvb2wgbmVlZHNJ
bnB1dE1vZGVOb25lSW1wbGljaXRseShjb25zdCBIVE1MRWxlbWVudCYpIGNvbnN0OwpAQCAtMTMz
LDYgKzEzNiw5IEBAIHByaXZhdGU6CiAgICAgbXV0YWJsZSBPcHRpb25hbDxib29sPiBtX3Nob3Vs
ZERpc2FibGVFbGVtZW50RnVsbHNjcmVlblF1aXJrOwogI2lmIEVOQUJMRShUT1VDSF9FVkVOVFMp
CiAgICAgbXV0YWJsZSBPcHRpb25hbDxib29sPiBtX3Nob3VsZERpc3BhdGNoU2ltdWxhdGVkTW91
c2VFdmVudHNRdWlyazsKKyNlbmRpZgorI2lmIEVOQUJMRShJT1NfVE9VQ0hfRVZFTlRTKQorICAg
IG11dGFibGUgT3B0aW9uYWw8Ym9vbD4gbV9zaG91bGRTeW50aGVzaXplVG91Y2hFdmVudHNRdWly
azsKICNlbmRpZgogICAgIG11dGFibGUgT3B0aW9uYWw8Ym9vbD4gbV9uZWVkc0NhblBsYXlBZnRl
clNlZWtlZFF1aXJrOwogICAgIG11dGFibGUgT3B0aW9uYWw8Ym9vbD4gbV9zaG91bGRCeXBhc3NB
c3luY1NjcmlwdERlZmVycmluZzsK
</data>

          </attachment>
      

    </bug>

</bugzilla>