<?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>218859</bug_id>
          
          <creation_ts>2020-11-12 10:58:28 -0800</creation_ts>
          <short_desc>REGRESSION(r269579) [WPE] Many tests with scrolling flaky after this revision</short_desc>
          <delta_ts>2020-11-17 09:39:18 -0800</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>Scrolling</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          <see_also>https://bugs.webkit.org/show_bug.cgi?id=214179</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="Lauro Moura">lmoura</reporter>
          <assigned_to name="Chris Lord">clord</assigned_to>
          <cc>bugs-noreply</cc>
    
    <cc>cgarcia</cc>
    
    <cc>clord</cc>
    
    <cc>cmarcelo</cc>
    
    <cc>darin</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>fred.wang</cc>
    
    <cc>jamesr</cc>
    
    <cc>koivisto</cc>
    
    <cc>kondapallykalyan</cc>
    
    <cc>luiz</cc>
    
    <cc>simon.fraser</cc>
    
    <cc>tonikitoo</cc>
    
    <cc>webkit-bug-importer</cc>
    
    <cc>zan</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1706925</commentid>
    <comment_count>0</comment_count>
    <who name="Lauro Moura">lmoura</who>
    <bug_when>2020-11-12 10:58:28 -0800</bug_when>
    <thetext>Many tests are flaky with blank images either in the actual.png or expected.png. In some cases, it fails both runs and happen to  be registered as failure.

Link to first test run with the flakies: https://build.webkit.org/builders/WPE-Linux-64-bit-Release-Tests/builds/20967

Testing locally, the issue is reproducible most of the time (&gt;80% here) with the following command:

./Tools/Scripts/run-webkit-tests --verbose --debug-rwt-logging --no-retry-failures --no-new-test-results --no-build --no-show-results --clobber-old-results --display-server=xvfb --results-directory layout-test-results --release --wpe fast/css/sticky/inflow-sticky.html

Also, running only on fast/css/sticky/, the following 3 tests (that use window.scrollTo) fail:

  fast/css/sticky/inflow-sticky.html
  fast/css/sticky/inline-sticky-abspos-child.html
  fast/css/sticky/sticky-both-sides.html

One complication is that it seems to depend on the hardware, as Chris could not reproduce it on his desktop but only on his laptop.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1707179</commentid>
    <comment_count>1</comment_count>
    <who name="Chris Lord">clord</who>
    <bug_when>2020-11-13 02:49:24 -0800</bug_when>
    <thetext>Just to add a note that I&apos;m working on this - I&apos;ve narrowed it down to the layer UpdateScope that gets used in the Frame and Overflow scrolling nodes causing some kind of either deadlock or oscillation, but I&apos;ve not been able to pin down exactly what&apos;s happening due to the difficulty in reproducing and its lack of effect in anything except testing situations (at least that I&apos;ve found so far). I&apos;ve been trying various fixes and work-arounds, but haven&apos;t had any success so far.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1707182</commentid>
    <comment_count>2</comment_count>
    <who name="Chris Lord">clord</who>
    <bug_when>2020-11-13 02:53:48 -0800</bug_when>
    <thetext>Also a note, the reproduction instructions in comment one don&apos;t actually apply on my laptop (where I can reproduce this error). If I do 5 iterations of fast/css, I get a variable number of image-only failures and fast/css/pseudo-valid-fieldset.html gets highlighted as unexpected flakiness consistently. If I run that test in isolation, even for 50 iterations, it succeeds. All of the tests mentioned in the first comment succeed for me. 5 iterations might be overkill, I might be able to get away with 2 or 3. On my desktop, all tests pass fine even with 10 iterations.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1707755</commentid>
    <comment_count>3</comment_count>
      <attachid>414214</attachid>
    <who name="Chris Lord">clord</who>
    <bug_when>2020-11-16 03:09:06 -0800</bug_when>
    <thetext>Created attachment 414214
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1707756</commentid>
    <comment_count>4</comment_count>
    <who name="Chris Lord">clord</who>
    <bug_when>2020-11-16 03:14:06 -0800</bug_when>
    <thetext>I believe this was happening due to updating the layer scroll node ID without flushing composition state and thus breaking the mapping of layer-&gt;scroll node. There was no actual deadlock (at least that I could find), but rather a race.

This doesn&apos;t affect GTK because GTK doesn&apos;t run tests with async composition enabled, afaik. This also, as far as I can tell, doesn&apos;t have any visually noticeable effect in practical use, I think the problem mostly just affected test results.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1707825</commentid>
    <comment_count>5</comment_count>
      <attachid>414214</attachid>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2020-11-16 08:33:34 -0800</bug_when>
    <thetext>Comment on attachment 414214
Patch

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

&gt; Source/WebCore/page/scrolling/nicosia/ScrollingCoordinatorNicosia.cpp:107
&gt; +                if (auto* frameView = frameViewForScrollingNode(nodeID))
&gt; +                    frameView-&gt;flushCompositingStateIncludingSubframes();

This should not be necessary here. This is called from compositing updates, so we&apos;re already going to flush.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1707826</commentid>
    <comment_count>6</comment_count>
    <who name="Chris Lord">clord</who>
    <bug_when>2020-11-16 08:35:31 -0800</bug_when>
    <thetext>(In reply to Simon Fraser (smfr) from comment #5)
&gt; Comment on attachment 414214 [details]
&gt; Patch
&gt; 
&gt; View in context:
&gt; https://bugs.webkit.org/attachment.cgi?id=414214&amp;action=review
&gt; 
&gt; &gt; Source/WebCore/page/scrolling/nicosia/ScrollingCoordinatorNicosia.cpp:107
&gt; &gt; +                if (auto* frameView = frameViewForScrollingNode(nodeID))
&gt; &gt; +                    frameView-&gt;flushCompositingStateIncludingSubframes();
&gt; 
&gt; This should not be necessary here. This is called from compositing updates,
&gt; so we&apos;re already going to flush.

That&apos;s even better, so this patch, minus this, is valid? I couldn&apos;t trace through enough to really understand if this was a situation where a flush was guaranteed or not.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1707828</commentid>
    <comment_count>7</comment_count>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2020-11-16 08:41:38 -0800</bug_when>
    <thetext>(In reply to Chris Lord from comment #6)
&gt; (In reply to Simon Fraser (smfr) from comment #5)
&gt; &gt; Comment on attachment 414214 [details]
&gt; &gt; Patch
&gt; &gt; 
&gt; &gt; View in context:
&gt; &gt; https://bugs.webkit.org/attachment.cgi?id=414214&amp;action=review
&gt; &gt; 
&gt; &gt; &gt; Source/WebCore/page/scrolling/nicosia/ScrollingCoordinatorNicosia.cpp:107
&gt; &gt; &gt; +                if (auto* frameView = frameViewForScrollingNode(nodeID))
&gt; &gt; &gt; +                    frameView-&gt;flushCompositingStateIncludingSubframes();
&gt; &gt; 
&gt; &gt; This should not be necessary here. This is called from compositing updates,
&gt; &gt; so we&apos;re already going to flush.
&gt; 
&gt; That&apos;s even better, so this patch, minus this, is valid? I couldn&apos;t trace
&gt; through enough to really understand if this was a situation where a flush
&gt; was guaranteed or not.

Any changes to a ScrollingState* node will schedule a flush.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1707831</commentid>
    <comment_count>8</comment_count>
      <attachid>414214</attachid>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2020-11-16 08:44:45 -0800</bug_when>
    <thetext>Comment on attachment 414214
Patch

Actually this patch is wrong :)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1707832</commentid>
    <comment_count>9</comment_count>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2020-11-16 08:48:57 -0800</bug_when>
    <thetext>Accessing platformLayers from ScrollingCoordinatorNicosia code seems wrong.

On macOS, the scrolling tree nodeIDs are accessed on the scrolling thread by going from CALayer -&gt; PlatformCALayer. Can Nicosia do something similar?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1707837</commentid>
    <comment_count>10</comment_count>
    <who name="Zan Dobersek">zan</who>
    <bug_when>2020-11-16 08:57:46 -0800</bug_when>
    <thetext>Yes, it can. Node ID assignments should be handled through GraphicsLayer.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1708171</commentid>
    <comment_count>11</comment_count>
      <attachid>414326</attachid>
    <who name="Chris Lord">clord</who>
    <bug_when>2020-11-17 02:36:38 -0800</bug_when>
    <thetext>Created attachment 414326
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1708172</commentid>
    <comment_count>12</comment_count>
    <who name="Chris Lord">clord</who>
    <bug_when>2020-11-17 02:37:59 -0800</bug_when>
    <thetext>Ok, that was much simpler once I knew where to look...</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1708251</commentid>
    <comment_count>13</comment_count>
      <attachid>414346</attachid>
    <who name="Chris Lord">clord</who>
    <bug_when>2020-11-17 08:52:07 -0800</bug_when>
    <thetext>Created attachment 414346
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1708267</commentid>
    <comment_count>14</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2020-11-17 09:38:50 -0800</bug_when>
    <thetext>Committed r269909: &lt;https://trac.webkit.org/changeset/269909&gt;

All reviewed patches have been landed. Closing bug and clearing flags on attachment 414346.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1708268</commentid>
    <comment_count>15</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2020-11-17 09:39:18 -0800</bug_when>
    <thetext>&lt;rdar://problem/71490175&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>414214</attachid>
            <date>2020-11-16 03:09:06 -0800</date>
            <delta_ts>2020-11-17 02:36:34 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-218859-20201116110905.patch</filename>
            <type>text/plain</type>
            <size>10257</size>
            <attacher name="Chris Lord">clord</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjY5ODQzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZGUwZDkyM2Y1NWZkZDlj
YjA5NDY3MDQxYjE0YTQ4NTU3ODNjODNhZi4uNTBlM2EzZjk3OGQ0NjQ1Nzk3Yjc2MzEwYTY0MGQx
NzYyNDc0N2ZlNiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIzIEBACisyMDIwLTExLTE2ICBDaHJp
cyBMb3JkICA8Y2xvcmRAaWdhbGlhLmNvbT4KKworICAgICAgICBSRUdSRVNTSU9OKHIyNjk1Nzkp
IFtXUEVdIE1hbnkgdGVzdHMgd2l0aCBzY3JvbGxpbmcgZmxha3kgYWZ0ZXIgdGhpcyByZXZpc2lv
bgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjE4ODU5
CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgTWFrZSBz
dXJlIHRoYXQgc2Nyb2xsIG5vZGUgSURzIG9uIGxheWVycyBhcmVuJ3QgdXBkYXRlZCBiZWZvcmUK
KyAgICAgICAgY29tcG9zaXRpb24gc3RhdGUgaXMgZmx1c2hlZCBjb21wbGV0ZWx5LiBUaGlzIGZp
eGVzIGludGVybWl0dGVudCB0ZXN0CisgICAgICAgIGZhaWx1cmVzIG9uIFdQRS4KKworICAgICAg
ICAqIHBhZ2Uvc2Nyb2xsaW5nL0FzeW5jU2Nyb2xsaW5nQ29vcmRpbmF0b3IuaDoKKyAgICAgICAg
KiBwYWdlL3Njcm9sbGluZy9uaWNvc2lhL1Njcm9sbGluZ0Nvb3JkaW5hdG9yTmljb3NpYS5jcHA6
CisgICAgICAgIChXZWJDb3JlOjpTY3JvbGxpbmdDb29yZGluYXRvck5pY29zaWE6OnNldE5vZGVM
YXllcnMpOgorICAgICAgICAqIHBhZ2Uvc2Nyb2xsaW5nL25pY29zaWEvU2Nyb2xsaW5nQ29vcmRp
bmF0b3JOaWNvc2lhLmg6CisgICAgICAgICogcGFnZS9zY3JvbGxpbmcvbmljb3NpYS9TY3JvbGxp
bmdUcmVlRnJhbWVTY3JvbGxpbmdOb2RlTmljb3NpYS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpT
Y3JvbGxpbmdUcmVlRnJhbWVTY3JvbGxpbmdOb2RlTmljb3NpYTo6Y29tbWl0U3RhdGVCZWZvcmVD
aGlsZHJlbik6CisgICAgICAgICogcGFnZS9zY3JvbGxpbmcvbmljb3NpYS9TY3JvbGxpbmdUcmVl
T3ZlcmZsb3dTY3JvbGxpbmdOb2RlTmljb3NpYS5jcHA6CisgICAgICAgICogcGFnZS9zY3JvbGxp
bmcvbmljb3NpYS9TY3JvbGxpbmdUcmVlT3ZlcmZsb3dTY3JvbGxpbmdOb2RlTmljb3NpYS5oOgor
CiAyMDIwLTExLTE2ICBaYW4gRG9iZXJzZWsgIDx6ZG9iZXJzZWtAaWdhbGlhLmNvbT4KIAogICAg
ICAgICBQbGF0Zm9ybURpc3BsYXlMaWJXUEU6IHVzZSBlZ2xHZXRQbGF0Zm9ybURpc3BsYXkgd2hl
biBwb3NzaWJsZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGFnZS9zY3JvbGxpbmcvQXN5
bmNTY3JvbGxpbmdDb29yZGluYXRvci5oIGIvU291cmNlL1dlYkNvcmUvcGFnZS9zY3JvbGxpbmcv
QXN5bmNTY3JvbGxpbmdDb29yZGluYXRvci5oCmluZGV4IDQyM2MwNmU3MmIwZTA5ZTkxMTNlODIx
ZGJjYWFlMWQwNzk2YWMxOTcuLjk5MmNiMjE3NWM0MDM0ODQwNjhlZGZhMjI4OTBkY2Q0OTZjODA3
YjMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BhZ2Uvc2Nyb2xsaW5nL0FzeW5jU2Nyb2xs
aW5nQ29vcmRpbmF0b3IuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL3Njcm9sbGluZy9Bc3lu
Y1Njcm9sbGluZ0Nvb3JkaW5hdG9yLmgKQEAgLTg0LDExICs4NCwxNCBAQCBwcm90ZWN0ZWQ6CiAK
ICAgICBSZWZQdHI8U2Nyb2xsaW5nVHJlZT4gcmVsZWFzZVNjcm9sbGluZ1RyZWUoKSB7IHJldHVy
biBXVEZNb3ZlKG1fc2Nyb2xsaW5nVHJlZSk7IH0KIAorICAgIFdFQkNPUkVfRVhQT1JUIHZvaWQg
c2V0Tm9kZUxheWVycyhTY3JvbGxpbmdOb2RlSUQsIGNvbnN0IE5vZGVMYXllcnMmKSBvdmVycmlk
ZTsKICAgICBXRUJDT1JFX0VYUE9SVCBTdHJpbmcgc2Nyb2xsaW5nU3RhdGVUcmVlQXNUZXh0KFNj
cm9sbGluZ1N0YXRlVHJlZUFzVGV4dEJlaGF2aW9yID0gU2Nyb2xsaW5nU3RhdGVUcmVlQXNUZXh0
QmVoYXZpb3JOb3JtYWwpIGNvbnN0IG92ZXJyaWRlOwogICAgIFdFQkNPUkVfRVhQT1JUIFN0cmlu
ZyBzY3JvbGxpbmdUcmVlQXNUZXh0KFNjcm9sbGluZ1N0YXRlVHJlZUFzVGV4dEJlaGF2aW9yID0g
U2Nyb2xsaW5nU3RhdGVUcmVlQXNUZXh0QmVoYXZpb3JOb3JtYWwpIGNvbnN0IG92ZXJyaWRlOwog
ICAgIFdFQkNPUkVfRVhQT1JUIHZvaWQgd2lsbENvbW1pdFRyZWUoKSBvdmVycmlkZTsKICAgICB2
b2lkIHN5bmNocm9uaXplU3RhdGVGcm9tU2Nyb2xsaW5nVHJlZSgpOwogCisgICAgRnJhbWVWaWV3
KiBmcmFtZVZpZXdGb3JTY3JvbGxpbmdOb2RlKFNjcm9sbGluZ05vZGVJRCkgY29uc3Q7CisKICAg
ICBib29sIGV2ZW50VHJhY2tpbmdSZWdpb25zRGlydHkoKSBjb25zdCB7IHJldHVybiBtX2V2ZW50
VHJhY2tpbmdSZWdpb25zRGlydHk7IH0KIAogcHJpdmF0ZToKQEAgLTExOSw4ICsxMjIsNiBAQCBw
cml2YXRlOgogICAgIFdFQkNPUkVfRVhQT1JUIFNjcm9sbGluZ05vZGVJRCBwYXJlbnRPZk5vZGUo
U2Nyb2xsaW5nTm9kZUlEKSBjb25zdCBvdmVycmlkZTsKICAgICBXRUJDT1JFX0VYUE9SVCBWZWN0
b3I8U2Nyb2xsaW5nTm9kZUlEPiBjaGlsZHJlbk9mTm9kZShTY3JvbGxpbmdOb2RlSUQpIGNvbnN0
IG92ZXJyaWRlOwogCi0gICAgV0VCQ09SRV9FWFBPUlQgdm9pZCBzZXROb2RlTGF5ZXJzKFNjcm9s
bGluZ05vZGVJRCwgY29uc3QgTm9kZUxheWVycyYpIG92ZXJyaWRlOwotCiAgICAgV0VCQ09SRV9F
WFBPUlQgdm9pZCBzZXRTY3JvbGxpbmdOb2RlU2Nyb2xsYWJsZUFyZWFHZW9tZXRyeShTY3JvbGxp
bmdOb2RlSUQsIFNjcm9sbGFibGVBcmVhJikgb3ZlcnJpZGU7CiAgICAgV0VCQ09SRV9FWFBPUlQg
dm9pZCBzZXRGcmFtZVNjcm9sbGluZ05vZGVTdGF0ZShTY3JvbGxpbmdOb2RlSUQsIGNvbnN0IEZy
YW1lVmlldyYpIG92ZXJyaWRlOwogICAgIFdFQkNPUkVfRVhQT1JUIHZvaWQgc2V0Vmlld3BvcnRD
b25zdHJhaW50ZWROb2RlQ29uc3RyYWludHMoU2Nyb2xsaW5nTm9kZUlELCBjb25zdCBWaWV3cG9y
dENvbnN0cmFpbnRzJikgb3ZlcnJpZGU7CkBAIC0xNjEsOCArMTYyLDYgQEAgcHJpdmF0ZToKICAg
ICB2b2lkIG5vdGVTY3JvbGxpbmdUaHJlYWRTeW5jQ29tcGxldGVGb3JOb2RlKFNjcm9sbGluZ05v
ZGVJRCk7CiAKICAgICB2b2lkIHVwZGF0ZVNjcm9sbFBvc2l0aW9uQWZ0ZXJBc3luY1Njcm9sbChT
Y3JvbGxpbmdOb2RlSUQsIGNvbnN0IEZsb2F0UG9pbnQmLCBPcHRpb25hbDxGbG9hdFBvaW50PiBs
YXlvdXRWaWV3cG9ydE9yaWdpbiwgU2Nyb2xsVHlwZSwgU2Nyb2xsaW5nTGF5ZXJQb3NpdGlvbkFj
dGlvbiwgSW5mb3JtV2hlZWxFdmVudE1vbml0b3IpOwotICAgIAotICAgIEZyYW1lVmlldyogZnJh
bWVWaWV3Rm9yU2Nyb2xsaW5nTm9kZShTY3JvbGxpbmdOb2RlSUQpIGNvbnN0OwogCiAgICAgc3Rk
Ojp1bmlxdWVfcHRyPFNjcm9sbGluZ1N0YXRlVHJlZT4gbV9zY3JvbGxpbmdTdGF0ZVRyZWU7CiAg
ICAgUmVmUHRyPFNjcm9sbGluZ1RyZWU+IG1fc2Nyb2xsaW5nVHJlZTsKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL3BhZ2Uvc2Nyb2xsaW5nL25pY29zaWEvU2Nyb2xsaW5nQ29vcmRpbmF0b3JO
aWNvc2lhLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BhZ2Uvc2Nyb2xsaW5nL25pY29zaWEvU2Nyb2xs
aW5nQ29vcmRpbmF0b3JOaWNvc2lhLmNwcAppbmRleCBkOWUxZTZiMjgxM2NjNDU2ZGU4YzNjMDE4
MTViMjFjNjA3ZDg0MTg3Li44ZWFiM2NhYTMzZThjMmZmODBkOTFiNjQ4NjI1Y2IyNjE4NmU3N2I3
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL3Njcm9sbGluZy9uaWNvc2lhL1Njcm9s
bGluZ0Nvb3JkaW5hdG9yTmljb3NpYS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGFnZS9zY3Jv
bGxpbmcvbmljb3NpYS9TY3JvbGxpbmdDb29yZGluYXRvck5pY29zaWEuY3BwCkBAIC0zMCw2ICsz
MCw4IEBACiAKICNpZiBFTkFCTEUoQVNZTkNfU0NST0xMSU5HKSAmJiBVU0UoTklDT1NJQSkKIAor
I2luY2x1ZGUgIkZyYW1lVmlldy5oIgorI2luY2x1ZGUgIk5pY29zaWFQbGF0Zm9ybUxheWVyLmgi
CiAjaW5jbHVkZSAiU2Nyb2xsaW5nVGhyZWFkLmgiCiAjaW5jbHVkZSAiU2Nyb2xsaW5nVHJlZU5p
Y29zaWEuaCIKIApAQCAtODEsNiArODMsMzMgQEAgYm9vbCBTY3JvbGxpbmdDb29yZGluYXRvck5p
Y29zaWE6OmhhbmRsZVdoZWVsRXZlbnQoRnJhbWVWaWV3JiwgY29uc3QgUGxhdGZvcm1XaGUKICAg
ICByZXR1cm4gdHJ1ZTsKIH0KIAordm9pZCBTY3JvbGxpbmdDb29yZGluYXRvck5pY29zaWE6OnNl
dE5vZGVMYXllcnMoU2Nyb2xsaW5nTm9kZUlEIG5vZGVJRCwgY29uc3QgTm9kZUxheWVycyYgbm9k
ZUxheWVycykKK3sKKyAgICBBc3luY1Njcm9sbGluZ0Nvb3JkaW5hdG9yOjpzZXROb2RlTGF5ZXJz
KG5vZGVJRCwgbm9kZUxheWVycyk7CisKKyAgICBpZiAobm9kZUxheWVycy5zY3JvbGxlZENvbnRl
bnRzTGF5ZXIpIHsKKyAgICAgICAgYXV0byogcGxhdGZvcm1MYXllciA9IG5vZGVMYXllcnMuc2Ny
b2xsZWRDb250ZW50c0xheWVyLT5wbGF0Zm9ybUxheWVyKCk7CisgICAgICAgIGlmIChwbGF0Zm9y
bUxheWVyKSB7CisgICAgICAgICAgICBhdXRvJiBjb21wb3NpdGlvbkxheWVyID0gZG93bmNhc3Q8
Tmljb3NpYTo6Q29tcG9zaXRpb25MYXllcj4oKnBsYXRmb3JtTGF5ZXIpOworCisgICAgICAgICAg
ICBTY3JvbGxpbmdOb2RlSUQgb2xkTm9kZUlEOworICAgICAgICAgICAgY29tcG9zaXRpb25MYXll
ci5hY2Nlc3NDb21taXR0ZWQoWyZvbGROb2RlSURdKE5pY29zaWE6OkNvbXBvc2l0aW9uTGF5ZXI6
OkxheWVyU3RhdGUmIHN0YXRlKSB7CisgICAgICAgICAgICAgICAgb2xkTm9kZUlEID0gc3RhdGUu
c2Nyb2xsaW5nTm9kZUlEOworICAgICAgICAgICAgfSk7CisKKyAgICAgICAgICAgIGlmIChvbGRO
b2RlSUQgIT0gbm9kZUlEKSB7CisgICAgICAgICAgICAgICAgTGF5ZXJUcmVlSGl0VGVzdExvY2tl
ciBsYXllckxvY2tlcih0aGlzKTsKKyAgICAgICAgICAgICAgICBjb21wb3NpdGlvbkxheWVyLnVw
ZGF0ZVN0YXRlKFsmbm9kZUlEXShOaWNvc2lhOjpDb21wb3NpdGlvbkxheWVyOjpMYXllclN0YXRl
JiBzdGF0ZSkgeworICAgICAgICAgICAgICAgICAgICBzdGF0ZS5zY3JvbGxpbmdOb2RlSUQgPSBu
b2RlSUQ7CisgICAgICAgICAgICAgICAgICAgIHN0YXRlLmRlbHRhLnNjcm9sbGluZ05vZGVDaGFu
Z2VkID0gdHJ1ZTsKKyAgICAgICAgICAgICAgICB9KTsKKyAgICAgICAgICAgICAgICBpZiAoYXV0
byogZnJhbWVWaWV3ID0gZnJhbWVWaWV3Rm9yU2Nyb2xsaW5nTm9kZShub2RlSUQpKQorICAgICAg
ICAgICAgICAgICAgICBmcmFtZVZpZXctPmZsdXNoQ29tcG9zaXRpbmdTdGF0ZUluY2x1ZGluZ1N1
YmZyYW1lcygpOworICAgICAgICAgICAgfQorICAgICAgICB9CisgICAgfQorfQorCiB2b2lkIFNj
cm9sbGluZ0Nvb3JkaW5hdG9yTmljb3NpYTo6c2NoZWR1bGVUcmVlU3RhdGVDb21taXQoKQogewog
ICAgIGlmICghbV9zY3JvbGxpbmdTdGF0ZVRyZWVDb21taXR0ZXJUaW1lci5pc0FjdGl2ZSgpKQpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGFnZS9zY3JvbGxpbmcvbmljb3NpYS9TY3JvbGxp
bmdDb29yZGluYXRvck5pY29zaWEuaCBiL1NvdXJjZS9XZWJDb3JlL3BhZ2Uvc2Nyb2xsaW5nL25p
Y29zaWEvU2Nyb2xsaW5nQ29vcmRpbmF0b3JOaWNvc2lhLmgKaW5kZXggODQ1NjY1Y2U3NzE4YzYw
ZGQ0ZGIxMjgwNmNkZjNjOTE1NGY4ZTRmMi4uZjEyOTQ5NjhmYmI1MzdkN2JmZjdlYzI1NzY4Y2Zl
ZGFkNTVkYzAzYiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGFnZS9zY3JvbGxpbmcvbmlj
b3NpYS9TY3JvbGxpbmdDb29yZGluYXRvck5pY29zaWEuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9w
YWdlL3Njcm9sbGluZy9uaWNvc2lhL1Njcm9sbGluZ0Nvb3JkaW5hdG9yTmljb3NpYS5oCkBAIC00
Nyw2ICs0Nyw3IEBAIHB1YmxpYzoKICAgICBib29sIGhhbmRsZVdoZWVsRXZlbnQoRnJhbWVWaWV3
JiwgY29uc3QgUGxhdGZvcm1XaGVlbEV2ZW50JiwgU2Nyb2xsaW5nTm9kZUlEKSBvdmVycmlkZTsK
IAogcHJpdmF0ZToKKyAgICB2b2lkIHNldE5vZGVMYXllcnMoU2Nyb2xsaW5nTm9kZUlELCBjb25z
dCBOb2RlTGF5ZXJzJikgZmluYWw7CiAgICAgdm9pZCBzY2hlZHVsZVRyZWVTdGF0ZUNvbW1pdCgp
IG92ZXJyaWRlOwogCiAgICAgdm9pZCBjb21taXRUcmVlU3RhdGUoKTsKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL3BhZ2Uvc2Nyb2xsaW5nL25pY29zaWEvU2Nyb2xsaW5nVHJlZUZyYW1lU2Ny
b2xsaW5nTm9kZU5pY29zaWEuY3BwIGIvU291cmNlL1dlYkNvcmUvcGFnZS9zY3JvbGxpbmcvbmlj
b3NpYS9TY3JvbGxpbmdUcmVlRnJhbWVTY3JvbGxpbmdOb2RlTmljb3NpYS5jcHAKaW5kZXggZjA1
ZjM5ZDg2MzA4ZGEzNmZmMzI0NjY5ODAyMDI4MzYzZGJmNWU4ZS4uMjIxOWE3MGIwY2E4NmY1OWZh
N2I3NWIyMzkyYjM3M2Q0NmZiN2NhZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGFnZS9z
Y3JvbGxpbmcvbmljb3NpYS9TY3JvbGxpbmdUcmVlRnJhbWVTY3JvbGxpbmdOb2RlTmljb3NpYS5j
cHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGFnZS9zY3JvbGxpbmcvbmljb3NpYS9TY3JvbGxpbmdU
cmVlRnJhbWVTY3JvbGxpbmdOb2RlTmljb3NpYS5jcHAKQEAgLTg5LDE2ICs4OSw2IEBAIHZvaWQg
U2Nyb2xsaW5nVHJlZUZyYW1lU2Nyb2xsaW5nTm9kZU5pY29zaWE6OmNvbW1pdFN0YXRlQmVmb3Jl
Q2hpbGRyZW4oY29uc3QgU2NyCiAgICAgICAgIGF1dG8qIGxheWVyID0gc3RhdGljX2Nhc3Q8Tmlj
b3NpYTo6UGxhdGZvcm1MYXllcio+KHNjcm9sbGluZ1N0YXRlTm9kZS5mb290ZXJMYXllcigpKTsK
ICAgICAgICAgbV9mb290ZXJMYXllciA9IGRvd25jYXN0PE5pY29zaWE6OkNvbXBvc2l0aW9uTGF5
ZXI+KGxheWVyKTsKICAgICB9Ci0gICAgaWYgKHNjcm9sbGluZ1N0YXRlTm9kZS5oYXNDaGFuZ2Vk
UHJvcGVydHkoU2Nyb2xsaW5nU3RhdGVOb2RlOjpQcm9wZXJ0eTo6U2Nyb2xsZWRDb250ZW50c0xh
eWVyKSkgewotICAgICAgICBhdXRvKiBzY3JvbGxMYXllciA9IHN0YXRpY19jYXN0PE5pY29zaWE6
OlBsYXRmb3JtTGF5ZXIqPihzY3JvbGxlZENvbnRlbnRzTGF5ZXIoKSk7Ci0gICAgICAgIEFTU0VS
VChzY3JvbGxMYXllcik7Ci0gICAgICAgIGF1dG8mIGNvbXBvc2l0aW9uTGF5ZXIgPSBkb3duY2Fz
dDxOaWNvc2lhOjpDb21wb3NpdGlvbkxheWVyPigqc2Nyb2xsTGF5ZXIpOwotICAgICAgICBhdXRv
IHVwZGF0ZVNjb3BlID0gY29tcG9zaXRpb25MYXllci5jcmVhdGVVcGRhdGVTY29wZSgpOwotICAg
ICAgICBjb21wb3NpdGlvbkxheWVyLnVwZGF0ZVN0YXRlKFtub2RlSUQgPSBzY3JvbGxpbmdOb2Rl
SUQoKV0oTmljb3NpYTo6Q29tcG9zaXRpb25MYXllcjo6TGF5ZXJTdGF0ZSYgc3RhdGUpIHsKLSAg
ICAgICAgICAgIHN0YXRlLnNjcm9sbGluZ05vZGVJRCA9IG5vZGVJRDsKLSAgICAgICAgICAgIHN0
YXRlLmRlbHRhLnNjcm9sbGluZ05vZGVDaGFuZ2VkID0gdHJ1ZTsKLSAgICAgICAgfSk7Ci0gICAg
fQogfQogCiB2b2lkIFNjcm9sbGluZ1RyZWVGcmFtZVNjcm9sbGluZ05vZGVOaWNvc2lhOjpjb21t
aXRTdGF0ZUFmdGVyQ2hpbGRyZW4oY29uc3QgU2Nyb2xsaW5nU3RhdGVOb2RlJiBzdGF0ZU5vZGUp
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL3Njcm9sbGluZy9uaWNvc2lhL1Njcm9s
bGluZ1RyZWVPdmVyZmxvd1Njcm9sbGluZ05vZGVOaWNvc2lhLmNwcCBiL1NvdXJjZS9XZWJDb3Jl
L3BhZ2Uvc2Nyb2xsaW5nL25pY29zaWEvU2Nyb2xsaW5nVHJlZU92ZXJmbG93U2Nyb2xsaW5nTm9k
ZU5pY29zaWEuY3BwCmluZGV4IDQ0NmI3NWVmZjhiMWEwMGQ3YjI0NDRmM2U5NzNmOTkzZTRjZjkz
M2MuLjNiMzI0ODZmNGNjNzc2YTYyZWI1YTg2YTdlNzYwZDIxOWQxYmI4MDggMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL3BhZ2Uvc2Nyb2xsaW5nL25pY29zaWEvU2Nyb2xsaW5nVHJlZU92ZXJm
bG93U2Nyb2xsaW5nTm9kZU5pY29zaWEuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BhZ2Uvc2Ny
b2xsaW5nL25pY29zaWEvU2Nyb2xsaW5nVHJlZU92ZXJmbG93U2Nyb2xsaW5nTm9kZU5pY29zaWEu
Y3BwCkBAIC01NiwyMyArNTYsNiBAQCBTY3JvbGxpbmdUcmVlT3ZlcmZsb3dTY3JvbGxpbmdOb2Rl
Tmljb3NpYTo6U2Nyb2xsaW5nVHJlZU92ZXJmbG93U2Nyb2xsaW5nTm9kZU5pYwogCiBTY3JvbGxp
bmdUcmVlT3ZlcmZsb3dTY3JvbGxpbmdOb2RlTmljb3NpYTo6flNjcm9sbGluZ1RyZWVPdmVyZmxv
d1Njcm9sbGluZ05vZGVOaWNvc2lhKCkgPSBkZWZhdWx0OwogCi12b2lkIFNjcm9sbGluZ1RyZWVP
dmVyZmxvd1Njcm9sbGluZ05vZGVOaWNvc2lhOjpjb21taXRTdGF0ZUJlZm9yZUNoaWxkcmVuKGNv
bnN0IFNjcm9sbGluZ1N0YXRlTm9kZSYgc3RhdGVOb2RlKQotewotICAgIFNjcm9sbGluZ1RyZWVT
Y3JvbGxpbmdOb2RlOjpjb21taXRTdGF0ZUJlZm9yZUNoaWxkcmVuKHN0YXRlTm9kZSk7Ci0KLSAg
ICBjb25zdCBhdXRvJiBzY3JvbGxpbmdTdGF0ZU5vZGUgPSBkb3duY2FzdDxTY3JvbGxpbmdTdGF0
ZU92ZXJmbG93U2Nyb2xsaW5nTm9kZT4oc3RhdGVOb2RlKTsKLSAgICBpZiAoc2Nyb2xsaW5nU3Rh
dGVOb2RlLmhhc0NoYW5nZWRQcm9wZXJ0eShTY3JvbGxpbmdTdGF0ZU5vZGU6OlByb3BlcnR5OjpT
Y3JvbGxlZENvbnRlbnRzTGF5ZXIpKSB7Ci0gICAgICAgIGF1dG8qIHNjcm9sbExheWVyID0gc3Rh
dGljX2Nhc3Q8Tmljb3NpYTo6UGxhdGZvcm1MYXllcio+KHNjcm9sbGVkQ29udGVudHNMYXllcigp
KTsKLSAgICAgICAgQVNTRVJUKHNjcm9sbExheWVyKTsKLSAgICAgICAgYXV0byYgY29tcG9zaXRp
b25MYXllciA9IGRvd25jYXN0PE5pY29zaWE6OkNvbXBvc2l0aW9uTGF5ZXI+KCpzY3JvbGxMYXll
cik7Ci0gICAgICAgIGF1dG8gdXBkYXRlU2NvcGUgPSBjb21wb3NpdGlvbkxheWVyLmNyZWF0ZVVw
ZGF0ZVNjb3BlKCk7Ci0gICAgICAgIGNvbXBvc2l0aW9uTGF5ZXIudXBkYXRlU3RhdGUoW25vZGVJ
RCA9IHNjcm9sbGluZ05vZGVJRCgpXShOaWNvc2lhOjpDb21wb3NpdGlvbkxheWVyOjpMYXllclN0
YXRlJiBzdGF0ZSkgewotICAgICAgICAgICAgc3RhdGUuc2Nyb2xsaW5nTm9kZUlEID0gbm9kZUlE
OwotICAgICAgICAgICAgc3RhdGUuZGVsdGEuc2Nyb2xsaW5nTm9kZUNoYW5nZWQgPSB0cnVlOwot
ICAgICAgICB9KTsKLSAgICB9Ci19Ci0KIHZvaWQgU2Nyb2xsaW5nVHJlZU92ZXJmbG93U2Nyb2xs
aW5nTm9kZU5pY29zaWE6OmNvbW1pdFN0YXRlQWZ0ZXJDaGlsZHJlbihjb25zdCBTY3JvbGxpbmdT
dGF0ZU5vZGUmIHN0YXRlTm9kZSkKIHsKICAgICBTY3JvbGxpbmdUcmVlT3ZlcmZsb3dTY3JvbGxp
bmdOb2RlOjpjb21taXRTdGF0ZUFmdGVyQ2hpbGRyZW4oc3RhdGVOb2RlKTsKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL3BhZ2Uvc2Nyb2xsaW5nL25pY29zaWEvU2Nyb2xsaW5nVHJlZU92ZXJm
bG93U2Nyb2xsaW5nTm9kZU5pY29zaWEuaCBiL1NvdXJjZS9XZWJDb3JlL3BhZ2Uvc2Nyb2xsaW5n
L25pY29zaWEvU2Nyb2xsaW5nVHJlZU92ZXJmbG93U2Nyb2xsaW5nTm9kZU5pY29zaWEuaAppbmRl
eCBmNThhMDRkZTAzMTQ4YjE1OWQ2ZDUwZWUwNWJiYmE0MGUxMTlmYzUzLi4zYmQxYTQ1MzM3ZDAw
NjM3ODhlNTAxODU3M2ZhMDFhZTMwMGVhZmYyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9w
YWdlL3Njcm9sbGluZy9uaWNvc2lhL1Njcm9sbGluZ1RyZWVPdmVyZmxvd1Njcm9sbGluZ05vZGVO
aWNvc2lhLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGFnZS9zY3JvbGxpbmcvbmljb3NpYS9TY3Jv
bGxpbmdUcmVlT3ZlcmZsb3dTY3JvbGxpbmdOb2RlTmljb3NpYS5oCkBAIC00NCw3ICs0NCw2IEBA
IHB1YmxpYzoKIHByaXZhdGU6CiAgICAgU2Nyb2xsaW5nVHJlZU92ZXJmbG93U2Nyb2xsaW5nTm9k
ZU5pY29zaWEoU2Nyb2xsaW5nVHJlZSYsIFNjcm9sbGluZ05vZGVJRCk7CiAKLSAgICB2b2lkIGNv
bW1pdFN0YXRlQmVmb3JlQ2hpbGRyZW4oY29uc3QgU2Nyb2xsaW5nU3RhdGVOb2RlJikgb3ZlcnJp
ZGU7CiAgICAgdm9pZCBjb21taXRTdGF0ZUFmdGVyQ2hpbGRyZW4oY29uc3QgU2Nyb2xsaW5nU3Rh
dGVOb2RlJikgb3ZlcnJpZGU7CiAKICAgICBGbG9hdFBvaW50IGFkanVzdGVkU2Nyb2xsUG9zaXRp
b24oY29uc3QgRmxvYXRQb2ludCYsIFNjcm9sbENsYW1waW5nKSBjb25zdCBvdmVycmlkZTsK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>414326</attachid>
            <date>2020-11-17 02:36:38 -0800</date>
            <delta_ts>2020-11-17 08:52:03 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-218859-20201117103637.patch</filename>
            <type>text/plain</type>
            <size>7635</size>
            <attacher name="Chris Lord">clord</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjY5ODQzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZGUwZDkyM2Y1NWZkZDlj
YjA5NDY3MDQxYjE0YTQ4NTU3ODNjODNhZi4uNDRjMWI4MDQwZTU0YTE3NDIxYjlkYWI5MTAwZDcw
YzUwOTgxOTNiMCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIxIEBACisyMDIwLTExLTE3ICBDaHJp
cyBMb3JkICA8Y2xvcmRAaWdhbGlhLmNvbT4KKworICAgICAgICBSRUdSRVNTSU9OKHIyNjk1Nzkp
IFtXUEVdIE1hbnkgdGVzdHMgd2l0aCBzY3JvbGxpbmcgZmxha3kgYWZ0ZXIgdGhpcyByZXZpc2lv
bgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjE4ODU5
CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgU2V0IHNj
cm9sbGluZyBub2RlIElEIGNvcnJlY3RseSBvbiBDb29yZGluYXRlZEdyYXBoaWNzTGF5ZXIuCisK
KyAgICAgICAgKiBwYWdlL3Njcm9sbGluZy9uaWNvc2lhL1Njcm9sbGluZ1RyZWVGcmFtZVNjcm9s
bGluZ05vZGVOaWNvc2lhLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlNjcm9sbGluZ1RyZWVGcmFt
ZVNjcm9sbGluZ05vZGVOaWNvc2lhOjpjb21taXRTdGF0ZUJlZm9yZUNoaWxkcmVuKToKKyAgICAg
ICAgKiBwYWdlL3Njcm9sbGluZy9uaWNvc2lhL1Njcm9sbGluZ1RyZWVPdmVyZmxvd1Njcm9sbGlu
Z05vZGVOaWNvc2lhLmNwcDoKKyAgICAgICAgKiBwYWdlL3Njcm9sbGluZy9uaWNvc2lhL1Njcm9s
bGluZ1RyZWVPdmVyZmxvd1Njcm9sbGluZ05vZGVOaWNvc2lhLmg6CisgICAgICAgICogcGxhdGZv
cm0vZ3JhcGhpY3MvdGV4bWFwL2Nvb3JkaW5hdGVkL0Nvb3JkaW5hdGVkR3JhcGhpY3NMYXllci5j
cHA6CisgICAgICAgIChXZWJDb3JlOjpDb29yZGluYXRlZEdyYXBoaWNzTGF5ZXI6OnNldFNjcm9s
bGluZ05vZGVJRCk6CisgICAgICAgIChXZWJDb3JlOjpDb29yZGluYXRlZEdyYXBoaWNzTGF5ZXI6
OmZsdXNoQ29tcG9zaXRpbmdTdGF0ZUZvclRoaXNMYXllck9ubHkpOgorICAgICAgICAqIHBsYXRm
b3JtL2dyYXBoaWNzL3RleG1hcC9jb29yZGluYXRlZC9Db29yZGluYXRlZEdyYXBoaWNzTGF5ZXIu
aDoKKwogMjAyMC0xMS0xNiAgWmFuIERvYmVyc2VrICA8emRvYmVyc2VrQGlnYWxpYS5jb20+CiAK
ICAgICAgICAgUGxhdGZvcm1EaXNwbGF5TGliV1BFOiB1c2UgZWdsR2V0UGxhdGZvcm1EaXNwbGF5
IHdoZW4gcG9zc2libGUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BhZ2Uvc2Nyb2xsaW5n
L25pY29zaWEvU2Nyb2xsaW5nVHJlZUZyYW1lU2Nyb2xsaW5nTm9kZU5pY29zaWEuY3BwIGIvU291
cmNlL1dlYkNvcmUvcGFnZS9zY3JvbGxpbmcvbmljb3NpYS9TY3JvbGxpbmdUcmVlRnJhbWVTY3Jv
bGxpbmdOb2RlTmljb3NpYS5jcHAKaW5kZXggZjA1ZjM5ZDg2MzA4ZGEzNmZmMzI0NjY5ODAyMDI4
MzYzZGJmNWU4ZS4uMjIxOWE3MGIwY2E4NmY1OWZhN2I3NWIyMzkyYjM3M2Q0NmZiN2NhZCAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGFnZS9zY3JvbGxpbmcvbmljb3NpYS9TY3JvbGxpbmdU
cmVlRnJhbWVTY3JvbGxpbmdOb2RlTmljb3NpYS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGFn
ZS9zY3JvbGxpbmcvbmljb3NpYS9TY3JvbGxpbmdUcmVlRnJhbWVTY3JvbGxpbmdOb2RlTmljb3Np
YS5jcHAKQEAgLTg5LDE2ICs4OSw2IEBAIHZvaWQgU2Nyb2xsaW5nVHJlZUZyYW1lU2Nyb2xsaW5n
Tm9kZU5pY29zaWE6OmNvbW1pdFN0YXRlQmVmb3JlQ2hpbGRyZW4oY29uc3QgU2NyCiAgICAgICAg
IGF1dG8qIGxheWVyID0gc3RhdGljX2Nhc3Q8Tmljb3NpYTo6UGxhdGZvcm1MYXllcio+KHNjcm9s
bGluZ1N0YXRlTm9kZS5mb290ZXJMYXllcigpKTsKICAgICAgICAgbV9mb290ZXJMYXllciA9IGRv
d25jYXN0PE5pY29zaWE6OkNvbXBvc2l0aW9uTGF5ZXI+KGxheWVyKTsKICAgICB9Ci0gICAgaWYg
KHNjcm9sbGluZ1N0YXRlTm9kZS5oYXNDaGFuZ2VkUHJvcGVydHkoU2Nyb2xsaW5nU3RhdGVOb2Rl
OjpQcm9wZXJ0eTo6U2Nyb2xsZWRDb250ZW50c0xheWVyKSkgewotICAgICAgICBhdXRvKiBzY3Jv
bGxMYXllciA9IHN0YXRpY19jYXN0PE5pY29zaWE6OlBsYXRmb3JtTGF5ZXIqPihzY3JvbGxlZENv
bnRlbnRzTGF5ZXIoKSk7Ci0gICAgICAgIEFTU0VSVChzY3JvbGxMYXllcik7Ci0gICAgICAgIGF1
dG8mIGNvbXBvc2l0aW9uTGF5ZXIgPSBkb3duY2FzdDxOaWNvc2lhOjpDb21wb3NpdGlvbkxheWVy
Pigqc2Nyb2xsTGF5ZXIpOwotICAgICAgICBhdXRvIHVwZGF0ZVNjb3BlID0gY29tcG9zaXRpb25M
YXllci5jcmVhdGVVcGRhdGVTY29wZSgpOwotICAgICAgICBjb21wb3NpdGlvbkxheWVyLnVwZGF0
ZVN0YXRlKFtub2RlSUQgPSBzY3JvbGxpbmdOb2RlSUQoKV0oTmljb3NpYTo6Q29tcG9zaXRpb25M
YXllcjo6TGF5ZXJTdGF0ZSYgc3RhdGUpIHsKLSAgICAgICAgICAgIHN0YXRlLnNjcm9sbGluZ05v
ZGVJRCA9IG5vZGVJRDsKLSAgICAgICAgICAgIHN0YXRlLmRlbHRhLnNjcm9sbGluZ05vZGVDaGFu
Z2VkID0gdHJ1ZTsKLSAgICAgICAgfSk7Ci0gICAgfQogfQogCiB2b2lkIFNjcm9sbGluZ1RyZWVG
cmFtZVNjcm9sbGluZ05vZGVOaWNvc2lhOjpjb21taXRTdGF0ZUFmdGVyQ2hpbGRyZW4oY29uc3Qg
U2Nyb2xsaW5nU3RhdGVOb2RlJiBzdGF0ZU5vZGUpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9wYWdlL3Njcm9sbGluZy9uaWNvc2lhL1Njcm9sbGluZ1RyZWVPdmVyZmxvd1Njcm9sbGluZ05v
ZGVOaWNvc2lhLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BhZ2Uvc2Nyb2xsaW5nL25pY29zaWEvU2Ny
b2xsaW5nVHJlZU92ZXJmbG93U2Nyb2xsaW5nTm9kZU5pY29zaWEuY3BwCmluZGV4IDQ0NmI3NWVm
ZjhiMWEwMGQ3YjI0NDRmM2U5NzNmOTkzZTRjZjkzM2MuLjNiMzI0ODZmNGNjNzc2YTYyZWI1YTg2
YTdlNzYwZDIxOWQxYmI4MDggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BhZ2Uvc2Nyb2xs
aW5nL25pY29zaWEvU2Nyb2xsaW5nVHJlZU92ZXJmbG93U2Nyb2xsaW5nTm9kZU5pY29zaWEuY3Bw
CisrKyBiL1NvdXJjZS9XZWJDb3JlL3BhZ2Uvc2Nyb2xsaW5nL25pY29zaWEvU2Nyb2xsaW5nVHJl
ZU92ZXJmbG93U2Nyb2xsaW5nTm9kZU5pY29zaWEuY3BwCkBAIC01NiwyMyArNTYsNiBAQCBTY3Jv
bGxpbmdUcmVlT3ZlcmZsb3dTY3JvbGxpbmdOb2RlTmljb3NpYTo6U2Nyb2xsaW5nVHJlZU92ZXJm
bG93U2Nyb2xsaW5nTm9kZU5pYwogCiBTY3JvbGxpbmdUcmVlT3ZlcmZsb3dTY3JvbGxpbmdOb2Rl
Tmljb3NpYTo6flNjcm9sbGluZ1RyZWVPdmVyZmxvd1Njcm9sbGluZ05vZGVOaWNvc2lhKCkgPSBk
ZWZhdWx0OwogCi12b2lkIFNjcm9sbGluZ1RyZWVPdmVyZmxvd1Njcm9sbGluZ05vZGVOaWNvc2lh
Ojpjb21taXRTdGF0ZUJlZm9yZUNoaWxkcmVuKGNvbnN0IFNjcm9sbGluZ1N0YXRlTm9kZSYgc3Rh
dGVOb2RlKQotewotICAgIFNjcm9sbGluZ1RyZWVTY3JvbGxpbmdOb2RlOjpjb21taXRTdGF0ZUJl
Zm9yZUNoaWxkcmVuKHN0YXRlTm9kZSk7Ci0KLSAgICBjb25zdCBhdXRvJiBzY3JvbGxpbmdTdGF0
ZU5vZGUgPSBkb3duY2FzdDxTY3JvbGxpbmdTdGF0ZU92ZXJmbG93U2Nyb2xsaW5nTm9kZT4oc3Rh
dGVOb2RlKTsKLSAgICBpZiAoc2Nyb2xsaW5nU3RhdGVOb2RlLmhhc0NoYW5nZWRQcm9wZXJ0eShT
Y3JvbGxpbmdTdGF0ZU5vZGU6OlByb3BlcnR5OjpTY3JvbGxlZENvbnRlbnRzTGF5ZXIpKSB7Ci0g
ICAgICAgIGF1dG8qIHNjcm9sbExheWVyID0gc3RhdGljX2Nhc3Q8Tmljb3NpYTo6UGxhdGZvcm1M
YXllcio+KHNjcm9sbGVkQ29udGVudHNMYXllcigpKTsKLSAgICAgICAgQVNTRVJUKHNjcm9sbExh
eWVyKTsKLSAgICAgICAgYXV0byYgY29tcG9zaXRpb25MYXllciA9IGRvd25jYXN0PE5pY29zaWE6
OkNvbXBvc2l0aW9uTGF5ZXI+KCpzY3JvbGxMYXllcik7Ci0gICAgICAgIGF1dG8gdXBkYXRlU2Nv
cGUgPSBjb21wb3NpdGlvbkxheWVyLmNyZWF0ZVVwZGF0ZVNjb3BlKCk7Ci0gICAgICAgIGNvbXBv
c2l0aW9uTGF5ZXIudXBkYXRlU3RhdGUoW25vZGVJRCA9IHNjcm9sbGluZ05vZGVJRCgpXShOaWNv
c2lhOjpDb21wb3NpdGlvbkxheWVyOjpMYXllclN0YXRlJiBzdGF0ZSkgewotICAgICAgICAgICAg
c3RhdGUuc2Nyb2xsaW5nTm9kZUlEID0gbm9kZUlEOwotICAgICAgICAgICAgc3RhdGUuZGVsdGEu
c2Nyb2xsaW5nTm9kZUNoYW5nZWQgPSB0cnVlOwotICAgICAgICB9KTsKLSAgICB9Ci19Ci0KIHZv
aWQgU2Nyb2xsaW5nVHJlZU92ZXJmbG93U2Nyb2xsaW5nTm9kZU5pY29zaWE6OmNvbW1pdFN0YXRl
QWZ0ZXJDaGlsZHJlbihjb25zdCBTY3JvbGxpbmdTdGF0ZU5vZGUmIHN0YXRlTm9kZSkKIHsKICAg
ICBTY3JvbGxpbmdUcmVlT3ZlcmZsb3dTY3JvbGxpbmdOb2RlOjpjb21taXRTdGF0ZUFmdGVyQ2hp
bGRyZW4oc3RhdGVOb2RlKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BhZ2Uvc2Nyb2xs
aW5nL25pY29zaWEvU2Nyb2xsaW5nVHJlZU92ZXJmbG93U2Nyb2xsaW5nTm9kZU5pY29zaWEuaCBi
L1NvdXJjZS9XZWJDb3JlL3BhZ2Uvc2Nyb2xsaW5nL25pY29zaWEvU2Nyb2xsaW5nVHJlZU92ZXJm
bG93U2Nyb2xsaW5nTm9kZU5pY29zaWEuaAppbmRleCBmNThhMDRkZTAzMTQ4YjE1OWQ2ZDUwZWUw
NWJiYmE0MGUxMTlmYzUzLi4zYmQxYTQ1MzM3ZDAwNjM3ODhlNTAxODU3M2ZhMDFhZTMwMGVhZmYy
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL3Njcm9sbGluZy9uaWNvc2lhL1Njcm9s
bGluZ1RyZWVPdmVyZmxvd1Njcm9sbGluZ05vZGVOaWNvc2lhLmgKKysrIGIvU291cmNlL1dlYkNv
cmUvcGFnZS9zY3JvbGxpbmcvbmljb3NpYS9TY3JvbGxpbmdUcmVlT3ZlcmZsb3dTY3JvbGxpbmdO
b2RlTmljb3NpYS5oCkBAIC00NCw3ICs0NCw2IEBAIHB1YmxpYzoKIHByaXZhdGU6CiAgICAgU2Ny
b2xsaW5nVHJlZU92ZXJmbG93U2Nyb2xsaW5nTm9kZU5pY29zaWEoU2Nyb2xsaW5nVHJlZSYsIFNj
cm9sbGluZ05vZGVJRCk7CiAKLSAgICB2b2lkIGNvbW1pdFN0YXRlQmVmb3JlQ2hpbGRyZW4oY29u
c3QgU2Nyb2xsaW5nU3RhdGVOb2RlJikgb3ZlcnJpZGU7CiAgICAgdm9pZCBjb21taXRTdGF0ZUFm
dGVyQ2hpbGRyZW4oY29uc3QgU2Nyb2xsaW5nU3RhdGVOb2RlJikgb3ZlcnJpZGU7CiAKICAgICBG
bG9hdFBvaW50IGFkanVzdGVkU2Nyb2xsUG9zaXRpb24oY29uc3QgRmxvYXRQb2ludCYsIFNjcm9s
bENsYW1waW5nKSBjb25zdCBvdmVycmlkZTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL2dyYXBoaWNzL3RleG1hcC9jb29yZGluYXRlZC9Db29yZGluYXRlZEdyYXBoaWNzTGF5
ZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvdGV4bWFwL2Nvb3JkaW5h
dGVkL0Nvb3JkaW5hdGVkR3JhcGhpY3NMYXllci5jcHAKaW5kZXggNzc1MWJiOGQyZmYwZGU4ODdi
ZjQyMjYxYWEzNzJhYjFkMGY5YzkwNi4uNmM0MmRjYjhmMjg0MTJlOWYyZGNmMTUzOTQ3ODgyMmQz
MDlmZWY4MSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvdGV4
bWFwL2Nvb3JkaW5hdGVkL0Nvb3JkaW5hdGVkR3JhcGhpY3NMYXllci5jcHAKKysrIGIvU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvdGV4bWFwL2Nvb3JkaW5hdGVkL0Nvb3JkaW5hdGVk
R3JhcGhpY3NMYXllci5jcHAKQEAgLTI0NCw2ICsyNDQsMTUgQEAgdm9pZCBDb29yZGluYXRlZEdy
YXBoaWNzTGF5ZXI6OnJlbW92ZUZyb21QYXJlbnQoKQogICAgIEdyYXBoaWNzTGF5ZXI6OnJlbW92
ZUZyb21QYXJlbnQoKTsKIH0KIAordm9pZCBDb29yZGluYXRlZEdyYXBoaWNzTGF5ZXI6OnNldFNj
cm9sbGluZ05vZGVJRChTY3JvbGxpbmdOb2RlSUQgbm9kZUlEKQoreworICAgIGlmIChzY3JvbGxp
bmdOb2RlSUQoKSA9PSBub2RlSUQpCisgICAgICAgIHJldHVybjsKKworICAgIEdyYXBoaWNzTGF5
ZXI6OnNldFNjcm9sbGluZ05vZGVJRChub2RlSUQpOworICAgIG1fbmljb3NpYS5kZWx0YS5zY3Jv
bGxpbmdOb2RlQ2hhbmdlZCA9IHRydWU7Cit9CisKIHZvaWQgQ29vcmRpbmF0ZWRHcmFwaGljc0xh
eWVyOjpzZXRQb3NpdGlvbihjb25zdCBGbG9hdFBvaW50JiBwKQogewogICAgIGlmIChwb3NpdGlv
bigpID09IHApCkBAIC0xMDAyLDYgKzEwMTEsOCBAQCB2b2lkIENvb3JkaW5hdGVkR3JhcGhpY3NM
YXllcjo6Zmx1c2hDb21wb3NpdGluZ1N0YXRlRm9yVGhpc0xheWVyT25seSgpCiAgICAgICAgICAg
ICAgICAgICAgIHN0YXRlLmltYWdlQmFja2luZyA9IG1fbmljb3NpYS5pbWFnZUJhY2tpbmc7CiAg
ICAgICAgICAgICAgICAgaWYgKGxvY2FsRGVsdGEuYW5pbWF0ZWRCYWNraW5nU3RvcmVDbGllbnRD
aGFuZ2VkKQogICAgICAgICAgICAgICAgICAgICBzdGF0ZS5hbmltYXRlZEJhY2tpbmdTdG9yZUNs
aWVudCA9IG1fbmljb3NpYS5hbmltYXRlZEJhY2tpbmdTdG9yZUNsaWVudDsKKyAgICAgICAgICAg
ICAgICBpZiAobG9jYWxEZWx0YS5zY3JvbGxpbmdOb2RlQ2hhbmdlZCkKKyAgICAgICAgICAgICAg
ICAgICAgc3RhdGUuc2Nyb2xsaW5nTm9kZUlEID0gc2Nyb2xsaW5nTm9kZUlEKCk7CiAgICAgICAg
ICAgICB9KTsKICAgICAgICAgbV9uaWNvc2lhLnBlcmZvcm1MYXllclN5bmMgPSAhIW1fbmljb3Np
YS5kZWx0YS52YWx1ZTsKICAgICAgICAgbV9uaWNvc2lhLmRlbHRhID0geyB9OwpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvdGV4bWFwL2Nvb3JkaW5hdGVkL0Nv
b3JkaW5hdGVkR3JhcGhpY3NMYXllci5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhp
Y3MvdGV4bWFwL2Nvb3JkaW5hdGVkL0Nvb3JkaW5hdGVkR3JhcGhpY3NMYXllci5oCmluZGV4IDlm
MGUxNDk2YmRjYzVkMmRiNmE5ZTY2YjAyNDIzNWQzNzI0YTYyNTguLjY0YTcwOWUwZDEzZGM2Yzk1
MDBjNzY1OGJlYzJiY2VjZDcyYjMyMjYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRm
b3JtL2dyYXBoaWNzL3RleG1hcC9jb29yZGluYXRlZC9Db29yZGluYXRlZEdyYXBoaWNzTGF5ZXIu
aAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy90ZXhtYXAvY29vcmRpbmF0
ZWQvQ29vcmRpbmF0ZWRHcmFwaGljc0xheWVyLmgKQEAgLTcxLDYgKzcxLDcgQEAgcHVibGljOgog
ICAgIHZvaWQgYWRkQ2hpbGRCZWxvdyhSZWY8R3JhcGhpY3NMYXllcj4mJiwgR3JhcGhpY3NMYXll
ciopIG92ZXJyaWRlOwogICAgIGJvb2wgcmVwbGFjZUNoaWxkKEdyYXBoaWNzTGF5ZXIqLCBSZWY8
R3JhcGhpY3NMYXllcj4mJikgb3ZlcnJpZGU7CiAgICAgdm9pZCByZW1vdmVGcm9tUGFyZW50KCkg
b3ZlcnJpZGU7CisgICAgdm9pZCBzZXRTY3JvbGxpbmdOb2RlSUQoU2Nyb2xsaW5nTm9kZUlEKSBv
dmVycmlkZTsKICAgICB2b2lkIHNldFBvc2l0aW9uKGNvbnN0IEZsb2F0UG9pbnQmKSBvdmVycmlk
ZTsKICAgICB2b2lkIHN5bmNQb3NpdGlvbihjb25zdCBGbG9hdFBvaW50Jikgb3ZlcnJpZGU7CiAg
ICAgdm9pZCBzZXRBbmNob3JQb2ludChjb25zdCBGbG9hdFBvaW50M0QmKSBvdmVycmlkZTsK
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>414346</attachid>
            <date>2020-11-17 08:52:07 -0800</date>
            <delta_ts>2020-11-17 09:38:51 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-218859-20201117165206.patch</filename>
            <type>text/plain</type>
            <size>7633</size>
            <attacher name="Chris Lord">clord</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjY5ODQzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZGUwZDkyM2Y1NWZkZDlj
YjA5NDY3MDQxYjE0YTQ4NTU3ODNjODNhZi4uZTU4Y2E2MzhiOWQ4NmY4ZTYwMjU3NDc1MWU5NDBi
NWExZDgzMWNhYSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIxIEBACisyMDIwLTExLTE3ICBDaHJp
cyBMb3JkICA8Y2xvcmRAaWdhbGlhLmNvbT4KKworICAgICAgICBSRUdSRVNTSU9OKHIyNjk1Nzkp
IFtXUEVdIE1hbnkgdGVzdHMgd2l0aCBzY3JvbGxpbmcgZmxha3kgYWZ0ZXIgdGhpcyByZXZpc2lv
bgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjE4ODU5
CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgU2ltb24gRnJhc2VyLgorCisgICAgICAgIFNldCBzY3Jv
bGxpbmcgbm9kZSBJRCBjb3JyZWN0bHkgb24gQ29vcmRpbmF0ZWRHcmFwaGljc0xheWVyLgorCisg
ICAgICAgICogcGFnZS9zY3JvbGxpbmcvbmljb3NpYS9TY3JvbGxpbmdUcmVlRnJhbWVTY3JvbGxp
bmdOb2RlTmljb3NpYS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpTY3JvbGxpbmdUcmVlRnJhbWVT
Y3JvbGxpbmdOb2RlTmljb3NpYTo6Y29tbWl0U3RhdGVCZWZvcmVDaGlsZHJlbik6CisgICAgICAg
ICogcGFnZS9zY3JvbGxpbmcvbmljb3NpYS9TY3JvbGxpbmdUcmVlT3ZlcmZsb3dTY3JvbGxpbmdO
b2RlTmljb3NpYS5jcHA6CisgICAgICAgICogcGFnZS9zY3JvbGxpbmcvbmljb3NpYS9TY3JvbGxp
bmdUcmVlT3ZlcmZsb3dTY3JvbGxpbmdOb2RlTmljb3NpYS5oOgorICAgICAgICAqIHBsYXRmb3Jt
L2dyYXBoaWNzL3RleG1hcC9jb29yZGluYXRlZC9Db29yZGluYXRlZEdyYXBoaWNzTGF5ZXIuY3Bw
OgorICAgICAgICAoV2ViQ29yZTo6Q29vcmRpbmF0ZWRHcmFwaGljc0xheWVyOjpzZXRTY3JvbGxp
bmdOb2RlSUQpOgorICAgICAgICAoV2ViQ29yZTo6Q29vcmRpbmF0ZWRHcmFwaGljc0xheWVyOjpm
bHVzaENvbXBvc2l0aW5nU3RhdGVGb3JUaGlzTGF5ZXJPbmx5KToKKyAgICAgICAgKiBwbGF0Zm9y
bS9ncmFwaGljcy90ZXhtYXAvY29vcmRpbmF0ZWQvQ29vcmRpbmF0ZWRHcmFwaGljc0xheWVyLmg6
CisKIDIwMjAtMTEtMTYgIFphbiBEb2JlcnNlayAgPHpkb2JlcnNla0BpZ2FsaWEuY29tPgogCiAg
ICAgICAgIFBsYXRmb3JtRGlzcGxheUxpYldQRTogdXNlIGVnbEdldFBsYXRmb3JtRGlzcGxheSB3
aGVuIHBvc3NpYmxlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL3Njcm9sbGluZy9u
aWNvc2lhL1Njcm9sbGluZ1RyZWVGcmFtZVNjcm9sbGluZ05vZGVOaWNvc2lhLmNwcCBiL1NvdXJj
ZS9XZWJDb3JlL3BhZ2Uvc2Nyb2xsaW5nL25pY29zaWEvU2Nyb2xsaW5nVHJlZUZyYW1lU2Nyb2xs
aW5nTm9kZU5pY29zaWEuY3BwCmluZGV4IGYwNWYzOWQ4NjMwOGRhMzZmZjMyNDY2OTgwMjAyODM2
M2RiZjVlOGUuLjIyMTlhNzBiMGNhODZmNTlmYTdiNzViMjM5MmIzNzNkNDZmYjdjYWQgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BhZ2Uvc2Nyb2xsaW5nL25pY29zaWEvU2Nyb2xsaW5nVHJl
ZUZyYW1lU2Nyb2xsaW5nTm9kZU5pY29zaWEuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BhZ2Uv
c2Nyb2xsaW5nL25pY29zaWEvU2Nyb2xsaW5nVHJlZUZyYW1lU2Nyb2xsaW5nTm9kZU5pY29zaWEu
Y3BwCkBAIC04OSwxNiArODksNiBAQCB2b2lkIFNjcm9sbGluZ1RyZWVGcmFtZVNjcm9sbGluZ05v
ZGVOaWNvc2lhOjpjb21taXRTdGF0ZUJlZm9yZUNoaWxkcmVuKGNvbnN0IFNjcgogICAgICAgICBh
dXRvKiBsYXllciA9IHN0YXRpY19jYXN0PE5pY29zaWE6OlBsYXRmb3JtTGF5ZXIqPihzY3JvbGxp
bmdTdGF0ZU5vZGUuZm9vdGVyTGF5ZXIoKSk7CiAgICAgICAgIG1fZm9vdGVyTGF5ZXIgPSBkb3du
Y2FzdDxOaWNvc2lhOjpDb21wb3NpdGlvbkxheWVyPihsYXllcik7CiAgICAgfQotICAgIGlmIChz
Y3JvbGxpbmdTdGF0ZU5vZGUuaGFzQ2hhbmdlZFByb3BlcnR5KFNjcm9sbGluZ1N0YXRlTm9kZTo6
UHJvcGVydHk6OlNjcm9sbGVkQ29udGVudHNMYXllcikpIHsKLSAgICAgICAgYXV0byogc2Nyb2xs
TGF5ZXIgPSBzdGF0aWNfY2FzdDxOaWNvc2lhOjpQbGF0Zm9ybUxheWVyKj4oc2Nyb2xsZWRDb250
ZW50c0xheWVyKCkpOwotICAgICAgICBBU1NFUlQoc2Nyb2xsTGF5ZXIpOwotICAgICAgICBhdXRv
JiBjb21wb3NpdGlvbkxheWVyID0gZG93bmNhc3Q8Tmljb3NpYTo6Q29tcG9zaXRpb25MYXllcj4o
KnNjcm9sbExheWVyKTsKLSAgICAgICAgYXV0byB1cGRhdGVTY29wZSA9IGNvbXBvc2l0aW9uTGF5
ZXIuY3JlYXRlVXBkYXRlU2NvcGUoKTsKLSAgICAgICAgY29tcG9zaXRpb25MYXllci51cGRhdGVT
dGF0ZShbbm9kZUlEID0gc2Nyb2xsaW5nTm9kZUlEKCldKE5pY29zaWE6OkNvbXBvc2l0aW9uTGF5
ZXI6OkxheWVyU3RhdGUmIHN0YXRlKSB7Ci0gICAgICAgICAgICBzdGF0ZS5zY3JvbGxpbmdOb2Rl
SUQgPSBub2RlSUQ7Ci0gICAgICAgICAgICBzdGF0ZS5kZWx0YS5zY3JvbGxpbmdOb2RlQ2hhbmdl
ZCA9IHRydWU7Ci0gICAgICAgIH0pOwotICAgIH0KIH0KIAogdm9pZCBTY3JvbGxpbmdUcmVlRnJh
bWVTY3JvbGxpbmdOb2RlTmljb3NpYTo6Y29tbWl0U3RhdGVBZnRlckNoaWxkcmVuKGNvbnN0IFNj
cm9sbGluZ1N0YXRlTm9kZSYgc3RhdGVOb2RlKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
cGFnZS9zY3JvbGxpbmcvbmljb3NpYS9TY3JvbGxpbmdUcmVlT3ZlcmZsb3dTY3JvbGxpbmdOb2Rl
Tmljb3NpYS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL3Njcm9sbGluZy9uaWNvc2lhL1Njcm9s
bGluZ1RyZWVPdmVyZmxvd1Njcm9sbGluZ05vZGVOaWNvc2lhLmNwcAppbmRleCA0NDZiNzVlZmY4
YjFhMDBkN2IyNDQ0ZjNlOTczZjk5M2U0Y2Y5MzNjLi4zYjMyNDg2ZjRjYzc3NmE2MmViNWE4NmE3
ZTc2MGQyMTlkMWJiODA4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL3Njcm9sbGlu
Zy9uaWNvc2lhL1Njcm9sbGluZ1RyZWVPdmVyZmxvd1Njcm9sbGluZ05vZGVOaWNvc2lhLmNwcAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL3Njcm9sbGluZy9uaWNvc2lhL1Njcm9sbGluZ1RyZWVP
dmVyZmxvd1Njcm9sbGluZ05vZGVOaWNvc2lhLmNwcApAQCAtNTYsMjMgKzU2LDYgQEAgU2Nyb2xs
aW5nVHJlZU92ZXJmbG93U2Nyb2xsaW5nTm9kZU5pY29zaWE6OlNjcm9sbGluZ1RyZWVPdmVyZmxv
d1Njcm9sbGluZ05vZGVOaWMKIAogU2Nyb2xsaW5nVHJlZU92ZXJmbG93U2Nyb2xsaW5nTm9kZU5p
Y29zaWE6On5TY3JvbGxpbmdUcmVlT3ZlcmZsb3dTY3JvbGxpbmdOb2RlTmljb3NpYSgpID0gZGVm
YXVsdDsKIAotdm9pZCBTY3JvbGxpbmdUcmVlT3ZlcmZsb3dTY3JvbGxpbmdOb2RlTmljb3NpYTo6
Y29tbWl0U3RhdGVCZWZvcmVDaGlsZHJlbihjb25zdCBTY3JvbGxpbmdTdGF0ZU5vZGUmIHN0YXRl
Tm9kZSkKLXsKLSAgICBTY3JvbGxpbmdUcmVlU2Nyb2xsaW5nTm9kZTo6Y29tbWl0U3RhdGVCZWZv
cmVDaGlsZHJlbihzdGF0ZU5vZGUpOwotCi0gICAgY29uc3QgYXV0byYgc2Nyb2xsaW5nU3RhdGVO
b2RlID0gZG93bmNhc3Q8U2Nyb2xsaW5nU3RhdGVPdmVyZmxvd1Njcm9sbGluZ05vZGU+KHN0YXRl
Tm9kZSk7Ci0gICAgaWYgKHNjcm9sbGluZ1N0YXRlTm9kZS5oYXNDaGFuZ2VkUHJvcGVydHkoU2Ny
b2xsaW5nU3RhdGVOb2RlOjpQcm9wZXJ0eTo6U2Nyb2xsZWRDb250ZW50c0xheWVyKSkgewotICAg
ICAgICBhdXRvKiBzY3JvbGxMYXllciA9IHN0YXRpY19jYXN0PE5pY29zaWE6OlBsYXRmb3JtTGF5
ZXIqPihzY3JvbGxlZENvbnRlbnRzTGF5ZXIoKSk7Ci0gICAgICAgIEFTU0VSVChzY3JvbGxMYXll
cik7Ci0gICAgICAgIGF1dG8mIGNvbXBvc2l0aW9uTGF5ZXIgPSBkb3duY2FzdDxOaWNvc2lhOjpD
b21wb3NpdGlvbkxheWVyPigqc2Nyb2xsTGF5ZXIpOwotICAgICAgICBhdXRvIHVwZGF0ZVNjb3Bl
ID0gY29tcG9zaXRpb25MYXllci5jcmVhdGVVcGRhdGVTY29wZSgpOwotICAgICAgICBjb21wb3Np
dGlvbkxheWVyLnVwZGF0ZVN0YXRlKFtub2RlSUQgPSBzY3JvbGxpbmdOb2RlSUQoKV0oTmljb3Np
YTo6Q29tcG9zaXRpb25MYXllcjo6TGF5ZXJTdGF0ZSYgc3RhdGUpIHsKLSAgICAgICAgICAgIHN0
YXRlLnNjcm9sbGluZ05vZGVJRCA9IG5vZGVJRDsKLSAgICAgICAgICAgIHN0YXRlLmRlbHRhLnNj
cm9sbGluZ05vZGVDaGFuZ2VkID0gdHJ1ZTsKLSAgICAgICAgfSk7Ci0gICAgfQotfQotCiB2b2lk
IFNjcm9sbGluZ1RyZWVPdmVyZmxvd1Njcm9sbGluZ05vZGVOaWNvc2lhOjpjb21taXRTdGF0ZUFm
dGVyQ2hpbGRyZW4oY29uc3QgU2Nyb2xsaW5nU3RhdGVOb2RlJiBzdGF0ZU5vZGUpCiB7CiAgICAg
U2Nyb2xsaW5nVHJlZU92ZXJmbG93U2Nyb2xsaW5nTm9kZTo6Y29tbWl0U3RhdGVBZnRlckNoaWxk
cmVuKHN0YXRlTm9kZSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL3Njcm9sbGlu
Zy9uaWNvc2lhL1Njcm9sbGluZ1RyZWVPdmVyZmxvd1Njcm9sbGluZ05vZGVOaWNvc2lhLmggYi9T
b3VyY2UvV2ViQ29yZS9wYWdlL3Njcm9sbGluZy9uaWNvc2lhL1Njcm9sbGluZ1RyZWVPdmVyZmxv
d1Njcm9sbGluZ05vZGVOaWNvc2lhLmgKaW5kZXggZjU4YTA0ZGUwMzE0OGIxNTlkNmQ1MGVlMDVi
YmJhNDBlMTE5ZmM1My4uM2JkMWE0NTMzN2QwMDYzNzg4ZTUwMTg1NzNmYTAxYWUzMDBlYWZmMiAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGFnZS9zY3JvbGxpbmcvbmljb3NpYS9TY3JvbGxp
bmdUcmVlT3ZlcmZsb3dTY3JvbGxpbmdOb2RlTmljb3NpYS5oCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L3BhZ2Uvc2Nyb2xsaW5nL25pY29zaWEvU2Nyb2xsaW5nVHJlZU92ZXJmbG93U2Nyb2xsaW5nTm9k
ZU5pY29zaWEuaApAQCAtNDQsNyArNDQsNiBAQCBwdWJsaWM6CiBwcml2YXRlOgogICAgIFNjcm9s
bGluZ1RyZWVPdmVyZmxvd1Njcm9sbGluZ05vZGVOaWNvc2lhKFNjcm9sbGluZ1RyZWUmLCBTY3Jv
bGxpbmdOb2RlSUQpOwogCi0gICAgdm9pZCBjb21taXRTdGF0ZUJlZm9yZUNoaWxkcmVuKGNvbnN0
IFNjcm9sbGluZ1N0YXRlTm9kZSYpIG92ZXJyaWRlOwogICAgIHZvaWQgY29tbWl0U3RhdGVBZnRl
ckNoaWxkcmVuKGNvbnN0IFNjcm9sbGluZ1N0YXRlTm9kZSYpIG92ZXJyaWRlOwogCiAgICAgRmxv
YXRQb2ludCBhZGp1c3RlZFNjcm9sbFBvc2l0aW9uKGNvbnN0IEZsb2F0UG9pbnQmLCBTY3JvbGxD
bGFtcGluZykgY29uc3Qgb3ZlcnJpZGU7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0
Zm9ybS9ncmFwaGljcy90ZXhtYXAvY29vcmRpbmF0ZWQvQ29vcmRpbmF0ZWRHcmFwaGljc0xheWVy
LmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL3RleG1hcC9jb29yZGluYXRl
ZC9Db29yZGluYXRlZEdyYXBoaWNzTGF5ZXIuY3BwCmluZGV4IDc3NTFiYjhkMmZmMGRlODg3YmY0
MjI2MWFhMzcyYWIxZDBmOWM5MDYuLjZjNDJkY2I4ZjI4NDEyZTlmMmRjZjE1Mzk0Nzg4MjJkMzA5
ZmVmODEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL3RleG1h
cC9jb29yZGluYXRlZC9Db29yZGluYXRlZEdyYXBoaWNzTGF5ZXIuY3BwCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL3RleG1hcC9jb29yZGluYXRlZC9Db29yZGluYXRlZEdy
YXBoaWNzTGF5ZXIuY3BwCkBAIC0yNDQsNiArMjQ0LDE1IEBAIHZvaWQgQ29vcmRpbmF0ZWRHcmFw
aGljc0xheWVyOjpyZW1vdmVGcm9tUGFyZW50KCkKICAgICBHcmFwaGljc0xheWVyOjpyZW1vdmVG
cm9tUGFyZW50KCk7CiB9CiAKK3ZvaWQgQ29vcmRpbmF0ZWRHcmFwaGljc0xheWVyOjpzZXRTY3Jv
bGxpbmdOb2RlSUQoU2Nyb2xsaW5nTm9kZUlEIG5vZGVJRCkKK3sKKyAgICBpZiAoc2Nyb2xsaW5n
Tm9kZUlEKCkgPT0gbm9kZUlEKQorICAgICAgICByZXR1cm47CisKKyAgICBHcmFwaGljc0xheWVy
OjpzZXRTY3JvbGxpbmdOb2RlSUQobm9kZUlEKTsKKyAgICBtX25pY29zaWEuZGVsdGEuc2Nyb2xs
aW5nTm9kZUNoYW5nZWQgPSB0cnVlOworfQorCiB2b2lkIENvb3JkaW5hdGVkR3JhcGhpY3NMYXll
cjo6c2V0UG9zaXRpb24oY29uc3QgRmxvYXRQb2ludCYgcCkKIHsKICAgICBpZiAocG9zaXRpb24o
KSA9PSBwKQpAQCAtMTAwMiw2ICsxMDExLDggQEAgdm9pZCBDb29yZGluYXRlZEdyYXBoaWNzTGF5
ZXI6OmZsdXNoQ29tcG9zaXRpbmdTdGF0ZUZvclRoaXNMYXllck9ubHkoKQogICAgICAgICAgICAg
ICAgICAgICBzdGF0ZS5pbWFnZUJhY2tpbmcgPSBtX25pY29zaWEuaW1hZ2VCYWNraW5nOwogICAg
ICAgICAgICAgICAgIGlmIChsb2NhbERlbHRhLmFuaW1hdGVkQmFja2luZ1N0b3JlQ2xpZW50Q2hh
bmdlZCkKICAgICAgICAgICAgICAgICAgICAgc3RhdGUuYW5pbWF0ZWRCYWNraW5nU3RvcmVDbGll
bnQgPSBtX25pY29zaWEuYW5pbWF0ZWRCYWNraW5nU3RvcmVDbGllbnQ7CisgICAgICAgICAgICAg
ICAgaWYgKGxvY2FsRGVsdGEuc2Nyb2xsaW5nTm9kZUNoYW5nZWQpCisgICAgICAgICAgICAgICAg
ICAgIHN0YXRlLnNjcm9sbGluZ05vZGVJRCA9IHNjcm9sbGluZ05vZGVJRCgpOwogICAgICAgICAg
ICAgfSk7CiAgICAgICAgIG1fbmljb3NpYS5wZXJmb3JtTGF5ZXJTeW5jID0gISFtX25pY29zaWEu
ZGVsdGEudmFsdWU7CiAgICAgICAgIG1fbmljb3NpYS5kZWx0YSA9IHsgfTsKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL3RleG1hcC9jb29yZGluYXRlZC9Db29y
ZGluYXRlZEdyYXBoaWNzTGF5ZXIuaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNz
L3RleG1hcC9jb29yZGluYXRlZC9Db29yZGluYXRlZEdyYXBoaWNzTGF5ZXIuaAppbmRleCA5ZjBl
MTQ5NmJkY2M1ZDJkYjZhOWU2NmIwMjQyMzVkMzcyNGE2MjU4Li42NGE3MDllMGQxM2RjNmM5NTAw
Yzc2NThiZWMyYmNlY2Q3MmIzMjI2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS9ncmFwaGljcy90ZXhtYXAvY29vcmRpbmF0ZWQvQ29vcmRpbmF0ZWRHcmFwaGljc0xheWVyLmgK
KysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvdGV4bWFwL2Nvb3JkaW5hdGVk
L0Nvb3JkaW5hdGVkR3JhcGhpY3NMYXllci5oCkBAIC03MSw2ICs3MSw3IEBAIHB1YmxpYzoKICAg
ICB2b2lkIGFkZENoaWxkQmVsb3coUmVmPEdyYXBoaWNzTGF5ZXI+JiYsIEdyYXBoaWNzTGF5ZXIq
KSBvdmVycmlkZTsKICAgICBib29sIHJlcGxhY2VDaGlsZChHcmFwaGljc0xheWVyKiwgUmVmPEdy
YXBoaWNzTGF5ZXI+JiYpIG92ZXJyaWRlOwogICAgIHZvaWQgcmVtb3ZlRnJvbVBhcmVudCgpIG92
ZXJyaWRlOworICAgIHZvaWQgc2V0U2Nyb2xsaW5nTm9kZUlEKFNjcm9sbGluZ05vZGVJRCkgb3Zl
cnJpZGU7CiAgICAgdm9pZCBzZXRQb3NpdGlvbihjb25zdCBGbG9hdFBvaW50Jikgb3ZlcnJpZGU7
CiAgICAgdm9pZCBzeW5jUG9zaXRpb24oY29uc3QgRmxvYXRQb2ludCYpIG92ZXJyaWRlOwogICAg
IHZvaWQgc2V0QW5jaG9yUG9pbnQoY29uc3QgRmxvYXRQb2ludDNEJikgb3ZlcnJpZGU7Cg==
</data>

          </attachment>
      

    </bug>

</bugzilla>