<?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>217986</bug_id>
          
          <creation_ts>2020-10-20 13:53:55 -0700</creation_ts>
          <short_desc>[GLIB] imported/w3c/web-platform-tests/html/canvas/offscreen/line-styles/2d.line.width.transformed.html is a flaky crash</short_desc>
          <delta_ts>2020-10-27 10:09:27 -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>202798</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Diego Pino">dpino</reporter>
          <assigned_to name="Chris Lord">clord</assigned_to>
          <cc>cdumez</cc>
    
    <cc>changseok</cc>
    
    <cc>clord</cc>
    
    <cc>dino</cc>
    
    <cc>esprehn+autocc</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>gyuyoung.kim</cc>
    
    <cc>kbr</cc>
    
    <cc>lmoura</cc>
    
    <cc>rniwa</cc>
    
    <cc>sabouhallawa</cc>
    
    <cc>simon.fraser</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1699911</commentid>
    <comment_count>0</comment_count>
    <who name="Diego Pino">dpino</who>
    <bug_when>2020-10-20 13:53:55 -0700</bug_when>
    <thetext>These two tests are following with the same stacktrace:

  imported/w3c/web-platform-tests/html/canvas/offscreen/line-styles/2d.line.width.transformed.html [ Crash ]
  imported/w3c/web-platform-tests/html/canvas/offscreen/path-objects/2d.path.arc.selfintersect.1.worker.html [ Crash ]

First reported crash in test history is r267763. Exploring several revisions before, r267735 might be a likely cause for the failures.

Crash-log: https://build.webkit.org/results/GTK-Linux-64-bit-Release-Tests/r268734%20(16534)/imported/w3c/web-platform-tests/html/canvas/offscreen/line-styles/2d.line.width.transformed-crash-log.txt

Thread 1 (Thread 0x7fbff0b7e9c0 (LWP 99757)):
#0  0x00007fbffb2558f0 in WTF::Detail::CallableWrapper&lt;WebCore::OffscreenCanvas::pushBufferToPlaceholder()::$_6, void&gt;::call() () at /app/webkit/WebKitBuild/Release/lib/libwebkit2gtk-4.0.so.37
#1  0x00007fbff74bed36 in WTF::RunLoop::performWork() () at /app/webkit/WebKitBuild/Release/lib/libjavascriptcoregtk-4.0.so.18
#2  0x00007fbff7519cb6 in WTF::RunLoop::RunLoop()::$_1::__invoke(void*) () at /app/webkit/WebKitBuild/Release/lib/libjavascriptcoregtk-4.0.so.18
#3  0x00007fbff75191aa in WTF::RunLoop::$_0::__invoke(_GSource*, int (*)(void*), void*) () at /app/webkit/WebKitBuild/Release/lib/libjavascriptcoregtk-4.0.so.18
#4  0x00007fbff2f5704f in g_main_dispatch (context=0x1bd3970) at ../glib/gmain.c:3325
#5  g_main_context_dispatch (context=0x1bd3970) at ../glib/gmain.c:4016
#6  0x00007fbff2f573f8 in g_main_context_iterate (context=0x1bd3970, block=block@entry=1, dispatch=dispatch@entry=1, self=&lt;optimized out&gt;) at ../glib/gmain.c:4092
#7  0x00007fbff2f57713 in g_main_loop_run (loop=0x1c01c10) at ../glib/gmain.c:4290
#8  0x00007fbff751974b in WTF::RunLoop::run() () at /app/webkit/WebKitBuild/Release/lib/libjavascriptcoregtk-4.0.so.18
#9  0x00007fbffa2dd87f in int WebKit::AuxiliaryProcessMain&lt;WebKit::WebProcess, WebKit::WebProcessMainGtk&gt;(int, char**) () at /app/webkit/WebKitBuild/Release/lib/libwebkit2gtk-4.0.so.37
#10 0x00007fbff1ab6022 in __libc_start_main (main=0x400c20 &lt;main&gt;, argc=4, argv=0x7ffed176fd68, init=&lt;optimized out&gt;, fini=&lt;optimized out&gt;, rtld_fini=&lt;optimized out&gt;, stack_end=0x7ffed176fd58) at ../csu/libc-start.c:308
#11 0x0000000000400b5e in _start () at ../sysdeps/x86_64/start.S:120</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1700132</commentid>
    <comment_count>1</comment_count>
    <who name="Chris Lord">clord</who>
    <bug_when>2020-10-21 03:30:24 -0700</bug_when>
    <thetext>Will investigate. I suspect a race on destruction.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1700904</commentid>
    <comment_count>2</comment_count>
    <who name="Lauro Moura">lmoura</who>
    <bug_when>2020-10-22 18:06:13 -0700</bug_when>
    <thetext>The same is happening to imported/w3c/web-platform-tests/html/canvas/offscreen/path-objects/2d.path.arc.selfintersect.1.html

Results db: https://results.webkit.org/?suite=layout-tests&amp;test=imported%2Fw3c%2Fweb-platform-tests%2Fhtml%2Fcanvas%2Foffscreen%2Fpath-objects%2F2d.path.arc.selfintersect.1.html

Gardened in r268892.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1701820</commentid>
    <comment_count>3</comment_count>
    <who name="Chris Lord">clord</who>
    <bug_when>2020-10-27 03:56:03 -0700</bug_when>
    <thetext>As I suspected, this is due to the script execution context being destroyed while the buffer is being pushed to the placeholder. I&apos;ve got a fix that just involves holding a reference to the context while this is happening, but it feels ugly to me - I&apos;ll verify/tidy/upload and hopefully review will confirm whether this is a valid fix or not.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1701824</commentid>
    <comment_count>4</comment_count>
    <who name="Chris Lord">clord</who>
    <bug_when>2020-10-27 04:38:09 -0700</bug_when>
    <thetext>So I thought I had a fix, but it really just replaces the slightly more frequent crash with a much rarer, but still possible exception. Still looking into this, will see if I can get any advice on Slack if I can&apos;t come up with anything.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1701858</commentid>
    <comment_count>5</comment_count>
      <attachid>412417</attachid>
    <who name="Chris Lord">clord</who>
    <bug_when>2020-10-27 07:11:30 -0700</bug_when>
    <thetext>Created attachment 412417
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1701859</commentid>
    <comment_count>6</comment_count>
    <who name="Chris Lord">clord</who>
    <bug_when>2020-10-27 07:13:56 -0700</bug_when>
    <thetext>As is often the case, I was overcomplicating things - there&apos;s no need to pass the OffscreenCanvas object to the main thread, instead I&apos;ve moved all the placeholder canvas communication related data into a separate ThreadSafeRefCounted structure which we can safely use and release on the main thread. This removes the need to call back into the Worker thread to release a reference on the OffscreenCanvas and side-steps this issue entirely. Resolves the crashes in my local testing.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1701900</commentid>
    <comment_count>7</comment_count>
      <attachid>412427</attachid>
    <who name="Chris Lord">clord</who>
    <bug_when>2020-10-27 09:09:33 -0700</bug_when>
    <thetext>Created attachment 412427
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1701915</commentid>
    <comment_count>8</comment_count>
      <attachid>412427</attachid>
    <who name="Chris Lord">clord</who>
    <bug_when>2020-10-27 09:33:54 -0700</bug_when>
    <thetext>Comment on attachment 412427
Patch

Should also re-enable the disabled tests...</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1701918</commentid>
    <comment_count>9</comment_count>
      <attachid>412432</attachid>
    <who name="Chris Lord">clord</who>
    <bug_when>2020-10-27 09:36:01 -0700</bug_when>
    <thetext>Created attachment 412432
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1701937</commentid>
    <comment_count>10</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2020-10-27 10:08:55 -0700</bug_when>
    <thetext>Committed r269046: &lt;https://trac.webkit.org/changeset/269046&gt;

All reviewed patches have been landed. Closing bug and clearing flags on attachment 412432.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1701938</commentid>
    <comment_count>11</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2020-10-27 10:09:27 -0700</bug_when>
    <thetext>&lt;rdar://problem/70727106&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>412417</attachid>
            <date>2020-10-27 07:11:30 -0700</date>
            <delta_ts>2020-10-27 09:09:29 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-217986-20201027141129.patch</filename>
            <type>text/plain</type>
            <size>8239</size>
            <attacher name="Chris Lord">clord</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjY4OTc4CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNDBhN2M2MDQ5ZWJhZTYw
ODU0OWJkNWFlMDVjZWI3ZTk0YzkzMjZiMS4uZTMwNzI3MDAyNDZmZTRiYmFkMjQ4MmU1MjdkNTIz
MzJmMTMxOGJiOCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI3IEBACisyMDIwLTEwLTI3ICBDaHJp
cyBMb3JkICA8Y2xvcmRAaWdhbGlhLmNvbT4KKworICAgICAgICBbR0xJQl0gaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vbGluZS1zdHlsZXMvMmQu
bGluZS53aWR0aC50cmFuc2Zvcm1lZC5odG1sIGlzIGEgZmxha3kgY3Jhc2gKKyAgICAgICAgaHR0
cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIxNzk4NgorCisgICAgICAgIFJl
dmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIEZpeCByYWNlIGNvbmRpdGlvbiBj
YXVzZWQgYnkgdXNlIG9mIE9mZnNjcmVlbkNhbnZhczo6c2NyaXB0RXhlY3V0aW9uQ29udGV4dCgp
IG9uIG1haW4gdGhyZWFkLgorICAgICAgICBJbnN0ZWFkIG9mIHBhc3NpbmcgYSByZWZlcmVuY2Ug
dG8gdGhlIE9mZnNjcmVlbkNhbnZhcyBvYmplY3Qgd2hlbiBkZWFsaW5nIHdpdGggdGhlIHBsYWNl
aG9sZGVyCisgICAgICAgIGNhbnZhcyBvbiB0aGUgbWFpbiB0aHJlYWQsIGVuY2Fwc3VsYXRlIHRo
ZSBuZWNlc3NhcnkgZGF0YSBpbiBhIHNlcGFyYXRlLCBUaHJlYWRTYWZlUmVmQ291bnRlZAorICAg
ICAgICBvYmplY3QgYW5kIHBhc3MgdGhhdCBpbnN0ZWFkLCBuZWdhdGluZyB0aGUgbmVlZCB0byBj
YWxsIGJhY2sgdG8gdGhlIFdvcmtlciB0aHJlYWQgdG8gcmVsZWFzZQorICAgICAgICB0aGUgcmVm
ZXJlbmNlLgorCisgICAgICAgIENvdmVyZWQgYnkgZXhpc3RpbmcgdGVzdHMuCisKKyAgICAgICAg
KiBodG1sL09mZnNjcmVlbkNhbnZhcy5jcHA6CisgICAgICAgIChXZWJDb3JlOjpPZmZzY3JlZW5D
YW52YXM6OmNyZWF0ZSk6CisgICAgICAgIChXZWJDb3JlOjpPZmZzY3JlZW5DYW52YXM6Ok9mZnNj
cmVlbkNhbnZhcyk6CisgICAgICAgIChXZWJDb3JlOjpPZmZzY3JlZW5DYW52YXM6OmRldGFjaCk6
CisgICAgICAgIChXZWJDb3JlOjpPZmZzY3JlZW5DYW52YXM6OnNldFBsYWNlaG9sZGVyQ2FudmFz
KToKKyAgICAgICAgKFdlYkNvcmU6Ok9mZnNjcmVlbkNhbnZhczo6cHVzaEJ1ZmZlclRvUGxhY2Vo
b2xkZXIpOgorICAgICAgICAoV2ViQ29yZTo6T2Zmc2NyZWVuQ2FudmFzOjpjb21taXRUb1BsYWNl
aG9sZGVyQ2FudmFzKToKKyAgICAgICAgKiBodG1sL09mZnNjcmVlbkNhbnZhcy5oOgorCiAyMDIw
LTEwLTI2ICBZb3Vlbm4gRmFibGV0ICA8eW91ZW5uQGFwcGxlLmNvbT4KIAogICAgICAgICBNYWtl
IHVzZSBvZiBzaWduYWxsaW5nIHRocmVhZCB3aGVuIGNyZWF0aW5nIHRoZSBwZWVyIGNvbm5lY3Rp
b24gZmFjdG9yeQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC9PZmZzY3JlZW5DYW52
YXMuY3BwIGIvU291cmNlL1dlYkNvcmUvaHRtbC9PZmZzY3JlZW5DYW52YXMuY3BwCmluZGV4IDFl
MjYwMzNmMjM4MDA4M2EzMTZhNWQ0NmJiMTFiMWQ3NDJhOGZmNWIuLjUyNzNlYTEzMDg3YWE3ZGNk
ODdjYTRiMzQwOGZjYmIyYzZjOTYyNjggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwv
T2Zmc2NyZWVuQ2FudmFzLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL09mZnNjcmVlbkNh
bnZhcy5jcHAKQEAgLTg1LDE2ICs4NSwxNCBAQCBSZWY8T2Zmc2NyZWVuQ2FudmFzPiBPZmZzY3Jl
ZW5DYW52YXM6OmNyZWF0ZShTY3JpcHRFeGVjdXRpb25Db250ZXh0JiBjb250ZXh0LCBzdAogICAg
IGlmICghZGV0YWNoZWRDYW52YXMtPm9yaWdpbkNsZWFuKCkpCiAgICAgICAgIGNsb25lLT5zZXRP
cmlnaW5UYWludGVkKCk7CiAKLSAgICBjYWxsT25NYWluVGhyZWFkKFtkZXRhY2hlZENhbnZhcyA9
IFdURk1vdmUoZGV0YWNoZWRDYW52YXMpLCBvZmZzY3JlZW5DYW52YXMgPSBtYWtlUmVmKGNsb25l
LmdldCgpKV0gKCkgbXV0YWJsZSB7Ci0gICAgICAgIG9mZnNjcmVlbkNhbnZhcy0+bV9wbGFjZWhv
bGRlckNhbnZhcyA9IGRldGFjaGVkQ2FudmFzLT50YWtlUGxhY2Vob2xkZXJDYW52YXMoKTsKLSAg
ICAgICAgaWYgKG9mZnNjcmVlbkNhbnZhcy0+bV9wbGFjZWhvbGRlckNhbnZhcykgewotICAgICAg
ICAgICAgYXV0byYgcGxhY2Vob2xkZXJDb250ZXh0ID0gZG93bmNhc3Q8UGxhY2Vob2xkZXJSZW5k
ZXJpbmdDb250ZXh0Pigqb2Zmc2NyZWVuQ2FudmFzLT5tX3BsYWNlaG9sZGVyQ2FudmFzLT5yZW5k
ZXJpbmdDb250ZXh0KCkpOworICAgIGNhbGxPbk1haW5UaHJlYWQoW2RldGFjaGVkQ2FudmFzID0g
V1RGTW92ZShkZXRhY2hlZENhbnZhcyksIHBsYWNlaG9sZGVyRGF0YSA9IG1ha2VSZWYoKmNsb25l
LT5tX3BsYWNlaG9sZGVyRGF0YSldICgpIG11dGFibGUgeworICAgICAgICBwbGFjZWhvbGRlckRh
dGEtPmNhbnZhcyA9IGRldGFjaGVkQ2FudmFzLT50YWtlUGxhY2Vob2xkZXJDYW52YXMoKTsKKyAg
ICAgICAgaWYgKHBsYWNlaG9sZGVyRGF0YS0+Y2FudmFzKSB7CisgICAgICAgICAgICBhdXRvJiBw
bGFjZWhvbGRlckNvbnRleHQgPSBkb3duY2FzdDxQbGFjZWhvbGRlclJlbmRlcmluZ0NvbnRleHQ+
KCpwbGFjZWhvbGRlckRhdGEtPmNhbnZhcy0+cmVuZGVyaW5nQ29udGV4dCgpKTsKICAgICAgICAg
ICAgIGF1dG8mIGltYWdlQnVmZmVyUGlwZSA9IHBsYWNlaG9sZGVyQ29udGV4dC5pbWFnZUJ1ZmZl
clBpcGUoKTsKICAgICAgICAgICAgIGlmIChpbWFnZUJ1ZmZlclBpcGUpCi0gICAgICAgICAgICAg
ICAgb2Zmc2NyZWVuQ2FudmFzLT5tX2J1ZmZlclBpcGVTb3VyY2UgPSBpbWFnZUJ1ZmZlclBpcGUt
PnNvdXJjZSgpOworICAgICAgICAgICAgICAgIHBsYWNlaG9sZGVyRGF0YS0+YnVmZmVyUGlwZVNv
dXJjZSA9IGltYWdlQnVmZmVyUGlwZS0+c291cmNlKCk7CiAgICAgICAgIH0KLSAgICAgICAgb2Zm
c2NyZWVuQ2FudmFzLT5zY3JpcHRFeGVjdXRpb25Db250ZXh0KCktPnBvc3RUYXNrKHsgU2NyaXB0
RXhlY3V0aW9uQ29udGV4dDo6VGFzazo6Q2xlYW51cFRhc2ssCi0gICAgICAgICAgICBbcmVsZWFz
ZU9mZnNjcmVlbkNhbnZhcyA9IFdURk1vdmUob2Zmc2NyZWVuQ2FudmFzKV0gKFNjcmlwdEV4ZWN1
dGlvbkNvbnRleHQmKSB7IH0gfSk7CiAgICAgfSk7CiAKICAgICByZXR1cm4gY2xvbmU7CkBAIC0x
MTAsNiArMTA4LDcgQEAgUmVmPE9mZnNjcmVlbkNhbnZhcz4gT2Zmc2NyZWVuQ2FudmFzOjpjcmVh
dGUoU2NyaXB0RXhlY3V0aW9uQ29udGV4dCYgY29udGV4dCwgSFQKIE9mZnNjcmVlbkNhbnZhczo6
T2Zmc2NyZWVuQ2FudmFzKFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQmIGNvbnRleHQsIHVuc2lnbmVk
IHdpZHRoLCB1bnNpZ25lZCBoZWlnaHQpCiAgICAgOiBDYW52YXNCYXNlKEludFNpemUod2lkdGgs
IGhlaWdodCkpCiAgICAgLCBDb250ZXh0RGVzdHJ1Y3Rpb25PYnNlcnZlcigmY29udGV4dCkKKyAg
ICAsIG1fcGxhY2Vob2xkZXJEYXRhKFBsYWNlaG9sZGVyRGF0YTo6Y3JlYXRlKCkpCiB7CiB9CiAK
QEAgLTM4OSw3ICszODgsNyBAQCBzdGQ6OnVuaXF1ZV9wdHI8RGV0YWNoZWRPZmZzY3JlZW5DYW52
YXM+IE9mZnNjcmVlbkNhbnZhczo6ZGV0YWNoKCkKICAgICBtX2RldGFjaGVkID0gdHJ1ZTsKIAog
ICAgIGF1dG8gZGV0YWNoZWQgPSBtYWtlVW5pcXVlPERldGFjaGVkT2Zmc2NyZWVuQ2FudmFzPih0
YWtlSW1hZ2VCdWZmZXIoKSwgc2l6ZSgpLCBvcmlnaW5DbGVhbigpKTsKLSAgICBkZXRhY2hlZC0+
bV9wbGFjZWhvbGRlckNhbnZhcyA9IHN0ZDo6ZXhjaGFuZ2UobV9wbGFjZWhvbGRlckNhbnZhcywg
bnVsbHB0cik7CisgICAgZGV0YWNoZWQtPm1fcGxhY2Vob2xkZXJDYW52YXMgPSBzdGQ6OmV4Y2hh
bmdlKG1fcGxhY2Vob2xkZXJEYXRhLT5jYW52YXMsIG51bGxwdHIpOwogCiAgICAgcmV0dXJuIGRl
dGFjaGVkOwogfQpAQCAtMzk4LDI1ICszOTcsMjAgQEAgdm9pZCBPZmZzY3JlZW5DYW52YXM6OnNl
dFBsYWNlaG9sZGVyQ2FudmFzKEhUTUxDYW52YXNFbGVtZW50JiBjYW52YXMpCiB7CiAgICAgQVNT
RVJUKCFtX2NvbnRleHQpOwogICAgIEFTU0VSVChpc01haW5UaHJlYWQoKSk7Ci0gICAgbV9wbGFj
ZWhvbGRlckNhbnZhcyA9IG1ha2VXZWFrUHRyKGNhbnZhcyk7CisgICAgbV9wbGFjZWhvbGRlckRh
dGEtPmNhbnZhcyA9IG1ha2VXZWFrUHRyKGNhbnZhcyk7CiAgICAgYXV0byYgcGxhY2Vob2xkZXJD
b250ZXh0ID0gZG93bmNhc3Q8UGxhY2Vob2xkZXJSZW5kZXJpbmdDb250ZXh0PigqY2FudmFzLnJl
bmRlcmluZ0NvbnRleHQoKSk7CiAgICAgYXV0byYgaW1hZ2VCdWZmZXJQaXBlID0gcGxhY2Vob2xk
ZXJDb250ZXh0LmltYWdlQnVmZmVyUGlwZSgpOwogICAgIGlmIChpbWFnZUJ1ZmZlclBpcGUpCi0g
ICAgICAgIG1fYnVmZmVyUGlwZVNvdXJjZSA9IGltYWdlQnVmZmVyUGlwZS0+c291cmNlKCk7Cisg
ICAgICAgIG1fcGxhY2Vob2xkZXJEYXRhLT5idWZmZXJQaXBlU291cmNlID0gaW1hZ2VCdWZmZXJQ
aXBlLT5zb3VyY2UoKTsKIH0KIAogdm9pZCBPZmZzY3JlZW5DYW52YXM6OnB1c2hCdWZmZXJUb1Bs
YWNlaG9sZGVyKCkKIHsKLSAgICBjYWxsT25NYWluVGhyZWFkKFtwcm90ZWN0ZWRUaGlzID0gbWFr
ZVJlZigqdGhpcyksIHRoaXNdICgpIG11dGFibGUgewotICAgICAgICB7Ci0gICAgICAgICAgICBh
dXRvIGxvY2tlciA9IGhvbGRMb2NrKG1fY29tbWl0TG9jayk7Ci0gICAgICAgICAgICBpZiAobV9w
bGFjZWhvbGRlckNhbnZhcyAmJiBtX3BlbmRpbmdDb21taXRCdWZmZXIpCi0gICAgICAgICAgICAg
ICAgbV9wbGFjZWhvbGRlckNhbnZhcy0+c2V0SW1hZ2VCdWZmZXJBbmRNYXJrRGlydHkoV1RGTW92
ZShtX3BlbmRpbmdDb21taXRCdWZmZXIpKTsKLSAgICAgICAgICAgIG1fcGVuZGluZ0NvbW1pdEJ1
ZmZlciA9IG51bGxwdHI7Ci0gICAgICAgIH0KLQotICAgICAgICBzY3JpcHRFeGVjdXRpb25Db250
ZXh0KCktPnBvc3RUYXNrKHsgU2NyaXB0RXhlY3V0aW9uQ29udGV4dDo6VGFzazo6Q2xlYW51cFRh
c2ssCi0gICAgICAgICAgICBbcmVsZWFzZVRoaXMgPSBXVEZNb3ZlKHByb3RlY3RlZFRoaXMpXSAo
U2NyaXB0RXhlY3V0aW9uQ29udGV4dCYpIHsgfSB9KTsKKyAgICBjYWxsT25NYWluVGhyZWFkKFtw
bGFjZWhvbGRlckRhdGEgPSBtYWtlUmVmKCptX3BsYWNlaG9sZGVyRGF0YSldICgpIG11dGFibGUg
eworICAgICAgICBhdXRvIGxvY2tlciA9IGhvbGRMb2NrKHBsYWNlaG9sZGVyRGF0YS0+YnVmZmVy
TG9jayk7CisgICAgICAgIGlmIChwbGFjZWhvbGRlckRhdGEtPmNhbnZhcyAmJiBwbGFjZWhvbGRl
ckRhdGEtPnBlbmRpbmdDb21taXRCdWZmZXIpCisgICAgICAgICAgICBwbGFjZWhvbGRlckRhdGEt
PmNhbnZhcy0+c2V0SW1hZ2VCdWZmZXJBbmRNYXJrRGlydHkoV1RGTW92ZShwbGFjZWhvbGRlckRh
dGEtPnBlbmRpbmdDb21taXRCdWZmZXIpKTsKKyAgICAgICAgcGxhY2Vob2xkZXJEYXRhLT5wZW5k
aW5nQ29tbWl0QnVmZmVyID0gbnVsbHB0cjsKICAgICB9KTsKIH0KIApAQCAtNDMwLDE2ICs0MjQs
MTYgQEAgdm9pZCBPZmZzY3JlZW5DYW52YXM6OmNvbW1pdFRvUGxhY2Vob2xkZXJDYW52YXMoKQog
ICAgIGlmIChtX2NvbnRleHQgJiYgKG1fY29udGV4dC0+aXNXZWJHTCgpIHx8IG1fY29udGV4dC0+
aXNBY2NlbGVyYXRlZCgpKSkKICAgICAgICAgbV9jb250ZXh0LT5wYWludFJlbmRlcmluZ1Jlc3Vs
dHNUb0NhbnZhcygpOwogCi0gICAgaWYgKG1fYnVmZmVyUGlwZVNvdXJjZSkgeworICAgIGlmICht
X3BsYWNlaG9sZGVyRGF0YS0+YnVmZmVyUGlwZVNvdXJjZSkgewogICAgICAgICBhdXRvIGJ1ZmZl
ckNvcHkgPSBpbWFnZUJ1ZmZlci0+Y29weVJlY3RUb0J1ZmZlcihGbG9hdFJlY3QoRmxvYXRQb2lu
dCgpLCBpbWFnZUJ1ZmZlci0+bG9naWNhbFNpemUoKSksIENvbG9yU3BhY2U6OlNSR0IsIGltYWdl
QnVmZmVyLT5jb250ZXh0KCkpOwogICAgICAgICBpZiAoYnVmZmVyQ29weSkKLSAgICAgICAgICAg
IG1fYnVmZmVyUGlwZVNvdXJjZS0+aGFuZGxlKFdURk1vdmUoYnVmZmVyQ29weSkpOworICAgICAg
ICAgICAgbV9wbGFjZWhvbGRlckRhdGEtPmJ1ZmZlclBpcGVTb3VyY2UtPmhhbmRsZShXVEZNb3Zl
KGJ1ZmZlckNvcHkpKTsKICAgICB9CiAKLSAgICBhdXRvIGxvY2tlciA9IGhvbGRMb2NrKG1fY29t
bWl0TG9jayk7Ci0gICAgYm9vbCBzaG91bGRQdXNoQnVmZmVyID0gIW1fcGVuZGluZ0NvbW1pdEJ1
ZmZlcjsKLSAgICBtX3BlbmRpbmdDb21taXRCdWZmZXIgPSBpbWFnZUJ1ZmZlci0+Y29weVJlY3RU
b0J1ZmZlcihGbG9hdFJlY3QoRmxvYXRQb2ludCgpLCBpbWFnZUJ1ZmZlci0+bG9naWNhbFNpemUo
KSksIENvbG9yU3BhY2U6OlNSR0IsIGltYWdlQnVmZmVyLT5jb250ZXh0KCkpOwotICAgIGlmICht
X3BlbmRpbmdDb21taXRCdWZmZXIgJiYgc2hvdWxkUHVzaEJ1ZmZlcikKKyAgICBhdXRvIGxvY2tl
ciA9IGhvbGRMb2NrKG1fcGxhY2Vob2xkZXJEYXRhLT5idWZmZXJMb2NrKTsKKyAgICBib29sIHNo
b3VsZFB1c2hCdWZmZXIgPSAhbV9wbGFjZWhvbGRlckRhdGEtPnBlbmRpbmdDb21taXRCdWZmZXI7
CisgICAgbV9wbGFjZWhvbGRlckRhdGEtPnBlbmRpbmdDb21taXRCdWZmZXIgPSBpbWFnZUJ1ZmZl
ci0+Y29weVJlY3RUb0J1ZmZlcihGbG9hdFJlY3QoRmxvYXRQb2ludCgpLCBpbWFnZUJ1ZmZlci0+
bG9naWNhbFNpemUoKSksIENvbG9yU3BhY2U6OlNSR0IsIGltYWdlQnVmZmVyLT5jb250ZXh0KCkp
OworICAgIGlmIChtX3BsYWNlaG9sZGVyRGF0YS0+cGVuZGluZ0NvbW1pdEJ1ZmZlciAmJiBzaG91
bGRQdXNoQnVmZmVyKQogICAgICAgICBwdXNoQnVmZmVyVG9QbGFjZWhvbGRlcigpOwogfQogCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1sL09mZnNjcmVlbkNhbnZhcy5oIGIvU291cmNl
L1dlYkNvcmUvaHRtbC9PZmZzY3JlZW5DYW52YXMuaAppbmRleCAyNzc0NjUyN2YxYzA3YjkwOWUx
Y2UwMzQ1ZDhiYjc5OWM1MTkzOWFlLi5jZjMzNGE3NGRmMjUzZTgwNDY4N2IzZmE1MGQyNDE1YzMy
YjA0YjgxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1sL09mZnNjcmVlbkNhbnZhcy5o
CisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvT2Zmc2NyZWVuQ2FudmFzLmgKQEAgLTM5LDYgKzM5
LDcgQEAKICNpbmNsdWRlICJTY3JpcHRXcmFwcGFibGUuaCIKICNpbmNsdWRlIDx3dGYvRm9yd2Fy
ZC5oPgogI2luY2x1ZGUgPHd0Zi9SZWZDb3VudGVkLmg+CisjaW5jbHVkZSA8d3RmL1RocmVhZFNh
ZmVSZWZDb3VudGVkLmg+CiAjaW5jbHVkZSA8d3RmL1dlYWtQdHIuaD4KICNpbmNsdWRlIDx3dGYv
dGV4dC9XVEZTdHJpbmcuaD4KICNpZiBFTkFCTEUoV0VCR0wpCkBAIC0xODcsMTEgKzE4OCwyMSBA
QCBwcml2YXRlOgogICAgIG11dGFibGUgUmVmUHRyPEltYWdlPiBtX2NvcGllZEltYWdlOwogCiAg
ICAgYm9vbCBtX2hhc1NjaGVkdWxlZENvbW1pdCB7IGZhbHNlIH07Ci0gICAgV2Vha1B0cjxIVE1M
Q2FudmFzRWxlbWVudD4gbV9wbGFjZWhvbGRlckNhbnZhczsKLSAgICBSZWZQdHI8SW1hZ2VCdWZm
ZXJQaXBlOjpTb3VyY2U+IG1fYnVmZmVyUGlwZVNvdXJjZTsKIAotICAgIG11dGFibGUgTG9jayBt
X2NvbW1pdExvY2s7Ci0gICAgc3RkOjp1bmlxdWVfcHRyPEltYWdlQnVmZmVyPiBtX3BlbmRpbmdD
b21taXRCdWZmZXI7CisgICAgY2xhc3MgUGxhY2Vob2xkZXJEYXRhIDogcHVibGljIFRocmVhZFNh
ZmVSZWZDb3VudGVkPFBsYWNlaG9sZGVyRGF0YT4geworICAgIHB1YmxpYzoKKyAgICAgICAgc3Rh
dGljIFJlZjxQbGFjZWhvbGRlckRhdGE+IGNyZWF0ZSgpCisgICAgICAgIHsKKyAgICAgICAgICAg
IHJldHVybiBhZG9wdFJlZigqbmV3IFBsYWNlaG9sZGVyRGF0YSk7CisgICAgICAgIH0KKworICAg
ICAgICBXZWFrUHRyPEhUTUxDYW52YXNFbGVtZW50PiBjYW52YXM7CisgICAgICAgIFJlZlB0cjxJ
bWFnZUJ1ZmZlclBpcGU6OlNvdXJjZT4gYnVmZmVyUGlwZVNvdXJjZTsKKyAgICAgICAgc3RkOjp1
bmlxdWVfcHRyPEltYWdlQnVmZmVyPiBwZW5kaW5nQ29tbWl0QnVmZmVyOworICAgICAgICBtdXRh
YmxlIExvY2sgYnVmZmVyTG9jazsKKyAgICB9OworCisgICAgUmVmUHRyPFBsYWNlaG9sZGVyRGF0
YT4gbV9wbGFjZWhvbGRlckRhdGE7CiB9OwogCiB9Cg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>412427</attachid>
            <date>2020-10-27 09:09:33 -0700</date>
            <delta_ts>2020-10-27 09:35:57 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-217986-20201027160932.patch</filename>
            <type>text/plain</type>
            <size>8237</size>
            <attacher name="Chris Lord">clord</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjY4OTc4CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNDBhN2M2MDQ5ZWJhZTYw
ODU0OWJkNWFlMDVjZWI3ZTk0YzkzMjZiMS4uZjZmNjE3Y2QyMWQ1YzU5MTI3ZmMyZGIxZTVjMTMw
OTM4NjFmMTY3YiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI3IEBACisyMDIwLTEwLTI3ICBDaHJp
cyBMb3JkICA8Y2xvcmRAaWdhbGlhLmNvbT4KKworICAgICAgICBbR0xJQl0gaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vbGluZS1zdHlsZXMvMmQu
bGluZS53aWR0aC50cmFuc2Zvcm1lZC5odG1sIGlzIGEgZmxha3kgY3Jhc2gKKyAgICAgICAgaHR0
cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIxNzk4NgorCisgICAgICAgIFJl
dmlld2VkIGJ5IFNpbW9uIEZyYXNlci4KKworICAgICAgICBGaXggcmFjZSBjb25kaXRpb24gY2F1
c2VkIGJ5IHVzZSBvZiBPZmZzY3JlZW5DYW52YXM6OnNjcmlwdEV4ZWN1dGlvbkNvbnRleHQoKSBv
biBtYWluIHRocmVhZC4KKyAgICAgICAgSW5zdGVhZCBvZiBwYXNzaW5nIGEgcmVmZXJlbmNlIHRv
IHRoZSBPZmZzY3JlZW5DYW52YXMgb2JqZWN0IHdoZW4gZGVhbGluZyB3aXRoIHRoZSBwbGFjZWhv
bGRlcgorICAgICAgICBjYW52YXMgb24gdGhlIG1haW4gdGhyZWFkLCBlbmNhcHN1bGF0ZSB0aGUg
bmVjZXNzYXJ5IGRhdGEgaW4gYSBzZXBhcmF0ZSwgVGhyZWFkU2FmZVJlZkNvdW50ZWQKKyAgICAg
ICAgb2JqZWN0IGFuZCBwYXNzIHRoYXQgaW5zdGVhZCwgbmVnYXRpbmcgdGhlIG5lZWQgdG8gY2Fs
bCBiYWNrIHRvIHRoZSBXb3JrZXIgdGhyZWFkIHRvIHJlbGVhc2UKKyAgICAgICAgdGhlIHJlZmVy
ZW5jZS4KKworICAgICAgICBDb3ZlcmVkIGJ5IGV4aXN0aW5nIHRlc3RzLgorCisgICAgICAgICog
aHRtbC9PZmZzY3JlZW5DYW52YXMuY3BwOgorICAgICAgICAoV2ViQ29yZTo6T2Zmc2NyZWVuQ2Fu
dmFzOjpjcmVhdGUpOgorICAgICAgICAoV2ViQ29yZTo6T2Zmc2NyZWVuQ2FudmFzOjpPZmZzY3Jl
ZW5DYW52YXMpOgorICAgICAgICAoV2ViQ29yZTo6T2Zmc2NyZWVuQ2FudmFzOjpkZXRhY2gpOgor
ICAgICAgICAoV2ViQ29yZTo6T2Zmc2NyZWVuQ2FudmFzOjpzZXRQbGFjZWhvbGRlckNhbnZhcyk6
CisgICAgICAgIChXZWJDb3JlOjpPZmZzY3JlZW5DYW52YXM6OnB1c2hCdWZmZXJUb1BsYWNlaG9s
ZGVyKToKKyAgICAgICAgKFdlYkNvcmU6Ok9mZnNjcmVlbkNhbnZhczo6Y29tbWl0VG9QbGFjZWhv
bGRlckNhbnZhcyk6CisgICAgICAgICogaHRtbC9PZmZzY3JlZW5DYW52YXMuaDoKKwogMjAyMC0x
MC0yNiAgWW91ZW5uIEZhYmxldCAgPHlvdWVubkBhcHBsZS5jb20+CiAKICAgICAgICAgTWFrZSB1
c2Ugb2Ygc2lnbmFsbGluZyB0aHJlYWQgd2hlbiBjcmVhdGluZyB0aGUgcGVlciBjb25uZWN0aW9u
IGZhY3RvcnkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvT2Zmc2NyZWVuQ2FudmFz
LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvT2Zmc2NyZWVuQ2FudmFzLmNwcAppbmRleCAxZTI2
MDMzZjIzODAwODNhMzE2YTVkNDZiYjExYjFkNzQyYThmZjViLi41MjczZWExMzA4N2FhN2RjZDg3
Y2E0YjM0MDhmY2JiMmM2Yzk2MjY4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1sL09m
ZnNjcmVlbkNhbnZhcy5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9PZmZzY3JlZW5DYW52
YXMuY3BwCkBAIC04NSwxNiArODUsMTQgQEAgUmVmPE9mZnNjcmVlbkNhbnZhcz4gT2Zmc2NyZWVu
Q2FudmFzOjpjcmVhdGUoU2NyaXB0RXhlY3V0aW9uQ29udGV4dCYgY29udGV4dCwgc3QKICAgICBp
ZiAoIWRldGFjaGVkQ2FudmFzLT5vcmlnaW5DbGVhbigpKQogICAgICAgICBjbG9uZS0+c2V0T3Jp
Z2luVGFpbnRlZCgpOwogCi0gICAgY2FsbE9uTWFpblRocmVhZChbZGV0YWNoZWRDYW52YXMgPSBX
VEZNb3ZlKGRldGFjaGVkQ2FudmFzKSwgb2Zmc2NyZWVuQ2FudmFzID0gbWFrZVJlZihjbG9uZS5n
ZXQoKSldICgpIG11dGFibGUgewotICAgICAgICBvZmZzY3JlZW5DYW52YXMtPm1fcGxhY2Vob2xk
ZXJDYW52YXMgPSBkZXRhY2hlZENhbnZhcy0+dGFrZVBsYWNlaG9sZGVyQ2FudmFzKCk7Ci0gICAg
ICAgIGlmIChvZmZzY3JlZW5DYW52YXMtPm1fcGxhY2Vob2xkZXJDYW52YXMpIHsKLSAgICAgICAg
ICAgIGF1dG8mIHBsYWNlaG9sZGVyQ29udGV4dCA9IGRvd25jYXN0PFBsYWNlaG9sZGVyUmVuZGVy
aW5nQ29udGV4dD4oKm9mZnNjcmVlbkNhbnZhcy0+bV9wbGFjZWhvbGRlckNhbnZhcy0+cmVuZGVy
aW5nQ29udGV4dCgpKTsKKyAgICBjYWxsT25NYWluVGhyZWFkKFtkZXRhY2hlZENhbnZhcyA9IFdU
Rk1vdmUoZGV0YWNoZWRDYW52YXMpLCBwbGFjZWhvbGRlckRhdGEgPSBtYWtlUmVmKCpjbG9uZS0+
bV9wbGFjZWhvbGRlckRhdGEpXSAoKSBtdXRhYmxlIHsKKyAgICAgICAgcGxhY2Vob2xkZXJEYXRh
LT5jYW52YXMgPSBkZXRhY2hlZENhbnZhcy0+dGFrZVBsYWNlaG9sZGVyQ2FudmFzKCk7CisgICAg
ICAgIGlmIChwbGFjZWhvbGRlckRhdGEtPmNhbnZhcykgeworICAgICAgICAgICAgYXV0byYgcGxh
Y2Vob2xkZXJDb250ZXh0ID0gZG93bmNhc3Q8UGxhY2Vob2xkZXJSZW5kZXJpbmdDb250ZXh0Pigq
cGxhY2Vob2xkZXJEYXRhLT5jYW52YXMtPnJlbmRlcmluZ0NvbnRleHQoKSk7CiAgICAgICAgICAg
ICBhdXRvJiBpbWFnZUJ1ZmZlclBpcGUgPSBwbGFjZWhvbGRlckNvbnRleHQuaW1hZ2VCdWZmZXJQ
aXBlKCk7CiAgICAgICAgICAgICBpZiAoaW1hZ2VCdWZmZXJQaXBlKQotICAgICAgICAgICAgICAg
IG9mZnNjcmVlbkNhbnZhcy0+bV9idWZmZXJQaXBlU291cmNlID0gaW1hZ2VCdWZmZXJQaXBlLT5z
b3VyY2UoKTsKKyAgICAgICAgICAgICAgICBwbGFjZWhvbGRlckRhdGEtPmJ1ZmZlclBpcGVTb3Vy
Y2UgPSBpbWFnZUJ1ZmZlclBpcGUtPnNvdXJjZSgpOwogICAgICAgICB9Ci0gICAgICAgIG9mZnNj
cmVlbkNhbnZhcy0+c2NyaXB0RXhlY3V0aW9uQ29udGV4dCgpLT5wb3N0VGFzayh7IFNjcmlwdEV4
ZWN1dGlvbkNvbnRleHQ6OlRhc2s6OkNsZWFudXBUYXNrLAotICAgICAgICAgICAgW3JlbGVhc2VP
ZmZzY3JlZW5DYW52YXMgPSBXVEZNb3ZlKG9mZnNjcmVlbkNhbnZhcyldIChTY3JpcHRFeGVjdXRp
b25Db250ZXh0JikgeyB9IH0pOwogICAgIH0pOwogCiAgICAgcmV0dXJuIGNsb25lOwpAQCAtMTEw
LDYgKzEwOCw3IEBAIFJlZjxPZmZzY3JlZW5DYW52YXM+IE9mZnNjcmVlbkNhbnZhczo6Y3JlYXRl
KFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQmIGNvbnRleHQsIEhUCiBPZmZzY3JlZW5DYW52YXM6Ok9m
ZnNjcmVlbkNhbnZhcyhTY3JpcHRFeGVjdXRpb25Db250ZXh0JiBjb250ZXh0LCB1bnNpZ25lZCB3
aWR0aCwgdW5zaWduZWQgaGVpZ2h0KQogICAgIDogQ2FudmFzQmFzZShJbnRTaXplKHdpZHRoLCBo
ZWlnaHQpKQogICAgICwgQ29udGV4dERlc3RydWN0aW9uT2JzZXJ2ZXIoJmNvbnRleHQpCisgICAg
LCBtX3BsYWNlaG9sZGVyRGF0YShQbGFjZWhvbGRlckRhdGE6OmNyZWF0ZSgpKQogewogfQogCkBA
IC0zODksNyArMzg4LDcgQEAgc3RkOjp1bmlxdWVfcHRyPERldGFjaGVkT2Zmc2NyZWVuQ2FudmFz
PiBPZmZzY3JlZW5DYW52YXM6OmRldGFjaCgpCiAgICAgbV9kZXRhY2hlZCA9IHRydWU7CiAKICAg
ICBhdXRvIGRldGFjaGVkID0gbWFrZVVuaXF1ZTxEZXRhY2hlZE9mZnNjcmVlbkNhbnZhcz4odGFr
ZUltYWdlQnVmZmVyKCksIHNpemUoKSwgb3JpZ2luQ2xlYW4oKSk7Ci0gICAgZGV0YWNoZWQtPm1f
cGxhY2Vob2xkZXJDYW52YXMgPSBzdGQ6OmV4Y2hhbmdlKG1fcGxhY2Vob2xkZXJDYW52YXMsIG51
bGxwdHIpOworICAgIGRldGFjaGVkLT5tX3BsYWNlaG9sZGVyQ2FudmFzID0gc3RkOjpleGNoYW5n
ZShtX3BsYWNlaG9sZGVyRGF0YS0+Y2FudmFzLCBudWxscHRyKTsKIAogICAgIHJldHVybiBkZXRh
Y2hlZDsKIH0KQEAgLTM5OCwyNSArMzk3LDIwIEBAIHZvaWQgT2Zmc2NyZWVuQ2FudmFzOjpzZXRQ
bGFjZWhvbGRlckNhbnZhcyhIVE1MQ2FudmFzRWxlbWVudCYgY2FudmFzKQogewogICAgIEFTU0VS
VCghbV9jb250ZXh0KTsKICAgICBBU1NFUlQoaXNNYWluVGhyZWFkKCkpOwotICAgIG1fcGxhY2Vo
b2xkZXJDYW52YXMgPSBtYWtlV2Vha1B0cihjYW52YXMpOworICAgIG1fcGxhY2Vob2xkZXJEYXRh
LT5jYW52YXMgPSBtYWtlV2Vha1B0cihjYW52YXMpOwogICAgIGF1dG8mIHBsYWNlaG9sZGVyQ29u
dGV4dCA9IGRvd25jYXN0PFBsYWNlaG9sZGVyUmVuZGVyaW5nQ29udGV4dD4oKmNhbnZhcy5yZW5k
ZXJpbmdDb250ZXh0KCkpOwogICAgIGF1dG8mIGltYWdlQnVmZmVyUGlwZSA9IHBsYWNlaG9sZGVy
Q29udGV4dC5pbWFnZUJ1ZmZlclBpcGUoKTsKICAgICBpZiAoaW1hZ2VCdWZmZXJQaXBlKQotICAg
ICAgICBtX2J1ZmZlclBpcGVTb3VyY2UgPSBpbWFnZUJ1ZmZlclBpcGUtPnNvdXJjZSgpOworICAg
ICAgICBtX3BsYWNlaG9sZGVyRGF0YS0+YnVmZmVyUGlwZVNvdXJjZSA9IGltYWdlQnVmZmVyUGlw
ZS0+c291cmNlKCk7CiB9CiAKIHZvaWQgT2Zmc2NyZWVuQ2FudmFzOjpwdXNoQnVmZmVyVG9QbGFj
ZWhvbGRlcigpCiB7Ci0gICAgY2FsbE9uTWFpblRocmVhZChbcHJvdGVjdGVkVGhpcyA9IG1ha2VS
ZWYoKnRoaXMpLCB0aGlzXSAoKSBtdXRhYmxlIHsKLSAgICAgICAgewotICAgICAgICAgICAgYXV0
byBsb2NrZXIgPSBob2xkTG9jayhtX2NvbW1pdExvY2spOwotICAgICAgICAgICAgaWYgKG1fcGxh
Y2Vob2xkZXJDYW52YXMgJiYgbV9wZW5kaW5nQ29tbWl0QnVmZmVyKQotICAgICAgICAgICAgICAg
IG1fcGxhY2Vob2xkZXJDYW52YXMtPnNldEltYWdlQnVmZmVyQW5kTWFya0RpcnR5KFdURk1vdmUo
bV9wZW5kaW5nQ29tbWl0QnVmZmVyKSk7Ci0gICAgICAgICAgICBtX3BlbmRpbmdDb21taXRCdWZm
ZXIgPSBudWxscHRyOwotICAgICAgICB9Ci0KLSAgICAgICAgc2NyaXB0RXhlY3V0aW9uQ29udGV4
dCgpLT5wb3N0VGFzayh7IFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQ6OlRhc2s6OkNsZWFudXBUYXNr
LAotICAgICAgICAgICAgW3JlbGVhc2VUaGlzID0gV1RGTW92ZShwcm90ZWN0ZWRUaGlzKV0gKFNj
cmlwdEV4ZWN1dGlvbkNvbnRleHQmKSB7IH0gfSk7CisgICAgY2FsbE9uTWFpblRocmVhZChbcGxh
Y2Vob2xkZXJEYXRhID0gbWFrZVJlZigqbV9wbGFjZWhvbGRlckRhdGEpXSAoKSBtdXRhYmxlIHsK
KyAgICAgICAgYXV0byBsb2NrZXIgPSBob2xkTG9jayhwbGFjZWhvbGRlckRhdGEtPmJ1ZmZlckxv
Y2spOworICAgICAgICBpZiAocGxhY2Vob2xkZXJEYXRhLT5jYW52YXMgJiYgcGxhY2Vob2xkZXJE
YXRhLT5wZW5kaW5nQ29tbWl0QnVmZmVyKQorICAgICAgICAgICAgcGxhY2Vob2xkZXJEYXRhLT5j
YW52YXMtPnNldEltYWdlQnVmZmVyQW5kTWFya0RpcnR5KFdURk1vdmUocGxhY2Vob2xkZXJEYXRh
LT5wZW5kaW5nQ29tbWl0QnVmZmVyKSk7CisgICAgICAgIHBsYWNlaG9sZGVyRGF0YS0+cGVuZGlu
Z0NvbW1pdEJ1ZmZlciA9IG51bGxwdHI7CiAgICAgfSk7CiB9CiAKQEAgLTQzMCwxNiArNDI0LDE2
IEBAIHZvaWQgT2Zmc2NyZWVuQ2FudmFzOjpjb21taXRUb1BsYWNlaG9sZGVyQ2FudmFzKCkKICAg
ICBpZiAobV9jb250ZXh0ICYmIChtX2NvbnRleHQtPmlzV2ViR0woKSB8fCBtX2NvbnRleHQtPmlz
QWNjZWxlcmF0ZWQoKSkpCiAgICAgICAgIG1fY29udGV4dC0+cGFpbnRSZW5kZXJpbmdSZXN1bHRz
VG9DYW52YXMoKTsKIAotICAgIGlmIChtX2J1ZmZlclBpcGVTb3VyY2UpIHsKKyAgICBpZiAobV9w
bGFjZWhvbGRlckRhdGEtPmJ1ZmZlclBpcGVTb3VyY2UpIHsKICAgICAgICAgYXV0byBidWZmZXJD
b3B5ID0gaW1hZ2VCdWZmZXItPmNvcHlSZWN0VG9CdWZmZXIoRmxvYXRSZWN0KEZsb2F0UG9pbnQo
KSwgaW1hZ2VCdWZmZXItPmxvZ2ljYWxTaXplKCkpLCBDb2xvclNwYWNlOjpTUkdCLCBpbWFnZUJ1
ZmZlci0+Y29udGV4dCgpKTsKICAgICAgICAgaWYgKGJ1ZmZlckNvcHkpCi0gICAgICAgICAgICBt
X2J1ZmZlclBpcGVTb3VyY2UtPmhhbmRsZShXVEZNb3ZlKGJ1ZmZlckNvcHkpKTsKKyAgICAgICAg
ICAgIG1fcGxhY2Vob2xkZXJEYXRhLT5idWZmZXJQaXBlU291cmNlLT5oYW5kbGUoV1RGTW92ZShi
dWZmZXJDb3B5KSk7CiAgICAgfQogCi0gICAgYXV0byBsb2NrZXIgPSBob2xkTG9jayhtX2NvbW1p
dExvY2spOwotICAgIGJvb2wgc2hvdWxkUHVzaEJ1ZmZlciA9ICFtX3BlbmRpbmdDb21taXRCdWZm
ZXI7Ci0gICAgbV9wZW5kaW5nQ29tbWl0QnVmZmVyID0gaW1hZ2VCdWZmZXItPmNvcHlSZWN0VG9C
dWZmZXIoRmxvYXRSZWN0KEZsb2F0UG9pbnQoKSwgaW1hZ2VCdWZmZXItPmxvZ2ljYWxTaXplKCkp
LCBDb2xvclNwYWNlOjpTUkdCLCBpbWFnZUJ1ZmZlci0+Y29udGV4dCgpKTsKLSAgICBpZiAobV9w
ZW5kaW5nQ29tbWl0QnVmZmVyICYmIHNob3VsZFB1c2hCdWZmZXIpCisgICAgYXV0byBsb2NrZXIg
PSBob2xkTG9jayhtX3BsYWNlaG9sZGVyRGF0YS0+YnVmZmVyTG9jayk7CisgICAgYm9vbCBzaG91
bGRQdXNoQnVmZmVyID0gIW1fcGxhY2Vob2xkZXJEYXRhLT5wZW5kaW5nQ29tbWl0QnVmZmVyOwor
ICAgIG1fcGxhY2Vob2xkZXJEYXRhLT5wZW5kaW5nQ29tbWl0QnVmZmVyID0gaW1hZ2VCdWZmZXIt
PmNvcHlSZWN0VG9CdWZmZXIoRmxvYXRSZWN0KEZsb2F0UG9pbnQoKSwgaW1hZ2VCdWZmZXItPmxv
Z2ljYWxTaXplKCkpLCBDb2xvclNwYWNlOjpTUkdCLCBpbWFnZUJ1ZmZlci0+Y29udGV4dCgpKTsK
KyAgICBpZiAobV9wbGFjZWhvbGRlckRhdGEtPnBlbmRpbmdDb21taXRCdWZmZXIgJiYgc2hvdWxk
UHVzaEJ1ZmZlcikKICAgICAgICAgcHVzaEJ1ZmZlclRvUGxhY2Vob2xkZXIoKTsKIH0KIApkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC9PZmZzY3JlZW5DYW52YXMuaCBiL1NvdXJjZS9X
ZWJDb3JlL2h0bWwvT2Zmc2NyZWVuQ2FudmFzLmgKaW5kZXggMjc3NDY1MjdmMWMwN2I5MDllMWNl
MDM0NWQ4YmI3OTljNTE5MzlhZS4uY2YzMzRhNzRkZjI1M2U4MDQ2ODdiM2ZhNTBkMjQxNWMzMmIw
NGI4MSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaHRtbC9PZmZzY3JlZW5DYW52YXMuaAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL09mZnNjcmVlbkNhbnZhcy5oCkBAIC0zOSw2ICszOSw3
IEBACiAjaW5jbHVkZSAiU2NyaXB0V3JhcHBhYmxlLmgiCiAjaW5jbHVkZSA8d3RmL0ZvcndhcmQu
aD4KICNpbmNsdWRlIDx3dGYvUmVmQ291bnRlZC5oPgorI2luY2x1ZGUgPHd0Zi9UaHJlYWRTYWZl
UmVmQ291bnRlZC5oPgogI2luY2x1ZGUgPHd0Zi9XZWFrUHRyLmg+CiAjaW5jbHVkZSA8d3RmL3Rl
eHQvV1RGU3RyaW5nLmg+CiAjaWYgRU5BQkxFKFdFQkdMKQpAQCAtMTg3LDExICsxODgsMjEgQEAg
cHJpdmF0ZToKICAgICBtdXRhYmxlIFJlZlB0cjxJbWFnZT4gbV9jb3BpZWRJbWFnZTsKIAogICAg
IGJvb2wgbV9oYXNTY2hlZHVsZWRDb21taXQgeyBmYWxzZSB9OwotICAgIFdlYWtQdHI8SFRNTENh
bnZhc0VsZW1lbnQ+IG1fcGxhY2Vob2xkZXJDYW52YXM7Ci0gICAgUmVmUHRyPEltYWdlQnVmZmVy
UGlwZTo6U291cmNlPiBtX2J1ZmZlclBpcGVTb3VyY2U7CiAKLSAgICBtdXRhYmxlIExvY2sgbV9j
b21taXRMb2NrOwotICAgIHN0ZDo6dW5pcXVlX3B0cjxJbWFnZUJ1ZmZlcj4gbV9wZW5kaW5nQ29t
bWl0QnVmZmVyOworICAgIGNsYXNzIFBsYWNlaG9sZGVyRGF0YSA6IHB1YmxpYyBUaHJlYWRTYWZl
UmVmQ291bnRlZDxQbGFjZWhvbGRlckRhdGE+IHsKKyAgICBwdWJsaWM6CisgICAgICAgIHN0YXRp
YyBSZWY8UGxhY2Vob2xkZXJEYXRhPiBjcmVhdGUoKQorICAgICAgICB7CisgICAgICAgICAgICBy
ZXR1cm4gYWRvcHRSZWYoKm5ldyBQbGFjZWhvbGRlckRhdGEpOworICAgICAgICB9CisKKyAgICAg
ICAgV2Vha1B0cjxIVE1MQ2FudmFzRWxlbWVudD4gY2FudmFzOworICAgICAgICBSZWZQdHI8SW1h
Z2VCdWZmZXJQaXBlOjpTb3VyY2U+IGJ1ZmZlclBpcGVTb3VyY2U7CisgICAgICAgIHN0ZDo6dW5p
cXVlX3B0cjxJbWFnZUJ1ZmZlcj4gcGVuZGluZ0NvbW1pdEJ1ZmZlcjsKKyAgICAgICAgbXV0YWJs
ZSBMb2NrIGJ1ZmZlckxvY2s7CisgICAgfTsKKworICAgIFJlZlB0cjxQbGFjZWhvbGRlckRhdGE+
IG1fcGxhY2Vob2xkZXJEYXRhOwogfTsKIAogfQo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>412432</attachid>
            <date>2020-10-27 09:36:01 -0700</date>
            <delta_ts>2020-10-27 10:08:55 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-217986-20201027163600.patch</filename>
            <type>text/plain</type>
            <size>9466</size>
            <attacher name="Chris Lord">clord</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjY4OTc4CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNDBhN2M2MDQ5ZWJhZTYw
ODU0OWJkNWFlMDVjZWI3ZTk0YzkzMjZiMS4uZjZmNjE3Y2QyMWQ1YzU5MTI3ZmMyZGIxZTVjMTMw
OTM4NjFmMTY3YiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI3IEBACisyMDIwLTEwLTI3ICBDaHJp
cyBMb3JkICA8Y2xvcmRAaWdhbGlhLmNvbT4KKworICAgICAgICBbR0xJQl0gaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vbGluZS1zdHlsZXMvMmQu
bGluZS53aWR0aC50cmFuc2Zvcm1lZC5odG1sIGlzIGEgZmxha3kgY3Jhc2gKKyAgICAgICAgaHR0
cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIxNzk4NgorCisgICAgICAgIFJl
dmlld2VkIGJ5IFNpbW9uIEZyYXNlci4KKworICAgICAgICBGaXggcmFjZSBjb25kaXRpb24gY2F1
c2VkIGJ5IHVzZSBvZiBPZmZzY3JlZW5DYW52YXM6OnNjcmlwdEV4ZWN1dGlvbkNvbnRleHQoKSBv
biBtYWluIHRocmVhZC4KKyAgICAgICAgSW5zdGVhZCBvZiBwYXNzaW5nIGEgcmVmZXJlbmNlIHRv
IHRoZSBPZmZzY3JlZW5DYW52YXMgb2JqZWN0IHdoZW4gZGVhbGluZyB3aXRoIHRoZSBwbGFjZWhv
bGRlcgorICAgICAgICBjYW52YXMgb24gdGhlIG1haW4gdGhyZWFkLCBlbmNhcHN1bGF0ZSB0aGUg
bmVjZXNzYXJ5IGRhdGEgaW4gYSBzZXBhcmF0ZSwgVGhyZWFkU2FmZVJlZkNvdW50ZWQKKyAgICAg
ICAgb2JqZWN0IGFuZCBwYXNzIHRoYXQgaW5zdGVhZCwgbmVnYXRpbmcgdGhlIG5lZWQgdG8gY2Fs
bCBiYWNrIHRvIHRoZSBXb3JrZXIgdGhyZWFkIHRvIHJlbGVhc2UKKyAgICAgICAgdGhlIHJlZmVy
ZW5jZS4KKworICAgICAgICBDb3ZlcmVkIGJ5IGV4aXN0aW5nIHRlc3RzLgorCisgICAgICAgICog
aHRtbC9PZmZzY3JlZW5DYW52YXMuY3BwOgorICAgICAgICAoV2ViQ29yZTo6T2Zmc2NyZWVuQ2Fu
dmFzOjpjcmVhdGUpOgorICAgICAgICAoV2ViQ29yZTo6T2Zmc2NyZWVuQ2FudmFzOjpPZmZzY3Jl
ZW5DYW52YXMpOgorICAgICAgICAoV2ViQ29yZTo6T2Zmc2NyZWVuQ2FudmFzOjpkZXRhY2gpOgor
ICAgICAgICAoV2ViQ29yZTo6T2Zmc2NyZWVuQ2FudmFzOjpzZXRQbGFjZWhvbGRlckNhbnZhcyk6
CisgICAgICAgIChXZWJDb3JlOjpPZmZzY3JlZW5DYW52YXM6OnB1c2hCdWZmZXJUb1BsYWNlaG9s
ZGVyKToKKyAgICAgICAgKFdlYkNvcmU6Ok9mZnNjcmVlbkNhbnZhczo6Y29tbWl0VG9QbGFjZWhv
bGRlckNhbnZhcyk6CisgICAgICAgICogaHRtbC9PZmZzY3JlZW5DYW52YXMuaDoKKwogMjAyMC0x
MC0yNiAgWW91ZW5uIEZhYmxldCAgPHlvdWVubkBhcHBsZS5jb20+CiAKICAgICAgICAgTWFrZSB1
c2Ugb2Ygc2lnbmFsbGluZyB0aHJlYWQgd2hlbiBjcmVhdGluZyB0aGUgcGVlciBjb25uZWN0aW9u
IGZhY3RvcnkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvT2Zmc2NyZWVuQ2FudmFz
LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvT2Zmc2NyZWVuQ2FudmFzLmNwcAppbmRleCAxZTI2
MDMzZjIzODAwODNhMzE2YTVkNDZiYjExYjFkNzQyYThmZjViLi41MjczZWExMzA4N2FhN2RjZDg3
Y2E0YjM0MDhmY2JiMmM2Yzk2MjY4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1sL09m
ZnNjcmVlbkNhbnZhcy5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9PZmZzY3JlZW5DYW52
YXMuY3BwCkBAIC04NSwxNiArODUsMTQgQEAgUmVmPE9mZnNjcmVlbkNhbnZhcz4gT2Zmc2NyZWVu
Q2FudmFzOjpjcmVhdGUoU2NyaXB0RXhlY3V0aW9uQ29udGV4dCYgY29udGV4dCwgc3QKICAgICBp
ZiAoIWRldGFjaGVkQ2FudmFzLT5vcmlnaW5DbGVhbigpKQogICAgICAgICBjbG9uZS0+c2V0T3Jp
Z2luVGFpbnRlZCgpOwogCi0gICAgY2FsbE9uTWFpblRocmVhZChbZGV0YWNoZWRDYW52YXMgPSBX
VEZNb3ZlKGRldGFjaGVkQ2FudmFzKSwgb2Zmc2NyZWVuQ2FudmFzID0gbWFrZVJlZihjbG9uZS5n
ZXQoKSldICgpIG11dGFibGUgewotICAgICAgICBvZmZzY3JlZW5DYW52YXMtPm1fcGxhY2Vob2xk
ZXJDYW52YXMgPSBkZXRhY2hlZENhbnZhcy0+dGFrZVBsYWNlaG9sZGVyQ2FudmFzKCk7Ci0gICAg
ICAgIGlmIChvZmZzY3JlZW5DYW52YXMtPm1fcGxhY2Vob2xkZXJDYW52YXMpIHsKLSAgICAgICAg
ICAgIGF1dG8mIHBsYWNlaG9sZGVyQ29udGV4dCA9IGRvd25jYXN0PFBsYWNlaG9sZGVyUmVuZGVy
aW5nQ29udGV4dD4oKm9mZnNjcmVlbkNhbnZhcy0+bV9wbGFjZWhvbGRlckNhbnZhcy0+cmVuZGVy
aW5nQ29udGV4dCgpKTsKKyAgICBjYWxsT25NYWluVGhyZWFkKFtkZXRhY2hlZENhbnZhcyA9IFdU
Rk1vdmUoZGV0YWNoZWRDYW52YXMpLCBwbGFjZWhvbGRlckRhdGEgPSBtYWtlUmVmKCpjbG9uZS0+
bV9wbGFjZWhvbGRlckRhdGEpXSAoKSBtdXRhYmxlIHsKKyAgICAgICAgcGxhY2Vob2xkZXJEYXRh
LT5jYW52YXMgPSBkZXRhY2hlZENhbnZhcy0+dGFrZVBsYWNlaG9sZGVyQ2FudmFzKCk7CisgICAg
ICAgIGlmIChwbGFjZWhvbGRlckRhdGEtPmNhbnZhcykgeworICAgICAgICAgICAgYXV0byYgcGxh
Y2Vob2xkZXJDb250ZXh0ID0gZG93bmNhc3Q8UGxhY2Vob2xkZXJSZW5kZXJpbmdDb250ZXh0Pigq
cGxhY2Vob2xkZXJEYXRhLT5jYW52YXMtPnJlbmRlcmluZ0NvbnRleHQoKSk7CiAgICAgICAgICAg
ICBhdXRvJiBpbWFnZUJ1ZmZlclBpcGUgPSBwbGFjZWhvbGRlckNvbnRleHQuaW1hZ2VCdWZmZXJQ
aXBlKCk7CiAgICAgICAgICAgICBpZiAoaW1hZ2VCdWZmZXJQaXBlKQotICAgICAgICAgICAgICAg
IG9mZnNjcmVlbkNhbnZhcy0+bV9idWZmZXJQaXBlU291cmNlID0gaW1hZ2VCdWZmZXJQaXBlLT5z
b3VyY2UoKTsKKyAgICAgICAgICAgICAgICBwbGFjZWhvbGRlckRhdGEtPmJ1ZmZlclBpcGVTb3Vy
Y2UgPSBpbWFnZUJ1ZmZlclBpcGUtPnNvdXJjZSgpOwogICAgICAgICB9Ci0gICAgICAgIG9mZnNj
cmVlbkNhbnZhcy0+c2NyaXB0RXhlY3V0aW9uQ29udGV4dCgpLT5wb3N0VGFzayh7IFNjcmlwdEV4
ZWN1dGlvbkNvbnRleHQ6OlRhc2s6OkNsZWFudXBUYXNrLAotICAgICAgICAgICAgW3JlbGVhc2VP
ZmZzY3JlZW5DYW52YXMgPSBXVEZNb3ZlKG9mZnNjcmVlbkNhbnZhcyldIChTY3JpcHRFeGVjdXRp
b25Db250ZXh0JikgeyB9IH0pOwogICAgIH0pOwogCiAgICAgcmV0dXJuIGNsb25lOwpAQCAtMTEw
LDYgKzEwOCw3IEBAIFJlZjxPZmZzY3JlZW5DYW52YXM+IE9mZnNjcmVlbkNhbnZhczo6Y3JlYXRl
KFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQmIGNvbnRleHQsIEhUCiBPZmZzY3JlZW5DYW52YXM6Ok9m
ZnNjcmVlbkNhbnZhcyhTY3JpcHRFeGVjdXRpb25Db250ZXh0JiBjb250ZXh0LCB1bnNpZ25lZCB3
aWR0aCwgdW5zaWduZWQgaGVpZ2h0KQogICAgIDogQ2FudmFzQmFzZShJbnRTaXplKHdpZHRoLCBo
ZWlnaHQpKQogICAgICwgQ29udGV4dERlc3RydWN0aW9uT2JzZXJ2ZXIoJmNvbnRleHQpCisgICAg
LCBtX3BsYWNlaG9sZGVyRGF0YShQbGFjZWhvbGRlckRhdGE6OmNyZWF0ZSgpKQogewogfQogCkBA
IC0zODksNyArMzg4LDcgQEAgc3RkOjp1bmlxdWVfcHRyPERldGFjaGVkT2Zmc2NyZWVuQ2FudmFz
PiBPZmZzY3JlZW5DYW52YXM6OmRldGFjaCgpCiAgICAgbV9kZXRhY2hlZCA9IHRydWU7CiAKICAg
ICBhdXRvIGRldGFjaGVkID0gbWFrZVVuaXF1ZTxEZXRhY2hlZE9mZnNjcmVlbkNhbnZhcz4odGFr
ZUltYWdlQnVmZmVyKCksIHNpemUoKSwgb3JpZ2luQ2xlYW4oKSk7Ci0gICAgZGV0YWNoZWQtPm1f
cGxhY2Vob2xkZXJDYW52YXMgPSBzdGQ6OmV4Y2hhbmdlKG1fcGxhY2Vob2xkZXJDYW52YXMsIG51
bGxwdHIpOworICAgIGRldGFjaGVkLT5tX3BsYWNlaG9sZGVyQ2FudmFzID0gc3RkOjpleGNoYW5n
ZShtX3BsYWNlaG9sZGVyRGF0YS0+Y2FudmFzLCBudWxscHRyKTsKIAogICAgIHJldHVybiBkZXRh
Y2hlZDsKIH0KQEAgLTM5OCwyNSArMzk3LDIwIEBAIHZvaWQgT2Zmc2NyZWVuQ2FudmFzOjpzZXRQ
bGFjZWhvbGRlckNhbnZhcyhIVE1MQ2FudmFzRWxlbWVudCYgY2FudmFzKQogewogICAgIEFTU0VS
VCghbV9jb250ZXh0KTsKICAgICBBU1NFUlQoaXNNYWluVGhyZWFkKCkpOwotICAgIG1fcGxhY2Vo
b2xkZXJDYW52YXMgPSBtYWtlV2Vha1B0cihjYW52YXMpOworICAgIG1fcGxhY2Vob2xkZXJEYXRh
LT5jYW52YXMgPSBtYWtlV2Vha1B0cihjYW52YXMpOwogICAgIGF1dG8mIHBsYWNlaG9sZGVyQ29u
dGV4dCA9IGRvd25jYXN0PFBsYWNlaG9sZGVyUmVuZGVyaW5nQ29udGV4dD4oKmNhbnZhcy5yZW5k
ZXJpbmdDb250ZXh0KCkpOwogICAgIGF1dG8mIGltYWdlQnVmZmVyUGlwZSA9IHBsYWNlaG9sZGVy
Q29udGV4dC5pbWFnZUJ1ZmZlclBpcGUoKTsKICAgICBpZiAoaW1hZ2VCdWZmZXJQaXBlKQotICAg
ICAgICBtX2J1ZmZlclBpcGVTb3VyY2UgPSBpbWFnZUJ1ZmZlclBpcGUtPnNvdXJjZSgpOworICAg
ICAgICBtX3BsYWNlaG9sZGVyRGF0YS0+YnVmZmVyUGlwZVNvdXJjZSA9IGltYWdlQnVmZmVyUGlw
ZS0+c291cmNlKCk7CiB9CiAKIHZvaWQgT2Zmc2NyZWVuQ2FudmFzOjpwdXNoQnVmZmVyVG9QbGFj
ZWhvbGRlcigpCiB7Ci0gICAgY2FsbE9uTWFpblRocmVhZChbcHJvdGVjdGVkVGhpcyA9IG1ha2VS
ZWYoKnRoaXMpLCB0aGlzXSAoKSBtdXRhYmxlIHsKLSAgICAgICAgewotICAgICAgICAgICAgYXV0
byBsb2NrZXIgPSBob2xkTG9jayhtX2NvbW1pdExvY2spOwotICAgICAgICAgICAgaWYgKG1fcGxh
Y2Vob2xkZXJDYW52YXMgJiYgbV9wZW5kaW5nQ29tbWl0QnVmZmVyKQotICAgICAgICAgICAgICAg
IG1fcGxhY2Vob2xkZXJDYW52YXMtPnNldEltYWdlQnVmZmVyQW5kTWFya0RpcnR5KFdURk1vdmUo
bV9wZW5kaW5nQ29tbWl0QnVmZmVyKSk7Ci0gICAgICAgICAgICBtX3BlbmRpbmdDb21taXRCdWZm
ZXIgPSBudWxscHRyOwotICAgICAgICB9Ci0KLSAgICAgICAgc2NyaXB0RXhlY3V0aW9uQ29udGV4
dCgpLT5wb3N0VGFzayh7IFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQ6OlRhc2s6OkNsZWFudXBUYXNr
LAotICAgICAgICAgICAgW3JlbGVhc2VUaGlzID0gV1RGTW92ZShwcm90ZWN0ZWRUaGlzKV0gKFNj
cmlwdEV4ZWN1dGlvbkNvbnRleHQmKSB7IH0gfSk7CisgICAgY2FsbE9uTWFpblRocmVhZChbcGxh
Y2Vob2xkZXJEYXRhID0gbWFrZVJlZigqbV9wbGFjZWhvbGRlckRhdGEpXSAoKSBtdXRhYmxlIHsK
KyAgICAgICAgYXV0byBsb2NrZXIgPSBob2xkTG9jayhwbGFjZWhvbGRlckRhdGEtPmJ1ZmZlckxv
Y2spOworICAgICAgICBpZiAocGxhY2Vob2xkZXJEYXRhLT5jYW52YXMgJiYgcGxhY2Vob2xkZXJE
YXRhLT5wZW5kaW5nQ29tbWl0QnVmZmVyKQorICAgICAgICAgICAgcGxhY2Vob2xkZXJEYXRhLT5j
YW52YXMtPnNldEltYWdlQnVmZmVyQW5kTWFya0RpcnR5KFdURk1vdmUocGxhY2Vob2xkZXJEYXRh
LT5wZW5kaW5nQ29tbWl0QnVmZmVyKSk7CisgICAgICAgIHBsYWNlaG9sZGVyRGF0YS0+cGVuZGlu
Z0NvbW1pdEJ1ZmZlciA9IG51bGxwdHI7CiAgICAgfSk7CiB9CiAKQEAgLTQzMCwxNiArNDI0LDE2
IEBAIHZvaWQgT2Zmc2NyZWVuQ2FudmFzOjpjb21taXRUb1BsYWNlaG9sZGVyQ2FudmFzKCkKICAg
ICBpZiAobV9jb250ZXh0ICYmIChtX2NvbnRleHQtPmlzV2ViR0woKSB8fCBtX2NvbnRleHQtPmlz
QWNjZWxlcmF0ZWQoKSkpCiAgICAgICAgIG1fY29udGV4dC0+cGFpbnRSZW5kZXJpbmdSZXN1bHRz
VG9DYW52YXMoKTsKIAotICAgIGlmIChtX2J1ZmZlclBpcGVTb3VyY2UpIHsKKyAgICBpZiAobV9w
bGFjZWhvbGRlckRhdGEtPmJ1ZmZlclBpcGVTb3VyY2UpIHsKICAgICAgICAgYXV0byBidWZmZXJD
b3B5ID0gaW1hZ2VCdWZmZXItPmNvcHlSZWN0VG9CdWZmZXIoRmxvYXRSZWN0KEZsb2F0UG9pbnQo
KSwgaW1hZ2VCdWZmZXItPmxvZ2ljYWxTaXplKCkpLCBDb2xvclNwYWNlOjpTUkdCLCBpbWFnZUJ1
ZmZlci0+Y29udGV4dCgpKTsKICAgICAgICAgaWYgKGJ1ZmZlckNvcHkpCi0gICAgICAgICAgICBt
X2J1ZmZlclBpcGVTb3VyY2UtPmhhbmRsZShXVEZNb3ZlKGJ1ZmZlckNvcHkpKTsKKyAgICAgICAg
ICAgIG1fcGxhY2Vob2xkZXJEYXRhLT5idWZmZXJQaXBlU291cmNlLT5oYW5kbGUoV1RGTW92ZShi
dWZmZXJDb3B5KSk7CiAgICAgfQogCi0gICAgYXV0byBsb2NrZXIgPSBob2xkTG9jayhtX2NvbW1p
dExvY2spOwotICAgIGJvb2wgc2hvdWxkUHVzaEJ1ZmZlciA9ICFtX3BlbmRpbmdDb21taXRCdWZm
ZXI7Ci0gICAgbV9wZW5kaW5nQ29tbWl0QnVmZmVyID0gaW1hZ2VCdWZmZXItPmNvcHlSZWN0VG9C
dWZmZXIoRmxvYXRSZWN0KEZsb2F0UG9pbnQoKSwgaW1hZ2VCdWZmZXItPmxvZ2ljYWxTaXplKCkp
LCBDb2xvclNwYWNlOjpTUkdCLCBpbWFnZUJ1ZmZlci0+Y29udGV4dCgpKTsKLSAgICBpZiAobV9w
ZW5kaW5nQ29tbWl0QnVmZmVyICYmIHNob3VsZFB1c2hCdWZmZXIpCisgICAgYXV0byBsb2NrZXIg
PSBob2xkTG9jayhtX3BsYWNlaG9sZGVyRGF0YS0+YnVmZmVyTG9jayk7CisgICAgYm9vbCBzaG91
bGRQdXNoQnVmZmVyID0gIW1fcGxhY2Vob2xkZXJEYXRhLT5wZW5kaW5nQ29tbWl0QnVmZmVyOwor
ICAgIG1fcGxhY2Vob2xkZXJEYXRhLT5wZW5kaW5nQ29tbWl0QnVmZmVyID0gaW1hZ2VCdWZmZXIt
PmNvcHlSZWN0VG9CdWZmZXIoRmxvYXRSZWN0KEZsb2F0UG9pbnQoKSwgaW1hZ2VCdWZmZXItPmxv
Z2ljYWxTaXplKCkpLCBDb2xvclNwYWNlOjpTUkdCLCBpbWFnZUJ1ZmZlci0+Y29udGV4dCgpKTsK
KyAgICBpZiAobV9wbGFjZWhvbGRlckRhdGEtPnBlbmRpbmdDb21taXRCdWZmZXIgJiYgc2hvdWxk
UHVzaEJ1ZmZlcikKICAgICAgICAgcHVzaEJ1ZmZlclRvUGxhY2Vob2xkZXIoKTsKIH0KIApkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC9PZmZzY3JlZW5DYW52YXMuaCBiL1NvdXJjZS9X
ZWJDb3JlL2h0bWwvT2Zmc2NyZWVuQ2FudmFzLmgKaW5kZXggMjc3NDY1MjdmMWMwN2I5MDllMWNl
MDM0NWQ4YmI3OTljNTE5MzlhZS4uY2YzMzRhNzRkZjI1M2U4MDQ2ODdiM2ZhNTBkMjQxNWMzMmIw
NGI4MSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaHRtbC9PZmZzY3JlZW5DYW52YXMuaAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL09mZnNjcmVlbkNhbnZhcy5oCkBAIC0zOSw2ICszOSw3
IEBACiAjaW5jbHVkZSAiU2NyaXB0V3JhcHBhYmxlLmgiCiAjaW5jbHVkZSA8d3RmL0ZvcndhcmQu
aD4KICNpbmNsdWRlIDx3dGYvUmVmQ291bnRlZC5oPgorI2luY2x1ZGUgPHd0Zi9UaHJlYWRTYWZl
UmVmQ291bnRlZC5oPgogI2luY2x1ZGUgPHd0Zi9XZWFrUHRyLmg+CiAjaW5jbHVkZSA8d3RmL3Rl
eHQvV1RGU3RyaW5nLmg+CiAjaWYgRU5BQkxFKFdFQkdMKQpAQCAtMTg3LDExICsxODgsMjEgQEAg
cHJpdmF0ZToKICAgICBtdXRhYmxlIFJlZlB0cjxJbWFnZT4gbV9jb3BpZWRJbWFnZTsKIAogICAg
IGJvb2wgbV9oYXNTY2hlZHVsZWRDb21taXQgeyBmYWxzZSB9OwotICAgIFdlYWtQdHI8SFRNTENh
bnZhc0VsZW1lbnQ+IG1fcGxhY2Vob2xkZXJDYW52YXM7Ci0gICAgUmVmUHRyPEltYWdlQnVmZmVy
UGlwZTo6U291cmNlPiBtX2J1ZmZlclBpcGVTb3VyY2U7CiAKLSAgICBtdXRhYmxlIExvY2sgbV9j
b21taXRMb2NrOwotICAgIHN0ZDo6dW5pcXVlX3B0cjxJbWFnZUJ1ZmZlcj4gbV9wZW5kaW5nQ29t
bWl0QnVmZmVyOworICAgIGNsYXNzIFBsYWNlaG9sZGVyRGF0YSA6IHB1YmxpYyBUaHJlYWRTYWZl
UmVmQ291bnRlZDxQbGFjZWhvbGRlckRhdGE+IHsKKyAgICBwdWJsaWM6CisgICAgICAgIHN0YXRp
YyBSZWY8UGxhY2Vob2xkZXJEYXRhPiBjcmVhdGUoKQorICAgICAgICB7CisgICAgICAgICAgICBy
ZXR1cm4gYWRvcHRSZWYoKm5ldyBQbGFjZWhvbGRlckRhdGEpOworICAgICAgICB9CisKKyAgICAg
ICAgV2Vha1B0cjxIVE1MQ2FudmFzRWxlbWVudD4gY2FudmFzOworICAgICAgICBSZWZQdHI8SW1h
Z2VCdWZmZXJQaXBlOjpTb3VyY2U+IGJ1ZmZlclBpcGVTb3VyY2U7CisgICAgICAgIHN0ZDo6dW5p
cXVlX3B0cjxJbWFnZUJ1ZmZlcj4gcGVuZGluZ0NvbW1pdEJ1ZmZlcjsKKyAgICAgICAgbXV0YWJs
ZSBMb2NrIGJ1ZmZlckxvY2s7CisgICAgfTsKKworICAgIFJlZlB0cjxQbGFjZWhvbGRlckRhdGE+
IG1fcGxhY2Vob2xkZXJEYXRhOwogfTsKIAogfQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvcGxh
dGZvcm0vZ2xpYi9UZXN0RXhwZWN0YXRpb25zIGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vZ2xpYi9U
ZXN0RXhwZWN0YXRpb25zCmluZGV4IGI3OWQzNTE4OTE2ZmFiZTBmZDM5MjIxMzkyYjA1OTU3NjFl
YzRjMGQuLjA3MjNjYmIyOTI1N2UwMjAwOGQ5MTNhOGFlZDcyOWY2YTRjYTk4MDcgMTAwNjQ0Ci0t
LSBhL0xheW91dFRlc3RzL3BsYXRmb3JtL2dsaWIvVGVzdEV4cGVjdGF0aW9ucworKysgYi9MYXlv
dXRUZXN0cy9wbGF0Zm9ybS9nbGliL1Rlc3RFeHBlY3RhdGlvbnMKQEAgLTM5MiwxMSArMzkyLDYg
QEAgd2Via2l0Lm9yZy9iLzE5NzQyMSBpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2lt
YWdlYml0bWFwLXJlbmRlcmluZ2NvbnRleHQKIAogd2Via2l0Lm9yZy9iLzIxNTQ2MiBpbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi9tYW51YWwvdGhl
LW9mZnNjcmVlbi1jYW52YXMvb2Zmc2NyZWVuY2FudmFzLmNvbW1pdC5odG1sIFsgRmFpbHVyZSBQ
YXNzIF0KIAotIyBGbGFreSBjcmFzaCBvbiBwdXNoQnVmZmVyVG9QbGFjZWhvbGRlcigpLgotd2Vi
a2l0Lm9yZy9iLzIxNzk4NiBpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2Fu
dmFzL29mZnNjcmVlbi9saW5lLXN0eWxlcy8yZC5saW5lLndpZHRoLnRyYW5zZm9ybWVkLmh0bWwg
WyBDcmFzaCBQYXNzIF0KLXdlYmtpdC5vcmcvYi8yMTc5ODYgaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vcGF0aC1vYmplY3RzLzJkLnBhdGguYXJj
LnNlbGZpbnRlcnNlY3QuMS53b3JrZXIuaHRtbCBbIENyYXNoIFBhc3MgXQotd2Via2l0Lm9yZy9i
LzIxNzk4NiBpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNj
cmVlbi9wYXRoLW9iamVjdHMvMmQucGF0aC5hcmMuc2VsZmludGVyc2VjdC4xLmh0bWwgWyBDcmFz
aCBQYXNzIF0KLQogIy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8v
Ly8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KICMgRW5kIG9mIE9m
ZnNjcmVlbkNhbnZhcy1yZWxhdGVkIGJ1Z3MKICMvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8v
Ly8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8v
Ly8vCg==
</data>

          </attachment>
      

    </bug>

</bugzilla>