<?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>221227</bug_id>
          
          <creation_ts>2021-02-01 14:13:46 -0800</creation_ts>
          <short_desc>Crash under NetworkStorageSession::cookiesForSession()</short_desc>
          <delta_ts>2021-02-02 09:50:27 -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>WebKit2</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=221268</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="Chris Dumez">cdumez</reporter>
          <assigned_to name="Chris Dumez">cdumez</assigned_to>
          <cc>achristensen</cc>
    
    <cc>beidson</cc>
    
    <cc>darin</cc>
    
    <cc>ggaren</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1724409</commentid>
    <comment_count>0</comment_count>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2021-02-01 14:13:46 -0800</bug_when>
    <thetext>Crash under NetworkStorageSession::cookiesForSession():
Thread 0 Crashed ↩:: Dispatch queue: com.apple.main-thread
0   libsystem_kernel.dylib        	0x00007fff202e5e12 __pthread_kill + 10
1   libsystem_pthread.dylib       	0x00007fff20314615 pthread_kill + 263
2   libsystem_c.dylib             	0x00007fff20269411 abort + 120
3   libsystem_malloc.dylib        	0x00007fff20149438 malloc_vreport + 548
4   libsystem_malloc.dylib        	0x00007fff2015d79a malloc_zone_error + 183
5   libsystem_malloc.dylib        	0x00007fff201421b8 small_free_list_remove_ptr_no_clear + 1270
6   libsystem_malloc.dylib        	0x00007fff2013d2cd small_malloc_from_free_list + 359
7   libsystem_malloc.dylib        	0x00007fff2013caf8 small_malloc_should_clear + 259
8   libsystem_malloc.dylib        	0x00007fff2013c912 szone_malloc_should_clear + 109
9   libsystem_malloc.dylib        	0x00007fff2015602c _malloc_zone_calloc + 59
10  com.apple.CoreFoundation      	0x00007fff2038fcb2 _CFRuntimeCreateInstance + 294
11  com.apple.CoreFoundation      	0x00007fff2038f3bc __CFStringCreateImmutableFunnel3 + 1900
12  com.apple.CoreFoundation      	0x00007fff2038ec42 CFStringCreateWithCString + 73
13  com.apple.CFNetwork           	0x7fff247bd81f -[NSHTTPCookie value] + 9 (/System/Volumes/Data/SWE/macOS/BuildRoots/2288acc43c/Library/Caches/com.apple.xbs/Sources/CFNetwork/CFNetwork-1230.1/Foundation/NSHTTPCookie.mm:386)
14  com.apple.WebCore             	0x00007fff3a580994 WebCore::NetworkStorageSession::cookiesForSession(WTF::URL const&amp;, WebCore::SameSiteInfo const&amp;, WTF::URL const&amp;, WTF::Optional&lt;WTF::ObjectIdentifier&lt;WebCore::FrameIdentifierType&gt; &gt;, WTF::Optional&lt;WTF::ObjectIdentifier&lt;WebCore::PageIdentifierType&gt; &gt;, WebCore::NetworkStorageSession::IncludeHTTPOnlyOrNot, WebCore::IncludeSecureCookies, WebCore::ShouldAskITP, WebCore::ShouldRelaxThirdPartyCookieBlocking) const + 1348
15  com.apple.WebCore             	0x00007fff3a580c29 WebCore::NetworkStorageSession::cookiesForDOM(WTF::URL const&amp;, WebCore::SameSiteInfo const&amp;, WTF::URL const&amp;, WTF::Optional&lt;WTF::ObjectIdentifier&lt;WebCore::FrameIdentifierType&gt; &gt;, WTF::Optional&lt;WTF::ObjectIdentifier&lt;WebCore::PageIdentifierType&gt; &gt;, WebCore::IncludeSecureCookies, WebCore::ShouldAskITP, WebCore::ShouldRelaxThirdPartyCookieBlocking) const + 121
16  com.apple.WebKit              	0x00007fff3c95c997 WebKit::WebCookieJar::cookies(WebCore::Document&amp;, WTF::URL const&amp;) const + 1997
17  com.apple.WebCore             	0x00007fff3ab15470 WebCore::Document::cookie() + 336
18  com.apple.WebCore             	0x00007fff39d1e796 WebCore::jsDocument_cookie(JSC::JSGlobalObject*, long long, JSC::PropertyName) + 38</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1724410</commentid>
    <comment_count>1</comment_count>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2021-02-01 14:14:02 -0800</bug_when>
    <thetext>&lt;rdar://71975008&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1724412</commentid>
    <comment_count>2</comment_count>
      <attachid>418923</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2021-02-01 14:16:13 -0800</bug_when>
    <thetext>Created attachment 418923
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1724440</commentid>
    <comment_count>3</comment_count>
      <attachid>418934</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2021-02-01 15:16:56 -0800</bug_when>
    <thetext>Created attachment 418934
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1724441</commentid>
    <comment_count>4</comment_count>
      <attachid>418934</attachid>
    <who name="Geoffrey Garen">ggaren</who>
    <bug_when>2021-02-01 15:21:19 -0800</bug_when>
    <thetext>Comment on attachment 418934
Patch

r=me</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1724682</commentid>
    <comment_count>5</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2021-02-02 09:07:40 -0800</bug_when>
    <thetext>Committed r272211: &lt;https://trac.webkit.org/changeset/272211&gt;

All reviewed patches have been landed. Closing bug and clearing flags on attachment 418934.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1724691</commentid>
    <comment_count>6</comment_count>
      <attachid>418934</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2021-02-02 09:22:46 -0800</bug_when>
    <thetext>Comment on attachment 418934
Patch

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

&gt; Source/WebCore/platform/network/cocoa/NetworkStorageSessionCocoa.mm:270
&gt; +    return *cookiesPtr;

Could add a WTFMove here and avoid one churn, since the &quot;*&quot; means the return-value optimization won’t happen.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1724697</commentid>
    <comment_count>7</comment_count>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2021-02-02 09:38:11 -0800</bug_when>
    <thetext>(In reply to Darin Adler from comment #6)
&gt; Comment on attachment 418934 [details]
&gt; Patch
&gt; 
&gt; View in context:
&gt; https://bugs.webkit.org/attachment.cgi?id=418934&amp;action=review
&gt; 
&gt; &gt; Source/WebCore/platform/network/cocoa/NetworkStorageSessionCocoa.mm:270
&gt; &gt; +    return *cookiesPtr;
&gt; 
&gt; Could add a WTFMove here and avoid one churn, since the &quot;*&quot; means the
&gt; return-value optimization won’t happen.

I followed-up in &lt;https://trac.webkit.org/changeset/272214&gt;. Thanks.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>418923</attachid>
            <date>2021-02-01 14:16:13 -0800</date>
            <delta_ts>2021-02-01 15:16:55 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-221227-20210201141613.patch</filename>
            <type>text/plain</type>
            <size>9670</size>
            <attacher name="Chris Dumez">cdumez</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjcyMTQ5CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNDhlYjFmYmE3NmQ2Zjcy
NWI1ZTU4MWY0Y2ViY2FhNDNiM2RiNmQ2Zi4uYzk1ZmI5M2Y0ZTZlZTVkNDRhNGFiNmE5YmYzZGYy
N2MxODczZDhmNyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI2IEBACisyMDIxLTAyLTAxICBDaHJp
cyBEdW1leiAgPGNkdW1lekBhcHBsZS5jb20+CisKKyAgICAgICAgQ3Jhc2ggdW5kZXIgTmV0d29y
a1N0b3JhZ2VTZXNzaW9uOjpjb29raWVzRm9yU2Vzc2lvbigpCisgICAgICAgIGh0dHBzOi8vYnVn
cy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMjEyMjcKKyAgICAgICAgPHJkYXI6Ly83MTk3
NTAwOD4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBS
ZXRhaW4gTlNBcnJheSBvZiBjb29raWVzIGluIE5ldHdvcmtTdG9yYWdlU2Vzc2lvbjo6Y29va2ll
c0ZvclNlc3Npb24oKSBmb3IgY2xlYXJlciBsaWZldGltZQorICAgICAgICBtYW5hZ2VtZW50Lgor
CisgICAgICAgICogcGxhdGZvcm0vbmV0d29yay9OZXR3b3JrU3RvcmFnZVNlc3Npb24uaDoKKyAg
ICAgICAgKiBwbGF0Zm9ybS9uZXR3b3JrL2NvY29hL05ldHdvcmtTdG9yYWdlU2Vzc2lvbkNvY29h
Lm1tOgorICAgICAgICAoV2ViQ29yZTo6TmV0d29ya1N0b3JhZ2VTZXNzaW9uOjpodHRwQ29va2ll
cyBjb25zdCk6CisgICAgICAgIChXZWJDb3JlOjpjb29raWVzRm9yVVJMKToKKyAgICAgICAgKFdl
YkNvcmU6Ok5ldHdvcmtTdG9yYWdlU2Vzc2lvbjo6aHR0cENvb2tpZXNGb3JVUkwgY29uc3QpOgor
ICAgICAgICAoV2ViQ29yZTo6TmV0d29ya1N0b3JhZ2VTZXNzaW9uOjpjb29raWVzRm9yVVJMIGNv
bnN0KToKKyAgICAgICAgKFdlYkNvcmU6Ok5ldHdvcmtTdG9yYWdlU2Vzc2lvbjo6Y29va2llc0Zv
clNlc3Npb24gY29uc3QpOgorICAgICAgICAoV2ViQ29yZTo6TmV0d29ya1N0b3JhZ2VTZXNzaW9u
OjpnZXRSYXdDb29raWVzIGNvbnN0KToKKyAgICAgICAgKFdlYkNvcmU6Ok5ldHdvcmtTdG9yYWdl
U2Vzc2lvbjo6ZGVsZXRlQ29va2llIGNvbnN0KToKKyAgICAgICAgKFdlYkNvcmU6Ok5ldHdvcmtT
dG9yYWdlU2Vzc2lvbjo6Z2V0SG9zdG5hbWVzV2l0aENvb2tpZXMpOgorICAgICAgICAoV2ViQ29y
ZTo6TmV0d29ya1N0b3JhZ2VTZXNzaW9uOjpkZWxldGVDb29raWVzRm9ySG9zdG5hbWVzKToKKwog
MjAyMS0wMi0wMSAgU2FtIFdlaW5pZyAgPHdlaW5pZ0BhcHBsZS5jb20+CiAKICAgICAgICAgQXZv
aWQgdW5uZWNlc3NhcnkgY2hyb21hdGljIGFkYXB0YXRpb24gd2hlbiBjb252ZXJ0aW5nIGJldHdl
ZW4gY29sb3JzIHdpdGggdGhlIHNhbWUgd2hpdGUgcG9pbnQKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvTmV0d29ya1N0b3JhZ2VTZXNzaW9uLmggYi9Tb3VyY2Uv
V2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL05ldHdvcmtTdG9yYWdlU2Vzc2lvbi5oCmluZGV4IDll
YTVkMDFiMTJkMzU0YWRkM2E1NzEwZmZkZThjODg2MzVlNjcyMTYuLjhiMThmZjEyOTI1Nzg5Mzc5
MTVlYWE2YTQ5OTgzNzkxNzA1MTgzMDggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRm
b3JtL25ldHdvcmsvTmV0d29ya1N0b3JhZ2VTZXNzaW9uLmgKKysrIGIvU291cmNlL1dlYkNvcmUv
cGxhdGZvcm0vbmV0d29yay9OZXR3b3JrU3RvcmFnZVNlc3Npb24uaApAQCAtMjMyLDkgKzIzMiw5
IEBAIHByaXZhdGU6CiAjaWYgUExBVEZPUk0oQ09DT0EpCiAgICAgZW51bSBJbmNsdWRlSFRUUE9u
bHlPck5vdCB7IERvTm90SW5jbHVkZUhUVFBPbmx5LCBJbmNsdWRlSFRUUE9ubHkgfTsKICAgICBz
dGQ6OnBhaXI8U3RyaW5nLCBib29sPiBjb29raWVzRm9yU2Vzc2lvbihjb25zdCBVUkwmIGZpcnN0
UGFydHksIGNvbnN0IFNhbWVTaXRlSW5mbyYsIGNvbnN0IFVSTCYsIE9wdGlvbmFsPEZyYW1lSWRl
bnRpZmllcj4sIE9wdGlvbmFsPFBhZ2VJZGVudGlmaWVyPiwgSW5jbHVkZUhUVFBPbmx5T3JOb3Qs
IEluY2x1ZGVTZWN1cmVDb29raWVzLCBTaG91bGRBc2tJVFAsIFNob3VsZFJlbGF4VGhpcmRQYXJ0
eUNvb2tpZUJsb2NraW5nKSBjb25zdDsKLSAgICBOU0FycmF5ICpodHRwQ29va2llcyhDRkhUVFBD
b29raWVTdG9yYWdlUmVmKSBjb25zdDsKLSAgICBOU0FycmF5ICpodHRwQ29va2llc0ZvclVSTChD
RkhUVFBDb29raWVTdG9yYWdlUmVmLCBOU1VSTCAqZmlyc3RQYXJ0eSwgY29uc3QgT3B0aW9uYWw8
U2FtZVNpdGVJbmZvPiYsIE5TVVJMICopIGNvbnN0OwotICAgIE5TQXJyYXkgKmNvb2tpZXNGb3JV
UkwoY29uc3QgVVJMJiBmaXJzdFBhcnR5LCBjb25zdCBTYW1lU2l0ZUluZm8mLCBjb25zdCBVUkwm
LCBPcHRpb25hbDxGcmFtZUlkZW50aWZpZXI+LCBPcHRpb25hbDxQYWdlSWRlbnRpZmllcj4sIFNo
b3VsZEFza0lUUCwgU2hvdWxkUmVsYXhUaGlyZFBhcnR5Q29va2llQmxvY2tpbmcpIGNvbnN0Owor
ICAgIFJldGFpblB0cjxOU0FycmF5PiBodHRwQ29va2llcyhDRkhUVFBDb29raWVTdG9yYWdlUmVm
KSBjb25zdDsKKyAgICBSZXRhaW5QdHI8TlNBcnJheT4gaHR0cENvb2tpZXNGb3JVUkwoQ0ZIVFRQ
Q29va2llU3RvcmFnZVJlZiwgTlNVUkwgKmZpcnN0UGFydHksIGNvbnN0IE9wdGlvbmFsPFNhbWVT
aXRlSW5mbz4mLCBOU1VSTCAqKSBjb25zdDsKKyAgICBSZXRhaW5QdHI8TlNBcnJheT4gY29va2ll
c0ZvclVSTChjb25zdCBVUkwmIGZpcnN0UGFydHksIGNvbnN0IFNhbWVTaXRlSW5mbyYsIGNvbnN0
IFVSTCYsIE9wdGlvbmFsPEZyYW1lSWRlbnRpZmllcj4sIE9wdGlvbmFsPFBhZ2VJZGVudGlmaWVy
PiwgU2hvdWxkQXNrSVRQLCBTaG91bGRSZWxheFRoaXJkUGFydHlDb29raWVCbG9ja2luZykgY29u
c3Q7CiAgICAgdm9pZCBzZXRIVFRQQ29va2llc0ZvclVSTChDRkhUVFBDb29raWVTdG9yYWdlUmVm
LCBOU0FycmF5ICpjb29raWVzLCBOU1VSTCAqLCBOU1VSTCAqbWFpbkRvY3VtZW50VVJMLCBjb25z
dCBTYW1lU2l0ZUluZm8mKSBjb25zdDsKICAgICB2b2lkIGRlbGV0ZUhUVFBDb29raWUoQ0ZIVFRQ
Q29va2llU3RvcmFnZVJlZiwgTlNIVFRQQ29va2llICopIGNvbnN0OwogI2VuZGlmCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL2NvY29hL05ldHdvcmtTdG9yYWdl
U2Vzc2lvbkNvY29hLm1tIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9jb2NvYS9O
ZXR3b3JrU3RvcmFnZVNlc3Npb25Db2NvYS5tbQppbmRleCBjYTM5Zjc5NjExOGQzNDIyNDY3Yjg5
ZmQ0MzdlZjdmNDRlM2Y0MDE5Li42ZTJjYzZkMjQxNWQ0Y2YxZDNmZDlmZjBlNGIzOTJjZGZiMDgz
YjYxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL2NvY29hL05l
dHdvcmtTdG9yYWdlU2Vzc2lvbkNvY29hLm1tCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L25ldHdvcmsvY29jb2EvTmV0d29ya1N0b3JhZ2VTZXNzaW9uQ29jb2EubW0KQEAgLTIxMyw3ICsy
MTMsNyBAQCBDRlVSTFN0b3JhZ2VTZXNzaW9uUmVmIGNyZWF0ZVByaXZhdGVTdG9yYWdlU2Vzc2lv
bihDRlN0cmluZ1JlZiBpZGVudGlmaWVyLCBPcHRpbwogICAgIHJldHVybiBzdG9yYWdlU2Vzc2lv
bi5sZWFrUmVmKCk7CiB9CiAKLU5TQXJyYXkgKk5ldHdvcmtTdG9yYWdlU2Vzc2lvbjo6aHR0cENv
b2tpZXMoQ0ZIVFRQQ29va2llU3RvcmFnZVJlZiBjb29raWVTdG9yYWdlKSBjb25zdAorUmV0YWlu
UHRyPE5TQXJyYXk+IE5ldHdvcmtTdG9yYWdlU2Vzc2lvbjo6aHR0cENvb2tpZXMoQ0ZIVFRQQ29v
a2llU3RvcmFnZVJlZiBjb29raWVTdG9yYWdlKSBjb25zdAogewogICAgIEFTU0VSVChoYXNQcm9j
ZXNzUHJpdmlsZWdlKFByb2Nlc3NQcml2aWxlZ2U6OkNhbkFjY2Vzc1Jhd0Nvb2tpZXMpIHx8IG1f
aXNJbk1lbW9yeUNvb2tpZVN0b3JlKTsKICAgICBpZiAoIWNvb2tpZVN0b3JhZ2UpIHsKQEAgLTI0
OSw3ICsyNDksNyBAQCBzdGF0aWMgUmV0YWluUHRyPE5TRGljdGlvbmFyeT4gcG9saWN5UHJvcGVy
dGllcyhjb25zdCBTYW1lU2l0ZUluZm8mIHNhbWVTaXRlSW5mbwogfQogI2VuZGlmCiAKLXN0YXRp
YyBOU0FycmF5ICpjb29raWVzRm9yVVJMKE5TSFRUUENvb2tpZVN0b3JhZ2UgKnN0b3JhZ2UsIE5T
VVJMICp1cmwsIE5TVVJMICptYWluRG9jdW1lbnRVUkwsIGNvbnN0IE9wdGlvbmFsPFNhbWVTaXRl
SW5mbz4mIHNhbWVTaXRlSW5mbywgTlNTdHJpbmcgKnBhcnRpdGlvbiA9IG51bGxwdHIpCitzdGF0
aWMgUmV0YWluUHRyPE5TQXJyYXk+IGNvb2tpZXNGb3JVUkwoTlNIVFRQQ29va2llU3RvcmFnZSAq
c3RvcmFnZSwgTlNVUkwgKnVybCwgTlNVUkwgKm1haW5Eb2N1bWVudFVSTCwgY29uc3QgT3B0aW9u
YWw8U2FtZVNpdGVJbmZvPiYgc2FtZVNpdGVJbmZvLCBOU1N0cmluZyAqcGFydGl0aW9uID0gbnVs
bHB0cikKIHsKICAgICAvLyBUaGUgX2dldENvb2tpZXNGb3JVUkw6IG1ldGhvZCBjYWxscyB0aGUg
Y29tcGxldGlvbkhhbmRsZXIgc3luY2hyb25vdXNseS4gV2UgdXNlIE9wdGlvbmFsPD4gdG8gZW5z
dXJlIHRoaXMgaW52YXJpYW50LgogICAgIE9wdGlvbmFsPFJldGFpblB0cjxOU0FycmF5Pj4gY29v
a2llc1B0cjsKQEAgLTI2Nyw3ICsyNjcsNyBAQCBzdGF0aWMgTlNBcnJheSAqY29va2llc0ZvclVS
TChOU0hUVFBDb29raWVTdG9yYWdlICpzdG9yYWdlLCBOU1VSTCAqdXJsLCBOU1VSTCAqbQogICAg
IFVOVVNFRF9QQVJBTShzYW1lU2l0ZUluZm8pOwogI2VuZGlmCiAgICAgQVNTRVJUKCEhY29va2ll
c1B0cik7Ci0gICAgcmV0dXJuIGNvb2tpZXNQdHItPmF1dG9yZWxlYXNlKCk7CisgICAgcmV0dXJu
ICpjb29raWVzUHRyOwogfQogCiB2b2lkIE5ldHdvcmtTdG9yYWdlU2Vzc2lvbjo6c2V0SFRUUENv
b2tpZXNGb3JVUkwoQ0ZIVFRQQ29va2llU3RvcmFnZVJlZiBjb29raWVTdG9yYWdlLCBOU0FycmF5
ICpjb29raWVzLCBOU1VSTCAqdXJsLCBOU1VSTCAqbWFpbkRvY3VtZW50VVJMLCBjb25zdCBTYW1l
U2l0ZUluZm8mIHNhbWVTaXRlSW5mbykgY29uc3QKQEAgLTMwMSw3ICszMDEsNyBAQCB2b2lkIE5l
dHdvcmtTdG9yYWdlU2Vzc2lvbjo6c2V0SFRUUENvb2tpZXNGb3JVUkwoQ0ZIVFRQQ29va2llU3Rv
cmFnZVJlZiBjb29raWVTdAogI2VuZGlmCiB9CiAKLU5TQXJyYXkgKk5ldHdvcmtTdG9yYWdlU2Vz
c2lvbjo6aHR0cENvb2tpZXNGb3JVUkwoQ0ZIVFRQQ29va2llU3RvcmFnZVJlZiBjb29raWVTdG9y
YWdlLCBOU1VSTCAqZmlyc3RQYXJ0eSwgY29uc3QgT3B0aW9uYWw8U2FtZVNpdGVJbmZvPiYgc2Ft
ZVNpdGVJbmZvLCBOU1VSTCAqdXJsKSBjb25zdAorUmV0YWluUHRyPE5TQXJyYXk+IE5ldHdvcmtT
dG9yYWdlU2Vzc2lvbjo6aHR0cENvb2tpZXNGb3JVUkwoQ0ZIVFRQQ29va2llU3RvcmFnZVJlZiBj
b29raWVTdG9yYWdlLCBOU1VSTCAqZmlyc3RQYXJ0eSwgY29uc3QgT3B0aW9uYWw8U2FtZVNpdGVJ
bmZvPiYgc2FtZVNpdGVJbmZvLCBOU1VSTCAqdXJsKSBjb25zdAogewogICAgIEFTU0VSVChoYXNQ
cm9jZXNzUHJpdmlsZWdlKFByb2Nlc3NQcml2aWxlZ2U6OkNhbkFjY2Vzc1Jhd0Nvb2tpZXMpIHx8
IG1faXNJbk1lbW9yeUNvb2tpZVN0b3JlKTsKICAgICBpZiAoIWNvb2tpZVN0b3JhZ2UpIHsKQEAg
LTMyOSw3ICszMjksNyBAQCBOU0hUVFBDb29raWUgKk5ldHdvcmtTdG9yYWdlU2Vzc2lvbjo6Y2Fw
RXhwaXJ5T2ZQZXJzaXN0ZW50Q29va2llKE5TSFRUUENvb2tpZSAqYwogICAgIHJldHVybiBjb29r
aWU7CiB9CiAKLU5TQXJyYXkgKk5ldHdvcmtTdG9yYWdlU2Vzc2lvbjo6Y29va2llc0ZvclVSTChj
b25zdCBVUkwmIGZpcnN0UGFydHksIGNvbnN0IFNhbWVTaXRlSW5mbyYgc2FtZVNpdGVJbmZvLCBj
b25zdCBVUkwmIHVybCwgT3B0aW9uYWw8RnJhbWVJZGVudGlmaWVyPiBmcmFtZUlELCBPcHRpb25h
bDxQYWdlSWRlbnRpZmllcj4gcGFnZUlELCBTaG91bGRBc2tJVFAgc2hvdWxkQXNrSVRQLCBTaG91
bGRSZWxheFRoaXJkUGFydHlDb29raWVCbG9ja2luZyBzaG91bGRSZWxheFRoaXJkUGFydHlDb29r
aWVCbG9ja2luZykgY29uc3QKK1JldGFpblB0cjxOU0FycmF5PiBOZXR3b3JrU3RvcmFnZVNlc3Np
b246OmNvb2tpZXNGb3JVUkwoY29uc3QgVVJMJiBmaXJzdFBhcnR5LCBjb25zdCBTYW1lU2l0ZUlu
Zm8mIHNhbWVTaXRlSW5mbywgY29uc3QgVVJMJiB1cmwsIE9wdGlvbmFsPEZyYW1lSWRlbnRpZmll
cj4gZnJhbWVJRCwgT3B0aW9uYWw8UGFnZUlkZW50aWZpZXI+IHBhZ2VJRCwgU2hvdWxkQXNrSVRQ
IHNob3VsZEFza0lUUCwgU2hvdWxkUmVsYXhUaGlyZFBhcnR5Q29va2llQmxvY2tpbmcgc2hvdWxk
UmVsYXhUaGlyZFBhcnR5Q29va2llQmxvY2tpbmcpIGNvbnN0CiB7CiAjaWYgRU5BQkxFKFJFU09V
UkNFX0xPQURfU1RBVElTVElDUykKICAgICBpZiAoc2hvdWxkQXNrSVRQID09IFNob3VsZEFza0lU
UDo6WWVzICYmIHNob3VsZEJsb2NrQ29va2llcyhmaXJzdFBhcnR5LCB1cmwsIGZyYW1lSUQsIHBh
Z2VJRCwgc2hvdWxkUmVsYXhUaGlyZFBhcnR5Q29va2llQmxvY2tpbmcpKQpAQCAtMzQ4LDEzICsz
NDgsMTMgQEAgc3RkOjpwYWlyPFN0cmluZywgYm9vbD4gTmV0d29ya1N0b3JhZ2VTZXNzaW9uOjpj
b29raWVzRm9yU2Vzc2lvbihjb25zdCBVUkwmIGZpcnMKIAogICAgIEJFR0lOX0JMT0NLX09CSkNf
RVhDRVBUSU9OUwogCi0gICAgTlNBcnJheSAqY29va2llcyA9IGNvb2tpZXNGb3JVUkwoZmlyc3RQ
YXJ0eSwgc2FtZVNpdGVJbmZvLCB1cmwsIGZyYW1lSUQsIHBhZ2VJRCwgc2hvdWxkQXNrSVRQLCBz
aG91bGRSZWxheFRoaXJkUGFydHlDb29raWVCbG9ja2luZyk7Ci0gICAgaWYgKCFbY29va2llcyBj
b3VudF0pCisgICAgUmV0YWluUHRyPE5TQXJyYXk+IGNvb2tpZXMgPSBjb29raWVzRm9yVVJMKGZp
cnN0UGFydHksIHNhbWVTaXRlSW5mbywgdXJsLCBmcmFtZUlELCBwYWdlSUQsIHNob3VsZEFza0lU
UCwgc2hvdWxkUmVsYXhUaGlyZFBhcnR5Q29va2llQmxvY2tpbmcpOworICAgIGlmICghY29va2ll
cyB8fCAhW2Nvb2tpZXMgY291bnRdKQogICAgICAgICByZXR1cm4geyBTdHJpbmcoKSwgZmFsc2Ug
fTsgLy8gUmV0dXJuIGEgbnVsbCBzdHJpbmcsIG5vdCBhbiBlbXB0eSBvbmUgdGhhdCBTdHJpbmdC
dWlsZGVyIHdvdWxkIGNyZWF0ZSBiZWxvdy4KIAogICAgIFN0cmluZ0J1aWxkZXIgY29va2llc0J1
aWxkZXI7CiAgICAgYm9vbCBkaWRBY2Nlc3NTZWN1cmVDb29raWVzID0gZmFsc2U7Ci0gICAgZm9y
IChOU0hUVFBDb29raWUgKmNvb2tpZSBpbiBjb29raWVzKSB7CisgICAgZm9yIChOU0hUVFBDb29r
aWUgKmNvb2tpZSBpbiBjb29raWVzLmdldCgpKSB7CiAgICAgICAgIGlmICghW1tjb29raWUgbmFt
ZV0gbGVuZ3RoXSkKICAgICAgICAgICAgIGNvbnRpbnVlOwogCkBAIC01MDEsNyArNTAxLDcgQEAg
Ym9vbCBOZXR3b3JrU3RvcmFnZVNlc3Npb246OmdldFJhd0Nvb2tpZXMoY29uc3QgVVJMJiBmaXJz
dFBhcnR5LCBjb25zdCBTYW1lU2l0ZUkKICAgICByYXdDb29raWVzLmNsZWFyKCk7CiAgICAgQkVH
SU5fQkxPQ0tfT0JKQ19FWENFUFRJT05TCiAKLSAgICBOU0FycmF5ICpjb29raWVzID0gY29va2ll
c0ZvclVSTChmaXJzdFBhcnR5LCBzYW1lU2l0ZUluZm8sIHVybCwgZnJhbWVJRCwgcGFnZUlELCBz
aG91bGRBc2tJVFAsIHNob3VsZFJlbGF4VGhpcmRQYXJ0eUNvb2tpZUJsb2NraW5nKTsKKyAgICBS
ZXRhaW5QdHI8TlNBcnJheT4gY29va2llcyA9IGNvb2tpZXNGb3JVUkwoZmlyc3RQYXJ0eSwgc2Ft
ZVNpdGVJbmZvLCB1cmwsIGZyYW1lSUQsIHBhZ2VJRCwgc2hvdWxkQXNrSVRQLCBzaG91bGRSZWxh
eFRoaXJkUGFydHlDb29raWVCbG9ja2luZyk7CiAgICAgTlNVSW50ZWdlciBjb3VudCA9IFtjb29r
aWVzIGNvdW50XTsKICAgICByYXdDb29raWVzLnJlc2VydmVDYXBhY2l0eShjb3VudCk7CiAgICAg
Zm9yIChOU1VJbnRlZ2VyIGkgPSAwOyBpIDwgY291bnQ7ICsraSkgewpAQCAtNTIwLDcgKzUyMCw3
IEBAIHZvaWQgTmV0d29ya1N0b3JhZ2VTZXNzaW9uOjpkZWxldGVDb29raWUoY29uc3QgVVJMJiB1
cmwsIGNvbnN0IFN0cmluZyYgY29va2llTmFtCiAgICAgQkVHSU5fQkxPQ0tfT0JKQ19FWENFUFRJ
T05TCiAKICAgICBSZXRhaW5QdHI8Q0ZIVFRQQ29va2llU3RvcmFnZVJlZj4gY29va2llU3RvcmFn
ZSA9IHRoaXMtPmNvb2tpZVN0b3JhZ2UoKTsKLSAgICBOU0FycmF5ICpjb29raWVzID0gaHR0cENv
b2tpZXNGb3JVUkwoY29va2llU3RvcmFnZS5nZXQoKSwgbmlsLCBXVEY6Om51bGxvcHQsIHVybCk7
CisgICAgUmV0YWluUHRyPE5TQXJyYXk+IGNvb2tpZXMgPSBodHRwQ29va2llc0ZvclVSTChjb29r
aWVTdG9yYWdlLmdldCgpLCBuaWwsIFdURjo6bnVsbG9wdCwgdXJsKTsKIAogICAgIE5TU3RyaW5n
ICpjb29raWVOYW1lU3RyaW5nID0gY29va2llTmFtZTsKIApAQCAtNTM4LDkgKzUzOCw5IEBAIHZv
aWQgTmV0d29ya1N0b3JhZ2VTZXNzaW9uOjpnZXRIb3N0bmFtZXNXaXRoQ29va2llcyhIYXNoU2V0
PFN0cmluZz4mIGhvc3RuYW1lcykKIHsKICAgICBCRUdJTl9CTE9DS19PQkpDX0VYQ0VQVElPTlMK
IAotICAgIE5TQXJyYXkgKmNvb2tpZXMgPSBodHRwQ29va2llcyhjb29raWVTdG9yYWdlKCkuZ2V0
KCkpOworICAgIFJldGFpblB0cjxOU0FycmF5PiBjb29raWVzID0gaHR0cENvb2tpZXMoY29va2ll
U3RvcmFnZSgpLmdldCgpKTsKICAgICAKLSAgICBmb3IgKE5TSFRUUENvb2tpZSogY29va2llIGlu
IGNvb2tpZXMpIHsKKyAgICBmb3IgKE5TSFRUUENvb2tpZSogY29va2llIGluIGNvb2tpZXMuZ2V0
KCkpIHsKICAgICAgICAgaWYgKE5TU3RyaW5nICpkb21haW4gPSBbY29va2llIGRvbWFpbl0pCiAg
ICAgICAgICAgICBob3N0bmFtZXMuYWRkKGRvbWFpbik7CiAgICAgICAgIGVsc2UKQEAgLTU2Nywx
MiArNTY3LDEyIEBAIHZvaWQgTmV0d29ya1N0b3JhZ2VTZXNzaW9uOjpkZWxldGVDb29raWVzRm9y
SG9zdG5hbWVzKGNvbnN0IFZlY3RvcjxTdHJpbmc+JiBob3N0CiAgICAgQkVHSU5fQkxPQ0tfT0JK
Q19FWENFUFRJT05TCiAKICAgICBSZXRhaW5QdHI8Q0ZIVFRQQ29va2llU3RvcmFnZVJlZj4gY29v
a2llU3RvcmFnZSA9IHRoaXMtPmNvb2tpZVN0b3JhZ2UoKTsKLSAgICBOU0FycmF5ICpjb29raWVz
ID0gaHR0cENvb2tpZXMoY29va2llU3RvcmFnZS5nZXQoKSk7CisgICAgUmV0YWluUHRyPE5TQXJy
YXk+IGNvb2tpZXMgPSBodHRwQ29va2llcyhjb29raWVTdG9yYWdlLmdldCgpKTsKICAgICBpZiAo
IWNvb2tpZXMpCiAgICAgICAgIHJldHVybjsKIAogICAgIEhhc2hNYXA8U3RyaW5nLCBWZWN0b3I8
UmV0YWluUHRyPE5TSFRUUENvb2tpZT4+PiBjb29raWVzQnlEb21haW47Ci0gICAgZm9yIChOU0hU
VFBDb29raWUgKmNvb2tpZSBpbiBjb29raWVzKSB7CisgICAgZm9yIChOU0hUVFBDb29raWUgKmNv
b2tpZSBpbiBjb29raWVzLmdldCgpKSB7CiAgICAgICAgIGlmICghY29va2llLmRvbWFpbiB8fCAo
aW5jbHVkZUh0dHBPbmx5Q29va2llcyA9PSBJbmNsdWRlSHR0cE9ubHlDb29raWVzOjpObyAmJiBj
b29raWUuaXNIVFRQT25seSkpCiAgICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgY29va2ll
c0J5RG9tYWluLmVuc3VyZShjb29raWUuZG9tYWluLCBbXSB7Cg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>418934</attachid>
            <date>2021-02-01 15:16:56 -0800</date>
            <delta_ts>2021-02-02 09:07:41 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-221227-20210201151656.patch</filename>
            <type>text/plain</type>
            <size>9719</size>
            <attacher name="Chris Dumez">cdumez</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjcyMTQ5CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNDhlYjFmYmE3NmQ2Zjcy
NWI1ZTU4MWY0Y2ViY2FhNDNiM2RiNmQ2Zi4uNWRmMjhmODJkNTgxZDFlZDU0NWQ3ODhhYjcwYzM4
NDY4NDY0NzBmNSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI2IEBACisyMDIxLTAyLTAxICBDaHJp
cyBEdW1leiAgPGNkdW1lekBhcHBsZS5jb20+CisKKyAgICAgICAgQ3Jhc2ggdW5kZXIgTmV0d29y
a1N0b3JhZ2VTZXNzaW9uOjpjb29raWVzRm9yU2Vzc2lvbigpCisgICAgICAgIGh0dHBzOi8vYnVn
cy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMjEyMjcKKyAgICAgICAgPHJkYXI6Ly83MTk3
NTAwOD4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBS
ZXRhaW4gTlNBcnJheSBvZiBjb29raWVzIGluIE5ldHdvcmtTdG9yYWdlU2Vzc2lvbjo6Y29va2ll
c0ZvclNlc3Npb24oKSBmb3IgY2xlYXJlciBsaWZldGltZQorICAgICAgICBtYW5hZ2VtZW50LiBU
aGlzIGlzIGEgc3BlY3VsYXRpdmUgZml4IGZvciA8cmRhcjovLzcxOTc1MDA4Pi4KKworICAgICAg
ICAqIHBsYXRmb3JtL25ldHdvcmsvTmV0d29ya1N0b3JhZ2VTZXNzaW9uLmg6CisgICAgICAgICog
cGxhdGZvcm0vbmV0d29yay9jb2NvYS9OZXR3b3JrU3RvcmFnZVNlc3Npb25Db2NvYS5tbToKKyAg
ICAgICAgKFdlYkNvcmU6Ok5ldHdvcmtTdG9yYWdlU2Vzc2lvbjo6aHR0cENvb2tpZXMgY29uc3Qp
OgorICAgICAgICAoV2ViQ29yZTo6Y29va2llc0ZvclVSTCk6CisgICAgICAgIChXZWJDb3JlOjpO
ZXR3b3JrU3RvcmFnZVNlc3Npb246Omh0dHBDb29raWVzRm9yVVJMIGNvbnN0KToKKyAgICAgICAg
KFdlYkNvcmU6Ok5ldHdvcmtTdG9yYWdlU2Vzc2lvbjo6Y29va2llc0ZvclVSTCBjb25zdCk6Cisg
ICAgICAgIChXZWJDb3JlOjpOZXR3b3JrU3RvcmFnZVNlc3Npb246OmNvb2tpZXNGb3JTZXNzaW9u
IGNvbnN0KToKKyAgICAgICAgKFdlYkNvcmU6Ok5ldHdvcmtTdG9yYWdlU2Vzc2lvbjo6Z2V0UmF3
Q29va2llcyBjb25zdCk6CisgICAgICAgIChXZWJDb3JlOjpOZXR3b3JrU3RvcmFnZVNlc3Npb246
OmRlbGV0ZUNvb2tpZSBjb25zdCk6CisgICAgICAgIChXZWJDb3JlOjpOZXR3b3JrU3RvcmFnZVNl
c3Npb246OmdldEhvc3RuYW1lc1dpdGhDb29raWVzKToKKyAgICAgICAgKFdlYkNvcmU6Ok5ldHdv
cmtTdG9yYWdlU2Vzc2lvbjo6ZGVsZXRlQ29va2llc0Zvckhvc3RuYW1lcyk6CisKIDIwMjEtMDIt
MDEgIFNhbSBXZWluaWcgIDx3ZWluaWdAYXBwbGUuY29tPgogCiAgICAgICAgIEF2b2lkIHVubmVj
ZXNzYXJ5IGNocm9tYXRpYyBhZGFwdGF0aW9uIHdoZW4gY29udmVydGluZyBiZXR3ZWVuIGNvbG9y
cyB3aXRoIHRoZSBzYW1lIHdoaXRlIHBvaW50CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9w
bGF0Zm9ybS9uZXR3b3JrL05ldHdvcmtTdG9yYWdlU2Vzc2lvbi5oIGIvU291cmNlL1dlYkNvcmUv
cGxhdGZvcm0vbmV0d29yay9OZXR3b3JrU3RvcmFnZVNlc3Npb24uaAppbmRleCA5ZWE1ZDAxYjEy
ZDM1NGFkZDNhNTcxMGZmZGU4Yzg4NjM1ZTY3MjE2Li44YjE4ZmYxMjkyNTc4OTM3OTE1ZWFhNmE0
OTk4Mzc5MTcwNTE4MzA4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3
b3JrL05ldHdvcmtTdG9yYWdlU2Vzc2lvbi5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L25ldHdvcmsvTmV0d29ya1N0b3JhZ2VTZXNzaW9uLmgKQEAgLTIzMiw5ICsyMzIsOSBAQCBwcml2
YXRlOgogI2lmIFBMQVRGT1JNKENPQ09BKQogICAgIGVudW0gSW5jbHVkZUhUVFBPbmx5T3JOb3Qg
eyBEb05vdEluY2x1ZGVIVFRQT25seSwgSW5jbHVkZUhUVFBPbmx5IH07CiAgICAgc3RkOjpwYWly
PFN0cmluZywgYm9vbD4gY29va2llc0ZvclNlc3Npb24oY29uc3QgVVJMJiBmaXJzdFBhcnR5LCBj
b25zdCBTYW1lU2l0ZUluZm8mLCBjb25zdCBVUkwmLCBPcHRpb25hbDxGcmFtZUlkZW50aWZpZXI+
LCBPcHRpb25hbDxQYWdlSWRlbnRpZmllcj4sIEluY2x1ZGVIVFRQT25seU9yTm90LCBJbmNsdWRl
U2VjdXJlQ29va2llcywgU2hvdWxkQXNrSVRQLCBTaG91bGRSZWxheFRoaXJkUGFydHlDb29raWVC
bG9ja2luZykgY29uc3Q7Ci0gICAgTlNBcnJheSAqaHR0cENvb2tpZXMoQ0ZIVFRQQ29va2llU3Rv
cmFnZVJlZikgY29uc3Q7Ci0gICAgTlNBcnJheSAqaHR0cENvb2tpZXNGb3JVUkwoQ0ZIVFRQQ29v
a2llU3RvcmFnZVJlZiwgTlNVUkwgKmZpcnN0UGFydHksIGNvbnN0IE9wdGlvbmFsPFNhbWVTaXRl
SW5mbz4mLCBOU1VSTCAqKSBjb25zdDsKLSAgICBOU0FycmF5ICpjb29raWVzRm9yVVJMKGNvbnN0
IFVSTCYgZmlyc3RQYXJ0eSwgY29uc3QgU2FtZVNpdGVJbmZvJiwgY29uc3QgVVJMJiwgT3B0aW9u
YWw8RnJhbWVJZGVudGlmaWVyPiwgT3B0aW9uYWw8UGFnZUlkZW50aWZpZXI+LCBTaG91bGRBc2tJ
VFAsIFNob3VsZFJlbGF4VGhpcmRQYXJ0eUNvb2tpZUJsb2NraW5nKSBjb25zdDsKKyAgICBSZXRh
aW5QdHI8TlNBcnJheT4gaHR0cENvb2tpZXMoQ0ZIVFRQQ29va2llU3RvcmFnZVJlZikgY29uc3Q7
CisgICAgUmV0YWluUHRyPE5TQXJyYXk+IGh0dHBDb29raWVzRm9yVVJMKENGSFRUUENvb2tpZVN0
b3JhZ2VSZWYsIE5TVVJMICpmaXJzdFBhcnR5LCBjb25zdCBPcHRpb25hbDxTYW1lU2l0ZUluZm8+
JiwgTlNVUkwgKikgY29uc3Q7CisgICAgUmV0YWluUHRyPE5TQXJyYXk+IGNvb2tpZXNGb3JVUkwo
Y29uc3QgVVJMJiBmaXJzdFBhcnR5LCBjb25zdCBTYW1lU2l0ZUluZm8mLCBjb25zdCBVUkwmLCBP
cHRpb25hbDxGcmFtZUlkZW50aWZpZXI+LCBPcHRpb25hbDxQYWdlSWRlbnRpZmllcj4sIFNob3Vs
ZEFza0lUUCwgU2hvdWxkUmVsYXhUaGlyZFBhcnR5Q29va2llQmxvY2tpbmcpIGNvbnN0OwogICAg
IHZvaWQgc2V0SFRUUENvb2tpZXNGb3JVUkwoQ0ZIVFRQQ29va2llU3RvcmFnZVJlZiwgTlNBcnJh
eSAqY29va2llcywgTlNVUkwgKiwgTlNVUkwgKm1haW5Eb2N1bWVudFVSTCwgY29uc3QgU2FtZVNp
dGVJbmZvJikgY29uc3Q7CiAgICAgdm9pZCBkZWxldGVIVFRQQ29va2llKENGSFRUUENvb2tpZVN0
b3JhZ2VSZWYsIE5TSFRUUENvb2tpZSAqKSBjb25zdDsKICNlbmRpZgpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9jb2NvYS9OZXR3b3JrU3RvcmFnZVNlc3Npb25D
b2NvYS5tbSBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvY29jb2EvTmV0d29ya1N0
b3JhZ2VTZXNzaW9uQ29jb2EubW0KaW5kZXggY2EzOWY3OTYxMThkMzQyMjQ2N2I4OWZkNDM3ZWY3
ZjQ0ZTNmNDAxOS4uNmUyY2M2ZDI0MTVkNGNmMWQzZmQ5ZmYwZTRiMzkyY2RmYjA4M2I2MSAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9jb2NvYS9OZXR3b3JrU3Rv
cmFnZVNlc3Npb25Db2NvYS5tbQorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3Jr
L2NvY29hL05ldHdvcmtTdG9yYWdlU2Vzc2lvbkNvY29hLm1tCkBAIC0yMTMsNyArMjEzLDcgQEAg
Q0ZVUkxTdG9yYWdlU2Vzc2lvblJlZiBjcmVhdGVQcml2YXRlU3RvcmFnZVNlc3Npb24oQ0ZTdHJp
bmdSZWYgaWRlbnRpZmllciwgT3B0aW8KICAgICByZXR1cm4gc3RvcmFnZVNlc3Npb24ubGVha1Jl
ZigpOwogfQogCi1OU0FycmF5ICpOZXR3b3JrU3RvcmFnZVNlc3Npb246Omh0dHBDb29raWVzKENG
SFRUUENvb2tpZVN0b3JhZ2VSZWYgY29va2llU3RvcmFnZSkgY29uc3QKK1JldGFpblB0cjxOU0Fy
cmF5PiBOZXR3b3JrU3RvcmFnZVNlc3Npb246Omh0dHBDb29raWVzKENGSFRUUENvb2tpZVN0b3Jh
Z2VSZWYgY29va2llU3RvcmFnZSkgY29uc3QKIHsKICAgICBBU1NFUlQoaGFzUHJvY2Vzc1ByaXZp
bGVnZShQcm9jZXNzUHJpdmlsZWdlOjpDYW5BY2Nlc3NSYXdDb29raWVzKSB8fCBtX2lzSW5NZW1v
cnlDb29raWVTdG9yZSk7CiAgICAgaWYgKCFjb29raWVTdG9yYWdlKSB7CkBAIC0yNDksNyArMjQ5
LDcgQEAgc3RhdGljIFJldGFpblB0cjxOU0RpY3Rpb25hcnk+IHBvbGljeVByb3BlcnRpZXMoY29u
c3QgU2FtZVNpdGVJbmZvJiBzYW1lU2l0ZUluZm8KIH0KICNlbmRpZgogCi1zdGF0aWMgTlNBcnJh
eSAqY29va2llc0ZvclVSTChOU0hUVFBDb29raWVTdG9yYWdlICpzdG9yYWdlLCBOU1VSTCAqdXJs
LCBOU1VSTCAqbWFpbkRvY3VtZW50VVJMLCBjb25zdCBPcHRpb25hbDxTYW1lU2l0ZUluZm8+JiBz
YW1lU2l0ZUluZm8sIE5TU3RyaW5nICpwYXJ0aXRpb24gPSBudWxscHRyKQorc3RhdGljIFJldGFp
blB0cjxOU0FycmF5PiBjb29raWVzRm9yVVJMKE5TSFRUUENvb2tpZVN0b3JhZ2UgKnN0b3JhZ2Us
IE5TVVJMICp1cmwsIE5TVVJMICptYWluRG9jdW1lbnRVUkwsIGNvbnN0IE9wdGlvbmFsPFNhbWVT
aXRlSW5mbz4mIHNhbWVTaXRlSW5mbywgTlNTdHJpbmcgKnBhcnRpdGlvbiA9IG51bGxwdHIpCiB7
CiAgICAgLy8gVGhlIF9nZXRDb29raWVzRm9yVVJMOiBtZXRob2QgY2FsbHMgdGhlIGNvbXBsZXRp
b25IYW5kbGVyIHN5bmNocm9ub3VzbHkuIFdlIHVzZSBPcHRpb25hbDw+IHRvIGVuc3VyZSB0aGlz
IGludmFyaWFudC4KICAgICBPcHRpb25hbDxSZXRhaW5QdHI8TlNBcnJheT4+IGNvb2tpZXNQdHI7
CkBAIC0yNjcsNyArMjY3LDcgQEAgc3RhdGljIE5TQXJyYXkgKmNvb2tpZXNGb3JVUkwoTlNIVFRQ
Q29va2llU3RvcmFnZSAqc3RvcmFnZSwgTlNVUkwgKnVybCwgTlNVUkwgKm0KICAgICBVTlVTRURf
UEFSQU0oc2FtZVNpdGVJbmZvKTsKICNlbmRpZgogICAgIEFTU0VSVCghIWNvb2tpZXNQdHIpOwot
ICAgIHJldHVybiBjb29raWVzUHRyLT5hdXRvcmVsZWFzZSgpOworICAgIHJldHVybiAqY29va2ll
c1B0cjsKIH0KIAogdm9pZCBOZXR3b3JrU3RvcmFnZVNlc3Npb246OnNldEhUVFBDb29raWVzRm9y
VVJMKENGSFRUUENvb2tpZVN0b3JhZ2VSZWYgY29va2llU3RvcmFnZSwgTlNBcnJheSAqY29va2ll
cywgTlNVUkwgKnVybCwgTlNVUkwgKm1haW5Eb2N1bWVudFVSTCwgY29uc3QgU2FtZVNpdGVJbmZv
JiBzYW1lU2l0ZUluZm8pIGNvbnN0CkBAIC0zMDEsNyArMzAxLDcgQEAgdm9pZCBOZXR3b3JrU3Rv
cmFnZVNlc3Npb246OnNldEhUVFBDb29raWVzRm9yVVJMKENGSFRUUENvb2tpZVN0b3JhZ2VSZWYg
Y29va2llU3QKICNlbmRpZgogfQogCi1OU0FycmF5ICpOZXR3b3JrU3RvcmFnZVNlc3Npb246Omh0
dHBDb29raWVzRm9yVVJMKENGSFRUUENvb2tpZVN0b3JhZ2VSZWYgY29va2llU3RvcmFnZSwgTlNV
UkwgKmZpcnN0UGFydHksIGNvbnN0IE9wdGlvbmFsPFNhbWVTaXRlSW5mbz4mIHNhbWVTaXRlSW5m
bywgTlNVUkwgKnVybCkgY29uc3QKK1JldGFpblB0cjxOU0FycmF5PiBOZXR3b3JrU3RvcmFnZVNl
c3Npb246Omh0dHBDb29raWVzRm9yVVJMKENGSFRUUENvb2tpZVN0b3JhZ2VSZWYgY29va2llU3Rv
cmFnZSwgTlNVUkwgKmZpcnN0UGFydHksIGNvbnN0IE9wdGlvbmFsPFNhbWVTaXRlSW5mbz4mIHNh
bWVTaXRlSW5mbywgTlNVUkwgKnVybCkgY29uc3QKIHsKICAgICBBU1NFUlQoaGFzUHJvY2Vzc1By
aXZpbGVnZShQcm9jZXNzUHJpdmlsZWdlOjpDYW5BY2Nlc3NSYXdDb29raWVzKSB8fCBtX2lzSW5N
ZW1vcnlDb29raWVTdG9yZSk7CiAgICAgaWYgKCFjb29raWVTdG9yYWdlKSB7CkBAIC0zMjksNyAr
MzI5LDcgQEAgTlNIVFRQQ29va2llICpOZXR3b3JrU3RvcmFnZVNlc3Npb246OmNhcEV4cGlyeU9m
UGVyc2lzdGVudENvb2tpZShOU0hUVFBDb29raWUgKmMKICAgICByZXR1cm4gY29va2llOwogfQog
Ci1OU0FycmF5ICpOZXR3b3JrU3RvcmFnZVNlc3Npb246OmNvb2tpZXNGb3JVUkwoY29uc3QgVVJM
JiBmaXJzdFBhcnR5LCBjb25zdCBTYW1lU2l0ZUluZm8mIHNhbWVTaXRlSW5mbywgY29uc3QgVVJM
JiB1cmwsIE9wdGlvbmFsPEZyYW1lSWRlbnRpZmllcj4gZnJhbWVJRCwgT3B0aW9uYWw8UGFnZUlk
ZW50aWZpZXI+IHBhZ2VJRCwgU2hvdWxkQXNrSVRQIHNob3VsZEFza0lUUCwgU2hvdWxkUmVsYXhU
aGlyZFBhcnR5Q29va2llQmxvY2tpbmcgc2hvdWxkUmVsYXhUaGlyZFBhcnR5Q29va2llQmxvY2tp
bmcpIGNvbnN0CitSZXRhaW5QdHI8TlNBcnJheT4gTmV0d29ya1N0b3JhZ2VTZXNzaW9uOjpjb29r
aWVzRm9yVVJMKGNvbnN0IFVSTCYgZmlyc3RQYXJ0eSwgY29uc3QgU2FtZVNpdGVJbmZvJiBzYW1l
U2l0ZUluZm8sIGNvbnN0IFVSTCYgdXJsLCBPcHRpb25hbDxGcmFtZUlkZW50aWZpZXI+IGZyYW1l
SUQsIE9wdGlvbmFsPFBhZ2VJZGVudGlmaWVyPiBwYWdlSUQsIFNob3VsZEFza0lUUCBzaG91bGRB
c2tJVFAsIFNob3VsZFJlbGF4VGhpcmRQYXJ0eUNvb2tpZUJsb2NraW5nIHNob3VsZFJlbGF4VGhp
cmRQYXJ0eUNvb2tpZUJsb2NraW5nKSBjb25zdAogewogI2lmIEVOQUJMRShSRVNPVVJDRV9MT0FE
X1NUQVRJU1RJQ1MpCiAgICAgaWYgKHNob3VsZEFza0lUUCA9PSBTaG91bGRBc2tJVFA6OlllcyAm
JiBzaG91bGRCbG9ja0Nvb2tpZXMoZmlyc3RQYXJ0eSwgdXJsLCBmcmFtZUlELCBwYWdlSUQsIHNo
b3VsZFJlbGF4VGhpcmRQYXJ0eUNvb2tpZUJsb2NraW5nKSkKQEAgLTM0OCwxMyArMzQ4LDEzIEBA
IHN0ZDo6cGFpcjxTdHJpbmcsIGJvb2w+IE5ldHdvcmtTdG9yYWdlU2Vzc2lvbjo6Y29va2llc0Zv
clNlc3Npb24oY29uc3QgVVJMJiBmaXJzCiAKICAgICBCRUdJTl9CTE9DS19PQkpDX0VYQ0VQVElP
TlMKIAotICAgIE5TQXJyYXkgKmNvb2tpZXMgPSBjb29raWVzRm9yVVJMKGZpcnN0UGFydHksIHNh
bWVTaXRlSW5mbywgdXJsLCBmcmFtZUlELCBwYWdlSUQsIHNob3VsZEFza0lUUCwgc2hvdWxkUmVs
YXhUaGlyZFBhcnR5Q29va2llQmxvY2tpbmcpOwotICAgIGlmICghW2Nvb2tpZXMgY291bnRdKQor
ICAgIFJldGFpblB0cjxOU0FycmF5PiBjb29raWVzID0gY29va2llc0ZvclVSTChmaXJzdFBhcnR5
LCBzYW1lU2l0ZUluZm8sIHVybCwgZnJhbWVJRCwgcGFnZUlELCBzaG91bGRBc2tJVFAsIHNob3Vs
ZFJlbGF4VGhpcmRQYXJ0eUNvb2tpZUJsb2NraW5nKTsKKyAgICBpZiAoIWNvb2tpZXMgfHwgIVtj
b29raWVzIGNvdW50XSkKICAgICAgICAgcmV0dXJuIHsgU3RyaW5nKCksIGZhbHNlIH07IC8vIFJl
dHVybiBhIG51bGwgc3RyaW5nLCBub3QgYW4gZW1wdHkgb25lIHRoYXQgU3RyaW5nQnVpbGRlciB3
b3VsZCBjcmVhdGUgYmVsb3cuCiAKICAgICBTdHJpbmdCdWlsZGVyIGNvb2tpZXNCdWlsZGVyOwog
ICAgIGJvb2wgZGlkQWNjZXNzU2VjdXJlQ29va2llcyA9IGZhbHNlOwotICAgIGZvciAoTlNIVFRQ
Q29va2llICpjb29raWUgaW4gY29va2llcykgeworICAgIGZvciAoTlNIVFRQQ29va2llICpjb29r
aWUgaW4gY29va2llcy5nZXQoKSkgewogICAgICAgICBpZiAoIVtbY29va2llIG5hbWVdIGxlbmd0
aF0pCiAgICAgICAgICAgICBjb250aW51ZTsKIApAQCAtNTAxLDcgKzUwMSw3IEBAIGJvb2wgTmV0
d29ya1N0b3JhZ2VTZXNzaW9uOjpnZXRSYXdDb29raWVzKGNvbnN0IFVSTCYgZmlyc3RQYXJ0eSwg
Y29uc3QgU2FtZVNpdGVJCiAgICAgcmF3Q29va2llcy5jbGVhcigpOwogICAgIEJFR0lOX0JMT0NL
X09CSkNfRVhDRVBUSU9OUwogCi0gICAgTlNBcnJheSAqY29va2llcyA9IGNvb2tpZXNGb3JVUkwo
Zmlyc3RQYXJ0eSwgc2FtZVNpdGVJbmZvLCB1cmwsIGZyYW1lSUQsIHBhZ2VJRCwgc2hvdWxkQXNr
SVRQLCBzaG91bGRSZWxheFRoaXJkUGFydHlDb29raWVCbG9ja2luZyk7CisgICAgUmV0YWluUHRy
PE5TQXJyYXk+IGNvb2tpZXMgPSBjb29raWVzRm9yVVJMKGZpcnN0UGFydHksIHNhbWVTaXRlSW5m
bywgdXJsLCBmcmFtZUlELCBwYWdlSUQsIHNob3VsZEFza0lUUCwgc2hvdWxkUmVsYXhUaGlyZFBh
cnR5Q29va2llQmxvY2tpbmcpOwogICAgIE5TVUludGVnZXIgY291bnQgPSBbY29va2llcyBjb3Vu
dF07CiAgICAgcmF3Q29va2llcy5yZXNlcnZlQ2FwYWNpdHkoY291bnQpOwogICAgIGZvciAoTlNV
SW50ZWdlciBpID0gMDsgaSA8IGNvdW50OyArK2kpIHsKQEAgLTUyMCw3ICs1MjAsNyBAQCB2b2lk
IE5ldHdvcmtTdG9yYWdlU2Vzc2lvbjo6ZGVsZXRlQ29va2llKGNvbnN0IFVSTCYgdXJsLCBjb25z
dCBTdHJpbmcmIGNvb2tpZU5hbQogICAgIEJFR0lOX0JMT0NLX09CSkNfRVhDRVBUSU9OUwogCiAg
ICAgUmV0YWluUHRyPENGSFRUUENvb2tpZVN0b3JhZ2VSZWY+IGNvb2tpZVN0b3JhZ2UgPSB0aGlz
LT5jb29raWVTdG9yYWdlKCk7Ci0gICAgTlNBcnJheSAqY29va2llcyA9IGh0dHBDb29raWVzRm9y
VVJMKGNvb2tpZVN0b3JhZ2UuZ2V0KCksIG5pbCwgV1RGOjpudWxsb3B0LCB1cmwpOworICAgIFJl
dGFpblB0cjxOU0FycmF5PiBjb29raWVzID0gaHR0cENvb2tpZXNGb3JVUkwoY29va2llU3RvcmFn
ZS5nZXQoKSwgbmlsLCBXVEY6Om51bGxvcHQsIHVybCk7CiAKICAgICBOU1N0cmluZyAqY29va2ll
TmFtZVN0cmluZyA9IGNvb2tpZU5hbWU7CiAKQEAgLTUzOCw5ICs1MzgsOSBAQCB2b2lkIE5ldHdv
cmtTdG9yYWdlU2Vzc2lvbjo6Z2V0SG9zdG5hbWVzV2l0aENvb2tpZXMoSGFzaFNldDxTdHJpbmc+
JiBob3N0bmFtZXMpCiB7CiAgICAgQkVHSU5fQkxPQ0tfT0JKQ19FWENFUFRJT05TCiAKLSAgICBO
U0FycmF5ICpjb29raWVzID0gaHR0cENvb2tpZXMoY29va2llU3RvcmFnZSgpLmdldCgpKTsKKyAg
ICBSZXRhaW5QdHI8TlNBcnJheT4gY29va2llcyA9IGh0dHBDb29raWVzKGNvb2tpZVN0b3JhZ2Uo
KS5nZXQoKSk7CiAgICAgCi0gICAgZm9yIChOU0hUVFBDb29raWUqIGNvb2tpZSBpbiBjb29raWVz
KSB7CisgICAgZm9yIChOU0hUVFBDb29raWUqIGNvb2tpZSBpbiBjb29raWVzLmdldCgpKSB7CiAg
ICAgICAgIGlmIChOU1N0cmluZyAqZG9tYWluID0gW2Nvb2tpZSBkb21haW5dKQogICAgICAgICAg
ICAgaG9zdG5hbWVzLmFkZChkb21haW4pOwogICAgICAgICBlbHNlCkBAIC01NjcsMTIgKzU2Nywx
MiBAQCB2b2lkIE5ldHdvcmtTdG9yYWdlU2Vzc2lvbjo6ZGVsZXRlQ29va2llc0Zvckhvc3RuYW1l
cyhjb25zdCBWZWN0b3I8U3RyaW5nPiYgaG9zdAogICAgIEJFR0lOX0JMT0NLX09CSkNfRVhDRVBU
SU9OUwogCiAgICAgUmV0YWluUHRyPENGSFRUUENvb2tpZVN0b3JhZ2VSZWY+IGNvb2tpZVN0b3Jh
Z2UgPSB0aGlzLT5jb29raWVTdG9yYWdlKCk7Ci0gICAgTlNBcnJheSAqY29va2llcyA9IGh0dHBD
b29raWVzKGNvb2tpZVN0b3JhZ2UuZ2V0KCkpOworICAgIFJldGFpblB0cjxOU0FycmF5PiBjb29r
aWVzID0gaHR0cENvb2tpZXMoY29va2llU3RvcmFnZS5nZXQoKSk7CiAgICAgaWYgKCFjb29raWVz
KQogICAgICAgICByZXR1cm47CiAKICAgICBIYXNoTWFwPFN0cmluZywgVmVjdG9yPFJldGFpblB0
cjxOU0hUVFBDb29raWU+Pj4gY29va2llc0J5RG9tYWluOwotICAgIGZvciAoTlNIVFRQQ29va2ll
ICpjb29raWUgaW4gY29va2llcykgeworICAgIGZvciAoTlNIVFRQQ29va2llICpjb29raWUgaW4g
Y29va2llcy5nZXQoKSkgewogICAgICAgICBpZiAoIWNvb2tpZS5kb21haW4gfHwgKGluY2x1ZGVI
dHRwT25seUNvb2tpZXMgPT0gSW5jbHVkZUh0dHBPbmx5Q29va2llczo6Tm8gJiYgY29va2llLmlz
SFRUUE9ubHkpKQogICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgIGNvb2tpZXNCeURvbWFp
bi5lbnN1cmUoY29va2llLmRvbWFpbiwgW10gewo=
</data>

          </attachment>
      

    </bug>

</bugzilla>