<?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>234404</bug_id>
          
          <creation_ts>2021-12-16 13:48:34 -0800</creation_ts>
          <short_desc>WebsiteDataStore::excludeDirectoryFromBackup should set attribute for existing directories</short_desc>
          <delta_ts>2021-12-22 15:57:19 -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>WebCore Misc.</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>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Sihui Liu">sihui_liu</reporter>
          <assigned_to name="Sihui Liu">sihui_liu</assigned_to>
          <cc>achristensen</cc>
    
    <cc>beidson</cc>
    
    <cc>benjamin</cc>
    
    <cc>cdumez</cc>
    
    <cc>cmarcelo</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>ggaren</cc>
    
    <cc>webkit-bug-importer</cc>
    
    <cc>youennf</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1824869</commentid>
    <comment_count>0</comment_count>
    <who name="Sihui Liu">sihui_liu</who>
    <bug_when>2021-12-16 13:48:34 -0800</bug_when>
    <thetext>...</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1824871</commentid>
    <comment_count>1</comment_count>
      <attachid>447390</attachid>
    <who name="Sihui Liu">sihui_liu</who>
    <bug_when>2021-12-16 13:54:12 -0800</bug_when>
    <thetext>Created attachment 447390
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1824874</commentid>
    <comment_count>2</comment_count>
      <attachid>447392</attachid>
    <who name="Sihui Liu">sihui_liu</who>
    <bug_when>2021-12-16 13:59:42 -0800</bug_when>
    <thetext>Created attachment 447392
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1824894</commentid>
    <comment_count>3</comment_count>
    <who name="Geoffrey Garen">ggaren</who>
    <bug_when>2021-12-16 15:31:43 -0800</bug_when>
    <thetext>What&apos;s the use case where the directory already exists but is not excluded? Can we add a test for that case?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1824904</commentid>
    <comment_count>4</comment_count>
    <who name="Sihui Liu">sihui_liu</who>
    <bug_when>2021-12-16 16:11:27 -0800</bug_when>
    <thetext>(In reply to Geoffrey Garen from comment #3)
&gt; What&apos;s the use case where the directory already exists but is not excluded?
&gt; Can we add a test for that case?

We currently create storage directories when we decide the location, for example see WebsiteDataStore::defaultLocalStorageDirectory() and WebsiteDataStore::websiteDataDirectoryFileSystemRepresentation in WebsiteDataStoreCocoa.mm.

That means when we call excludeDirectoryFromBackup, the directory should already exist (WebsiteDataStore parameters should be decided before that).

I can try creating an API test.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1825118</commentid>
    <comment_count>5</comment_count>
      <attachid>447459</attachid>
    <who name="Sihui Liu">sihui_liu</who>
    <bug_when>2021-12-17 10:20:32 -0800</bug_when>
    <thetext>Created attachment 447459
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1825687</commentid>
    <comment_count>6</comment_count>
      <attachid>447618</attachid>
    <who name="Sihui Liu">sihui_liu</who>
    <bug_when>2021-12-20 12:35:37 -0800</bug_when>
    <thetext>Created attachment 447618
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1825925</commentid>
    <comment_count>7</comment_count>
      <attachid>447618</attachid>
    <who name="youenn fablet">youennf</who>
    <bug_when>2021-12-21 01:43:45 -0800</bug_when>
    <thetext>Comment on attachment 447618
Patch

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

&gt; Source/WebKit/UIProcess/WebsiteData/Cocoa/WebsiteDataStoreCocoa.mm:649
&gt; +    if (![url setResourceValue:@YES forKey:NSURLIsExcludedFromBackupKey error:nil])

It would be good to log error.
Maybe write something like
[url setResourceValue:@YES forKey:NSURLIsExcludedFromBackupKey error:error];
RELEASE_LOG_ERROR_IF(error, Storage, ... +log error).

&gt; Tools/TestWebKitAPI/Tests/WebKitCocoa/LocalStoragePersistence.mm:463
&gt; +    [[NSFileManager defaultManager] removeItemAtPath:url.absoluteString error:nil];

Should we create the directory without the key to make sure the new code path makes it working?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1826055</commentid>
    <comment_count>8</comment_count>
      <attachid>447618</attachid>
    <who name="Sihui Liu">sihui_liu</who>
    <bug_when>2021-12-21 11:00:53 -0800</bug_when>
    <thetext>Comment on attachment 447618
Patch

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

&gt;&gt; Source/WebKit/UIProcess/WebsiteData/Cocoa/WebsiteDataStoreCocoa.mm:649
&gt;&gt; +    if (![url setResourceValue:@YES forKey:NSURLIsExcludedFromBackupKey error:nil])
&gt; 
&gt; It would be good to log error.
&gt; Maybe write something like
&gt; [url setResourceValue:@YES forKey:NSURLIsExcludedFromBackupKey error:error];
&gt; RELEASE_LOG_ERROR_IF(error, Storage, ... +log error).

Sure, will add.

&gt;&gt; Tools/TestWebKitAPI/Tests/WebKitCocoa/LocalStoragePersistence.mm:463
&gt;&gt; +    [[NSFileManager defaultManager] removeItemAtPath:url.absoluteString error:nil];
&gt; 
&gt; Should we create the directory without the key to make sure the new code path makes it working?

Sure. Will add the test.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1826369</commentid>
    <comment_count>9</comment_count>
      <attachid>447825</attachid>
    <who name="Sihui Liu">sihui_liu</who>
    <bug_when>2021-12-22 12:13:34 -0800</bug_when>
    <thetext>Created attachment 447825
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1826426</commentid>
    <comment_count>10</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2021-12-22 15:56:25 -0800</bug_when>
    <thetext>Committed r287377 (245517@main): &lt;https://commits.webkit.org/245517@main&gt;

All reviewed patches have been landed. Closing bug and clearing flags on attachment 447825.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1826427</commentid>
    <comment_count>11</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2021-12-22 15:57:19 -0800</bug_when>
    <thetext>&lt;rdar://problem/86829012&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>447390</attachid>
            <date>2021-12-16 13:54:12 -0800</date>
            <delta_ts>2021-12-16 14:13:10 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-234404-20211216135411.patch</filename>
            <type>text/plain</type>
            <size>2266</size>
            <attacher name="Sihui Liu">sihui_liu</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjg3MTM2CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCmluZGV4IGRkMjBhOGEyZTFkMjZhNmVm
ZDkwNWMwZjYwZTNhMjg2NGVlMmFlNzkuLjZlNDJiNGE2MTFkNDEyM2QyOTNlMWY4NDc5OTFlMDRk
MjY1ZWY3NzggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJj
ZS9XZWJLaXQvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTcgQEAKKzIwMjEtMTItMTYgIFNpaHVpIExp
dSAgPHNpaHVpX2xpdUBhcHBsZS5jb20+CisKKyAgICAgICAgV2Vic2l0ZURhdGFTdG9yZTo6ZXhj
bHVkZURpcmVjdG9yeUZyb21CYWNrdXAgc2hvdWxkIHNldCBhdHRyaWJ1dGUgZm9yIGV4aXN0aW5n
IGRpcmVjdG9yaWVzCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNn
aT9pZD0yMzQ0MDQKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAg
ICAgICBjcmVhdGVEaXJlY3RvcnlBdFVSTCByZXR1cm5pbmcgZmFsc2UgbWVhbnMgZGlyZWN0b3J5
IGNhbm5vdCBiZSBjcmVhdGVkLCBidXQgdGhlIGNhdXNlIGNhbiBiZSB0aGF0IGRpcmVjdG9yeSAK
KyAgICAgICAgYWxyZWFkeSBleGlzdHM7IHNvIHdlIHNob3VsZCBzZXQgZXhjbHVkZSBhdHRyaWJ1
dGUgb24gdGhlIGRpcmVjdG9yeSBubyBtYXR0ZXIgY3JlYXRlRGlyZWN0b3J5QXRVUkwgcmV0dXJu
cyB0cnVlCisgICAgICAgIG9yIGZhbHNlLgorCisgICAgICAgICogVUlQcm9jZXNzL1dlYnNpdGVE
YXRhL0NvY29hL1dlYnNpdGVEYXRhU3RvcmVDb2NvYS5tbToKKyAgICAgICAgKFdlYktpdDo6V2Vi
c2l0ZURhdGFTdG9yZTo6ZXhjbHVkZURpcmVjdG9yeUZyb21CYWNrdXApOgorCiAyMDIxLTEyLTE1
ICBCcmFkeSBFaWRzb24gIDxiZWlkc29uQGFwcGxlLmNvbT4KIAogICAgICAgICBTb21lIHdlYnB1
c2h0b29sIGltcHJvdmVtZW50cy4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNz
L1dlYnNpdGVEYXRhL0NvY29hL1dlYnNpdGVEYXRhU3RvcmVDb2NvYS5tbSBiL1NvdXJjZS9XZWJL
aXQvVUlQcm9jZXNzL1dlYnNpdGVEYXRhL0NvY29hL1dlYnNpdGVEYXRhU3RvcmVDb2NvYS5tbQpp
bmRleCBkOTk3MWViYWFmOWE2MThhNmMxYjQ5MjVhN2RiZjViNWQ3YWFmZDBjLi5jMGRhODRkZjdk
ZjRkMmUzMWQxZGI4ZTg3NzE1ZmM2NGMzZDNkMWM5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0
L1VJUHJvY2Vzcy9XZWJzaXRlRGF0YS9Db2NvYS9XZWJzaXRlRGF0YVN0b3JlQ29jb2EubW0KKysr
IGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2Vic2l0ZURhdGEvQ29jb2EvV2Vic2l0ZURhdGFT
dG9yZUNvY29hLm1tCkBAIC02NDksOCArNjQ5LDkgQEAgdm9pZCBXZWJzaXRlRGF0YVN0b3JlOjpz
ZW5kTmV0d29ya1Byb2Nlc3NYUENFbmRwb2ludFRvQWxsUHJvY2Vzc2VzKCkKIHZvaWQgV2Vic2l0
ZURhdGFTdG9yZTo6ZXhjbHVkZURpcmVjdG9yeUZyb21CYWNrdXAoY29uc3QgU3RyaW5nJiBkaXJl
Y3RvcnkpCiB7CiAgICAgTlNVUkwgKnVybCA9IFtOU1VSTCBVUkxXaXRoU3RyaW5nOihOU1N0cmlu
ZyAqKWRpcmVjdG9yeV07Ci0gICAgaWYgKFtbTlNGaWxlTWFuYWdlciBkZWZhdWx0TWFuYWdlcl0g
Y3JlYXRlRGlyZWN0b3J5QXRVUkw6dXJsIHdpdGhJbnRlcm1lZGlhdGVEaXJlY3RvcmllczpZRVMg
YXR0cmlidXRlczpuaWwgZXJyb3I6bnVsbHB0cl0pCi0gICAgICAgIFtbTlNVUkwgZmlsZVVSTFdp
dGhQYXRoOihOU1N0cmluZyAqKWRpcmVjdG9yeSBpc0RpcmVjdG9yeTpZRVNdIHNldFJlc291cmNl
VmFsdWU6QFlFUyBmb3JLZXk6TlNVUkxJc0V4Y2x1ZGVkRnJvbUJhY2t1cEtleSBlcnJvcjpuaWxd
OworICAgIFtbTlNGaWxlTWFuYWdlciBkZWZhdWx0TWFuYWdlcl0gY3JlYXRlRGlyZWN0b3J5QXRV
Ukw6dXJsIHdpdGhJbnRlcm1lZGlhdGVEaXJlY3RvcmllczpZRVMgYXR0cmlidXRlczpuaWwgZXJy
b3I6bnVsbHB0cl07CisgICAgaWYgKCFbdXJsIHNldFJlc291cmNlVmFsdWU6QFlFUyBmb3JLZXk6
TlNVUkxJc0V4Y2x1ZGVkRnJvbUJhY2t1cEtleSBlcnJvcjpuaWxdKQorICAgICAgICBSRUxFQVNF
X0xPR19FUlJPUihTdG9yYWdlLCAiV2Vic2l0ZURhdGFTdG9yZTo6ZXhjbHVkZURpcmVjdG9yeUZy
b21CYWNrdXAgLSBjYW5ub3QgZXhjbHVkZSBkaXJlY3RvcnkgJyVzJyBmcm9tIGJhY2t1cCIsIHRo
aXMsIGRpcmVjdG9yeS51dGY4KCkuZGF0YSgpKTsKIH0KIAogI2VuZGlmCg==
</data>
<flag name="commit-queue"
          id="473005"
          type_id="3"
          status="-"
          setter="ews-feeder"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>447392</attachid>
            <date>2021-12-16 13:59:42 -0800</date>
            <delta_ts>2021-12-17 10:20:30 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-234404-20211216135941.patch</filename>
            <type>text/plain</type>
            <size>2260</size>
            <attacher name="Sihui Liu">sihui_liu</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjg3MTM2CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCmluZGV4IGRkMjBhOGEyZTFkMjZhNmVm
ZDkwNWMwZjYwZTNhMjg2NGVlMmFlNzkuLjZlNDJiNGE2MTFkNDEyM2QyOTNlMWY4NDc5OTFlMDRk
MjY1ZWY3NzggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJj
ZS9XZWJLaXQvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTcgQEAKKzIwMjEtMTItMTYgIFNpaHVpIExp
dSAgPHNpaHVpX2xpdUBhcHBsZS5jb20+CisKKyAgICAgICAgV2Vic2l0ZURhdGFTdG9yZTo6ZXhj
bHVkZURpcmVjdG9yeUZyb21CYWNrdXAgc2hvdWxkIHNldCBhdHRyaWJ1dGUgZm9yIGV4aXN0aW5n
IGRpcmVjdG9yaWVzCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNn
aT9pZD0yMzQ0MDQKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAg
ICAgICBjcmVhdGVEaXJlY3RvcnlBdFVSTCByZXR1cm5pbmcgZmFsc2UgbWVhbnMgZGlyZWN0b3J5
IGNhbm5vdCBiZSBjcmVhdGVkLCBidXQgdGhlIGNhdXNlIGNhbiBiZSB0aGF0IGRpcmVjdG9yeSAK
KyAgICAgICAgYWxyZWFkeSBleGlzdHM7IHNvIHdlIHNob3VsZCBzZXQgZXhjbHVkZSBhdHRyaWJ1
dGUgb24gdGhlIGRpcmVjdG9yeSBubyBtYXR0ZXIgY3JlYXRlRGlyZWN0b3J5QXRVUkwgcmV0dXJu
cyB0cnVlCisgICAgICAgIG9yIGZhbHNlLgorCisgICAgICAgICogVUlQcm9jZXNzL1dlYnNpdGVE
YXRhL0NvY29hL1dlYnNpdGVEYXRhU3RvcmVDb2NvYS5tbToKKyAgICAgICAgKFdlYktpdDo6V2Vi
c2l0ZURhdGFTdG9yZTo6ZXhjbHVkZURpcmVjdG9yeUZyb21CYWNrdXApOgorCiAyMDIxLTEyLTE1
ICBCcmFkeSBFaWRzb24gIDxiZWlkc29uQGFwcGxlLmNvbT4KIAogICAgICAgICBTb21lIHdlYnB1
c2h0b29sIGltcHJvdmVtZW50cy4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNz
L1dlYnNpdGVEYXRhL0NvY29hL1dlYnNpdGVEYXRhU3RvcmVDb2NvYS5tbSBiL1NvdXJjZS9XZWJL
aXQvVUlQcm9jZXNzL1dlYnNpdGVEYXRhL0NvY29hL1dlYnNpdGVEYXRhU3RvcmVDb2NvYS5tbQpp
bmRleCBkOTk3MWViYWFmOWE2MThhNmMxYjQ5MjVhN2RiZjViNWQ3YWFmZDBjLi4wZDcwZTkzYjI1
NmE2YWYxOWFmYjhjZmQ2NTU5NDY2ZmJmYTU0YjY3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0
L1VJUHJvY2Vzcy9XZWJzaXRlRGF0YS9Db2NvYS9XZWJzaXRlRGF0YVN0b3JlQ29jb2EubW0KKysr
IGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2Vic2l0ZURhdGEvQ29jb2EvV2Vic2l0ZURhdGFT
dG9yZUNvY29hLm1tCkBAIC02NDksOCArNjQ5LDkgQEAgdm9pZCBXZWJzaXRlRGF0YVN0b3JlOjpz
ZW5kTmV0d29ya1Byb2Nlc3NYUENFbmRwb2ludFRvQWxsUHJvY2Vzc2VzKCkKIHZvaWQgV2Vic2l0
ZURhdGFTdG9yZTo6ZXhjbHVkZURpcmVjdG9yeUZyb21CYWNrdXAoY29uc3QgU3RyaW5nJiBkaXJl
Y3RvcnkpCiB7CiAgICAgTlNVUkwgKnVybCA9IFtOU1VSTCBVUkxXaXRoU3RyaW5nOihOU1N0cmlu
ZyAqKWRpcmVjdG9yeV07Ci0gICAgaWYgKFtbTlNGaWxlTWFuYWdlciBkZWZhdWx0TWFuYWdlcl0g
Y3JlYXRlRGlyZWN0b3J5QXRVUkw6dXJsIHdpdGhJbnRlcm1lZGlhdGVEaXJlY3RvcmllczpZRVMg
YXR0cmlidXRlczpuaWwgZXJyb3I6bnVsbHB0cl0pCi0gICAgICAgIFtbTlNVUkwgZmlsZVVSTFdp
dGhQYXRoOihOU1N0cmluZyAqKWRpcmVjdG9yeSBpc0RpcmVjdG9yeTpZRVNdIHNldFJlc291cmNl
VmFsdWU6QFlFUyBmb3JLZXk6TlNVUkxJc0V4Y2x1ZGVkRnJvbUJhY2t1cEtleSBlcnJvcjpuaWxd
OworICAgIFtbTlNGaWxlTWFuYWdlciBkZWZhdWx0TWFuYWdlcl0gY3JlYXRlRGlyZWN0b3J5QXRV
Ukw6dXJsIHdpdGhJbnRlcm1lZGlhdGVEaXJlY3RvcmllczpZRVMgYXR0cmlidXRlczpuaWwgZXJy
b3I6bnVsbHB0cl07CisgICAgaWYgKCFbdXJsIHNldFJlc291cmNlVmFsdWU6QFlFUyBmb3JLZXk6
TlNVUkxJc0V4Y2x1ZGVkRnJvbUJhY2t1cEtleSBlcnJvcjpuaWxdKQorICAgICAgICBSRUxFQVNF
X0xPR19FUlJPUihTdG9yYWdlLCAiV2Vic2l0ZURhdGFTdG9yZTo6ZXhjbHVkZURpcmVjdG9yeUZy
b21CYWNrdXAgLSBjYW5ub3QgZXhjbHVkZSBkaXJlY3RvcnkgJyVzJyBmcm9tIGJhY2t1cCIsIGRp
cmVjdG9yeS51dGY4KCkuZGF0YSgpKTsKIH0KIAogI2VuZGlmCg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>447459</attachid>
            <date>2021-12-17 10:20:32 -0800</date>
            <delta_ts>2021-12-20 12:35:34 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-234404-20211217102031.patch</filename>
            <type>text/plain</type>
            <size>4671</size>
            <attacher name="Sihui Liu">sihui_liu</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjg3MTU4CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCmluZGV4IDE4YjNmNWI2MzFlZjFhMmU3
MWU5ZDgzOTE5N2I4M2QyY2Q1ZjI1MDMuLmE2MjQwMzIwMTFhOGE5OTE0NWQ1YjJjYzI3ZjM1MmFj
OGZiN2ExYTEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJj
ZS9XZWJLaXQvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTUgQEAKKzIwMjEtMTItMTcgIFNpaHVpIExp
dSAgPHNpaHVpX2xpdUBhcHBsZS5jb20+CisKKyAgICAgICAgV2Vic2l0ZURhdGFTdG9yZTo6ZXhj
bHVkZURpcmVjdG9yeUZyb21CYWNrdXAgc2hvdWxkIHNldCBhdHRyaWJ1dGUgZm9yIGV4aXN0aW5n
IGRpcmVjdG9yaWVzCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNn
aT9pZD0yMzQ0MDQKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAg
ICAgICBOZXcgQVBJIHRlc3Q6IFdLV2ViVmlldy5Mb2NhbFN0b3JhZ2VEaXJlY3RvcnlFeGNsdWRl
ZEZyb21CYWNrdXAKKworICAgICAgICAqIFVJUHJvY2Vzcy9XZWJzaXRlRGF0YS9Db2NvYS9XZWJz
aXRlRGF0YVN0b3JlQ29jb2EubW06CisgICAgICAgIChXZWJLaXQ6OldlYnNpdGVEYXRhU3RvcmU6
OmV4Y2x1ZGVEaXJlY3RvcnlGcm9tQmFja3VwKToKKwogMjAyMS0xMi0xNiAgU2lodWkgTGl1ICA8
c2lodWlfbGl1QGFwcGxlLmNvbT4KIAogICAgICAgICBSRUdSRVNTSU9OIChyMjg2NjAxKTogc3Rv
cmFnZS9maWxlc3lzdGVtYWNjZXNzL3N5bmMtYWNjZXNzLWhhbmRsZS1yZWFkLXdyaXRlLXdvcmtl
ci5odG1sIGFuZCBmaWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1TeW5jQWNj
ZXNzSGFuZGxlLXRydW5jYXRlLmh0dHBzLnRlbnRhdGl2ZS53b3JrZXIuaHRtbCBhcmUgY29uc2lz
dGVudGx5IGZhaWxpbmcKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYnNp
dGVEYXRhL0NvY29hL1dlYnNpdGVEYXRhU3RvcmVDb2NvYS5tbSBiL1NvdXJjZS9XZWJLaXQvVUlQ
cm9jZXNzL1dlYnNpdGVEYXRhL0NvY29hL1dlYnNpdGVEYXRhU3RvcmVDb2NvYS5tbQppbmRleCBk
OTk3MWViYWFmOWE2MThhNmMxYjQ5MjVhN2RiZjViNWQ3YWFmZDBjLi4wZDcwZTkzYjI1NmE2YWYx
OWFmYjhjZmQ2NTU5NDY2ZmJmYTU0YjY3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1VJUHJv
Y2Vzcy9XZWJzaXRlRGF0YS9Db2NvYS9XZWJzaXRlRGF0YVN0b3JlQ29jb2EubW0KKysrIGIvU291
cmNlL1dlYktpdC9VSVByb2Nlc3MvV2Vic2l0ZURhdGEvQ29jb2EvV2Vic2l0ZURhdGFTdG9yZUNv
Y29hLm1tCkBAIC02NDksOCArNjQ5LDkgQEAgdm9pZCBXZWJzaXRlRGF0YVN0b3JlOjpzZW5kTmV0
d29ya1Byb2Nlc3NYUENFbmRwb2ludFRvQWxsUHJvY2Vzc2VzKCkKIHZvaWQgV2Vic2l0ZURhdGFT
dG9yZTo6ZXhjbHVkZURpcmVjdG9yeUZyb21CYWNrdXAoY29uc3QgU3RyaW5nJiBkaXJlY3Rvcnkp
CiB7CiAgICAgTlNVUkwgKnVybCA9IFtOU1VSTCBVUkxXaXRoU3RyaW5nOihOU1N0cmluZyAqKWRp
cmVjdG9yeV07Ci0gICAgaWYgKFtbTlNGaWxlTWFuYWdlciBkZWZhdWx0TWFuYWdlcl0gY3JlYXRl
RGlyZWN0b3J5QXRVUkw6dXJsIHdpdGhJbnRlcm1lZGlhdGVEaXJlY3RvcmllczpZRVMgYXR0cmli
dXRlczpuaWwgZXJyb3I6bnVsbHB0cl0pCi0gICAgICAgIFtbTlNVUkwgZmlsZVVSTFdpdGhQYXRo
OihOU1N0cmluZyAqKWRpcmVjdG9yeSBpc0RpcmVjdG9yeTpZRVNdIHNldFJlc291cmNlVmFsdWU6
QFlFUyBmb3JLZXk6TlNVUkxJc0V4Y2x1ZGVkRnJvbUJhY2t1cEtleSBlcnJvcjpuaWxdOworICAg
IFtbTlNGaWxlTWFuYWdlciBkZWZhdWx0TWFuYWdlcl0gY3JlYXRlRGlyZWN0b3J5QXRVUkw6dXJs
IHdpdGhJbnRlcm1lZGlhdGVEaXJlY3RvcmllczpZRVMgYXR0cmlidXRlczpuaWwgZXJyb3I6bnVs
bHB0cl07CisgICAgaWYgKCFbdXJsIHNldFJlc291cmNlVmFsdWU6QFlFUyBmb3JLZXk6TlNVUkxJ
c0V4Y2x1ZGVkRnJvbUJhY2t1cEtleSBlcnJvcjpuaWxdKQorICAgICAgICBSRUxFQVNFX0xPR19F
UlJPUihTdG9yYWdlLCAiV2Vic2l0ZURhdGFTdG9yZTo6ZXhjbHVkZURpcmVjdG9yeUZyb21CYWNr
dXAgLSBjYW5ub3QgZXhjbHVkZSBkaXJlY3RvcnkgJyVzJyBmcm9tIGJhY2t1cCIsIGRpcmVjdG9y
eS51dGY4KCkuZGF0YSgpKTsKIH0KIAogI2VuZGlmCmRpZmYgLS1naXQgYS9Ub29scy9DaGFuZ2VM
b2cgYi9Ub29scy9DaGFuZ2VMb2cKaW5kZXggMTc4MTM4NWRmNmI4MmRlOTJjM2IxM2IwMzA3Yjcw
YzAwZTdiMDllNC4uZTI1ZWE3NzY4Mjc5YmFhNGUzYTQ2NjIxZGI3YjNjMjNkZjY5ZDg2MCAxMDA2
NDQKLS0tIGEvVG9vbHMvQ2hhbmdlTG9nCisrKyBiL1Rvb2xzL0NoYW5nZUxvZwpAQCAtMSwzICsx
LDEzIEBACisyMDIxLTEyLTE3ICBTaWh1aSBMaXUgIDxzaWh1aV9saXVAYXBwbGUuY29tPgorCisg
ICAgICAgIFdlYnNpdGVEYXRhU3RvcmU6OmV4Y2x1ZGVEaXJlY3RvcnlGcm9tQmFja3VwIHNob3Vs
ZCBzZXQgYXR0cmlidXRlIGZvciBleGlzdGluZyBkaXJlY3RvcmllcworICAgICAgICBodHRwczov
L2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjM0NDA0CisKKyAgICAgICAgUmV2aWV3
ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBUZXN0V2ViS2l0QVBJL1Rlc3RzL1dl
YktpdENvY29hL0xvY2FsU3RvcmFnZVBlcnNpc3RlbmNlLm1tOgorICAgICAgICAoVEVTVCk6CisK
IDIwMjEtMTItMTYgIEFsZXggQ2hyaXN0ZW5zZW4gIDxhY2hyaXN0ZW5zZW5Ad2Via2l0Lm9yZz4K
IAogICAgICAgICBVbnJldmlld2VkLCByZXZlcnRpbmcgcjI4NzA1Ni4KZGlmZiAtLWdpdCBhL1Rv
b2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0Q29jb2EvTG9jYWxTdG9yYWdlUGVyc2lzdGVu
Y2UubW0gYi9Ub29scy9UZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktpdENvY29hL0xvY2FsU3RvcmFn
ZVBlcnNpc3RlbmNlLm1tCmluZGV4IGY5NmU2MTE3N2ZjYTlkNGVkZTA4NzNhOTc1MjY4NDIzNTMy
Njc0NjUuLjA3MjhjZGYwNzc4NzM4YjYxYTQyMWE2ODc3ODU3YmYzODhjYjNjYjcgMTAwNjQ0Ci0t
LSBhL1Rvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0Q29jb2EvTG9jYWxTdG9yYWdlUGVy
c2lzdGVuY2UubW0KKysrIGIvVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJLaXRDb2NvYS9M
b2NhbFN0b3JhZ2VQZXJzaXN0ZW5jZS5tbQpAQCAtMzksNiArMzksNyBAQAogI2ltcG9ydCA8V2Vi
S2l0L1dlYktpdC5oPgogI2ltcG9ydCA8V2ViS2l0L19XS1Byb2Nlc3NQb29sQ29uZmlndXJhdGlv
bi5oPgogI2ltcG9ydCA8V2ViS2l0L19XS1VzZXJTdHlsZVNoZWV0Lmg+CisjaW1wb3J0IDxXZWJL
aXQvX1dLV2Vic2l0ZURhdGFTdG9yZUNvbmZpZ3VyYXRpb24uaD4KICNpbXBvcnQgPHd0Zi9SZXRh
aW5QdHIuaD4KICNpbXBvcnQgPHd0Zi90ZXh0L1dURlN0cmluZy5oPgogCkBAIC00NTIsMyArNDUz
LDI1IEBAIFRFU1QoV0tXZWJWaWV3LCBMb2NhbFN0b3JhZ2VHcm91cCkKICAgICBydW5UZXN0KHRy
dWUpOwogICAgIHJ1blRlc3QoZmFsc2UpOwogfQorCisjaWYgUExBVEZPUk0oSU9TX0ZBTUlMWSkK
KworVEVTVChXS1dlYlZpZXcsIExvY2FsU3RvcmFnZURpcmVjdG9yeUV4Y2x1ZGVkRnJvbUJhY2t1
cCkKK3sKKyAgICBhdXRvIGNvbmZpZ3VyYXRpb24gPSBhZG9wdE5TKFtbV0tXZWJWaWV3Q29uZmln
dXJhdGlvbiBhbGxvY10gaW5pdF0pOworICAgIE5TVVJMICp1cmwgPSBbW1tjb25maWd1cmF0aW9u
IHdlYnNpdGVEYXRhU3RvcmVdIF9jb25maWd1cmF0aW9uXSBfd2ViU3RvcmFnZURpcmVjdG9yeV07
CisgICAgW1tOU0ZpbGVNYW5hZ2VyIGRlZmF1bHRNYW5hZ2VyXSByZW1vdmVJdGVtQXRQYXRoOnVy
bC5hYnNvbHV0ZVN0cmluZyBlcnJvcjpuaWxdOworICAgIAorICAgIGF1dG8gZGVsZWdhdGUgPSBh
ZG9wdE5TKFtbTG9jYWxTdG9yYWdlTmF2aWdhdGlvbkRlbGVnYXRlIGFsbG9jXSBpbml0XSk7Cisg
ICAgYXV0byB3ZWJWaWV3ID0gYWRvcHROUyhbW1dLV2ViVmlldyBhbGxvY10gaW5pdFdpdGhGcmFt
ZTpOU01ha2VSZWN0KDAsIDAsIDgwMCwgNjAwKSBjb25maWd1cmF0aW9uOmNvbmZpZ3VyYXRpb24u
Z2V0KCldKTsKKyAgICBbd2ViVmlldyBzZXROYXZpZ2F0aW9uRGVsZWdhdGU6ZGVsZWdhdGUuZ2V0
KCldOworICAgIGRpZEZpbmlzaE5hdmlnYXRpb25Cb29sZWFuID0gZmFsc2U7CisgICAgTlNVUkxS
ZXF1ZXN0ICpyZXF1ZXN0ID0gW05TVVJMUmVxdWVzdCByZXF1ZXN0V2l0aFVSTDpbW05TQnVuZGxl
IG1haW5CdW5kbGVdIFVSTEZvclJlc291cmNlOkAic2ltcGxlIiB3aXRoRXh0ZW5zaW9uOkAiaHRt
bCIgc3ViZGlyZWN0b3J5OkAiVGVzdFdlYktpdEFQSS5yZXNvdXJjZXMiXV07CisgICAgW3dlYlZp
ZXcgbG9hZFJlcXVlc3Q6cmVxdWVzdF07CisgICAgVGVzdFdlYktpdEFQSTo6VXRpbDo6cnVuKCZk
aWRGaW5pc2hOYXZpZ2F0aW9uQm9vbGVhbik7CisKKyAgICBOU1N0cmluZyAqcmVzdWx0ID0gbmls
OworICAgIEVYUEVDVF9UUlVFKFt1cmwgZ2V0UmVzb3VyY2VWYWx1ZTomcmVzdWx0IGZvcktleTpO
U1VSTElzRXhjbHVkZWRGcm9tQmFja3VwS2V5IGVycm9yOm5pbF0pOworfQorCisjZW5kaWYK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>447618</attachid>
            <date>2021-12-20 12:35:37 -0800</date>
            <delta_ts>2021-12-22 12:13:32 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-234404-20211220123536.patch</filename>
            <type>text/plain</type>
            <size>4798</size>
            <attacher name="Sihui Liu">sihui_liu</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjg3MjcyCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCmluZGV4IDk0OTU1MTlmZTk5YzNjZDFl
Y2U0MTI2NjI0MjdiODAxYmFmZWRlZDguLjA2M2I5M2Q4OTQ3MDdjNjY1YjUzMDNlNmQ5YjhmOTA0
Mjk0MTUyOWEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJj
ZS9XZWJLaXQvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTkgQEAKKzIwMjEtMTItMjAgIFNpaHVpIExp
dSAgPHNpaHVpX2xpdUBhcHBsZS5jb20+CisKKyAgICAgICAgV2Vic2l0ZURhdGFTdG9yZTo6ZXhj
bHVkZURpcmVjdG9yeUZyb21CYWNrdXAgc2hvdWxkIHNldCBhdHRyaWJ1dGUgZm9yIGV4aXN0aW5n
IGRpcmVjdG9yaWVzCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNn
aT9pZD0yMzQ0MDQKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAg
ICAgICBjcmVhdGVEaXJlY3RvcnlBdFVSTCByZXR1cm5pbmcgZmFsc2UgbWVhbnMgZGlyZWN0b3J5
IGNhbm5vdCBiZSBjcmVhdGVkLCBidXQgdGhlIGNhdXNlIGNhbiBiZSB0aGF0IGRpcmVjdG9yeSAK
KyAgICAgICAgYWxyZWFkeSBleGlzdHM7IHNvIHdlIHNob3VsZCBzZXQgZXhjbHVkZSBhdHRyaWJ1
dGUgb24gdGhlIGRpcmVjdG9yeSBubyBtYXR0ZXIgY3JlYXRlRGlyZWN0b3J5QXRVUkwgcmV0dXJu
cyB0cnVlCisgICAgICAgIG9yIGZhbHNlLgorCisgICAgICAgIE5ldyBBUEkgdGVzdDogV0tXZWJW
aWV3LkxvY2FsU3RvcmFnZURpcmVjdG9yeUV4Y2x1ZGVkRnJvbUJhY2t1cAorCisgICAgICAgICog
VUlQcm9jZXNzL1dlYnNpdGVEYXRhL0NvY29hL1dlYnNpdGVEYXRhU3RvcmVDb2NvYS5tbToKKyAg
ICAgICAgKFdlYktpdDo6V2Vic2l0ZURhdGFTdG9yZTo6ZXhjbHVkZURpcmVjdG9yeUZyb21CYWNr
dXApOgorCiAyMDIxLTEyLTIwICBZb3Vlbm4gRmFibGV0ICA8eW91ZW5uQGFwcGxlLmNvbT4KIAog
ICAgICAgICBJbXByb3ZlIFVzZXJNZWRpYVBlcm1pc3Npb25SZXF1ZXN0TWFuYWdlclByb3h5IGxv
Z2dpbmcKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYnNpdGVEYXRhL0Nv
Y29hL1dlYnNpdGVEYXRhU3RvcmVDb2NvYS5tbSBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dl
YnNpdGVEYXRhL0NvY29hL1dlYnNpdGVEYXRhU3RvcmVDb2NvYS5tbQppbmRleCBiMWE3Zjg2Yjc2
MjQ2NzZlNTgyMzJlZWQ5YjY2YTAxMjY3YjhkNzA1Li4yMTIwZGJlOWQyYWY4ODk5MmVhYjY2Y2U5
YjgxMjVhNDRlMWU1MmFlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJz
aXRlRGF0YS9Db2NvYS9XZWJzaXRlRGF0YVN0b3JlQ29jb2EubW0KKysrIGIvU291cmNlL1dlYktp
dC9VSVByb2Nlc3MvV2Vic2l0ZURhdGEvQ29jb2EvV2Vic2l0ZURhdGFTdG9yZUNvY29hLm1tCkBA
IC02NDUsOCArNjQ1LDkgQEAgdm9pZCBXZWJzaXRlRGF0YVN0b3JlOjpzZW5kTmV0d29ya1Byb2Nl
c3NYUENFbmRwb2ludFRvQWxsUHJvY2Vzc2VzKCkKIHZvaWQgV2Vic2l0ZURhdGFTdG9yZTo6ZXhj
bHVkZURpcmVjdG9yeUZyb21CYWNrdXAoY29uc3QgU3RyaW5nJiBkaXJlY3RvcnkpCiB7CiAgICAg
TlNVUkwgKnVybCA9IFtOU1VSTCBVUkxXaXRoU3RyaW5nOihOU1N0cmluZyAqKWRpcmVjdG9yeV07
Ci0gICAgaWYgKFtbTlNGaWxlTWFuYWdlciBkZWZhdWx0TWFuYWdlcl0gY3JlYXRlRGlyZWN0b3J5
QXRVUkw6dXJsIHdpdGhJbnRlcm1lZGlhdGVEaXJlY3RvcmllczpZRVMgYXR0cmlidXRlczpuaWwg
ZXJyb3I6bnVsbHB0cl0pCi0gICAgICAgIFtbTlNVUkwgZmlsZVVSTFdpdGhQYXRoOihOU1N0cmlu
ZyAqKWRpcmVjdG9yeSBpc0RpcmVjdG9yeTpZRVNdIHNldFJlc291cmNlVmFsdWU6QFlFUyBmb3JL
ZXk6TlNVUkxJc0V4Y2x1ZGVkRnJvbUJhY2t1cEtleSBlcnJvcjpuaWxdOworICAgIFtbTlNGaWxl
TWFuYWdlciBkZWZhdWx0TWFuYWdlcl0gY3JlYXRlRGlyZWN0b3J5QXRVUkw6dXJsIHdpdGhJbnRl
cm1lZGlhdGVEaXJlY3RvcmllczpZRVMgYXR0cmlidXRlczpuaWwgZXJyb3I6bnVsbHB0cl07Cisg
ICAgaWYgKCFbdXJsIHNldFJlc291cmNlVmFsdWU6QFlFUyBmb3JLZXk6TlNVUkxJc0V4Y2x1ZGVk
RnJvbUJhY2t1cEtleSBlcnJvcjpuaWxdKQorICAgICAgICBSRUxFQVNFX0xPR19FUlJPUihTdG9y
YWdlLCAiV2Vic2l0ZURhdGFTdG9yZTo6ZXhjbHVkZURpcmVjdG9yeUZyb21CYWNrdXAgLSBjYW5u
b3QgZXhjbHVkZSBkaXJlY3RvcnkgJyVzJyBmcm9tIGJhY2t1cCIsIGRpcmVjdG9yeS51dGY4KCku
ZGF0YSgpKTsKIH0KIAogI2VuZGlmCmRpZmYgLS1naXQgYS9Ub29scy9DaGFuZ2VMb2cgYi9Ub29s
cy9DaGFuZ2VMb2cKaW5kZXggZTBkMzA5OTQyMjBjZTRjNmVkZGJmOWM1MWVmOWFhZTNiMDQxOTQ2
NS4uNDA4OGI1OTEyOTQwYTFmMGZkYTFmNjk5M2IwY2U0NmU0MjExYmVkMiAxMDA2NDQKLS0tIGEv
VG9vbHMvQ2hhbmdlTG9nCisrKyBiL1Rvb2xzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDEzIEBACisy
MDIxLTEyLTIwICBTaWh1aSBMaXUgIDxzaWh1aV9saXVAYXBwbGUuY29tPgorCisgICAgICAgIFdl
YnNpdGVEYXRhU3RvcmU6OmV4Y2x1ZGVEaXJlY3RvcnlGcm9tQmFja3VwIHNob3VsZCBzZXQgYXR0
cmlidXRlIGZvciBleGlzdGluZyBkaXJlY3RvcmllcworICAgICAgICBodHRwczovL2J1Z3Mud2Vi
a2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjM0NDA0CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9C
T0RZIChPT1BTISkuCisKKyAgICAgICAgKiBUZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktpdENvY29h
L0xvY2FsU3RvcmFnZVBlcnNpc3RlbmNlLm1tOgorICAgICAgICAoVEVTVCk6CisKIDIwMjEtMTIt
MjAgIFRpbSBOZ3V5ZW4gIDxudGltQGFwcGxlLmNvbT4KIAogICAgICAgICBTdG9wIGFzc3VtaW5n
IFdQVCBpcyBhIHJlZnRlc3QgYmFzZWQgb24gZXhpc3RlbmNlIG9mIC1yZWYuaHRtbCBmaWxlCmRp
ZmYgLS1naXQgYS9Ub29scy9UZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktpdENvY29hL0xvY2FsU3Rv
cmFnZVBlcnNpc3RlbmNlLm1tIGIvVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJLaXRDb2Nv
YS9Mb2NhbFN0b3JhZ2VQZXJzaXN0ZW5jZS5tbQppbmRleCBmOTZlNjExNzdmY2E5ZDRlZGUwODcz
YTk3NTI2ODQyMzUzMjY3NDY1Li4wNzI4Y2RmMDc3ODczOGI2MWE0MjFhNjg3Nzg1N2JmMzg4Y2Iz
Y2I3IDEwMDY0NAotLS0gYS9Ub29scy9UZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktpdENvY29hL0xv
Y2FsU3RvcmFnZVBlcnNpc3RlbmNlLm1tCisrKyBiL1Rvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMv
V2ViS2l0Q29jb2EvTG9jYWxTdG9yYWdlUGVyc2lzdGVuY2UubW0KQEAgLTM5LDYgKzM5LDcgQEAK
ICNpbXBvcnQgPFdlYktpdC9XZWJLaXQuaD4KICNpbXBvcnQgPFdlYktpdC9fV0tQcm9jZXNzUG9v
bENvbmZpZ3VyYXRpb24uaD4KICNpbXBvcnQgPFdlYktpdC9fV0tVc2VyU3R5bGVTaGVldC5oPgor
I2ltcG9ydCA8V2ViS2l0L19XS1dlYnNpdGVEYXRhU3RvcmVDb25maWd1cmF0aW9uLmg+CiAjaW1w
b3J0IDx3dGYvUmV0YWluUHRyLmg+CiAjaW1wb3J0IDx3dGYvdGV4dC9XVEZTdHJpbmcuaD4KIApA
QCAtNDUyLDMgKzQ1MywyNSBAQCBURVNUKFdLV2ViVmlldywgTG9jYWxTdG9yYWdlR3JvdXApCiAg
ICAgcnVuVGVzdCh0cnVlKTsKICAgICBydW5UZXN0KGZhbHNlKTsKIH0KKworI2lmIFBMQVRGT1JN
KElPU19GQU1JTFkpCisKK1RFU1QoV0tXZWJWaWV3LCBMb2NhbFN0b3JhZ2VEaXJlY3RvcnlFeGNs
dWRlZEZyb21CYWNrdXApCit7CisgICAgYXV0byBjb25maWd1cmF0aW9uID0gYWRvcHROUyhbW1dL
V2ViVmlld0NvbmZpZ3VyYXRpb24gYWxsb2NdIGluaXRdKTsKKyAgICBOU1VSTCAqdXJsID0gW1tb
Y29uZmlndXJhdGlvbiB3ZWJzaXRlRGF0YVN0b3JlXSBfY29uZmlndXJhdGlvbl0gX3dlYlN0b3Jh
Z2VEaXJlY3RvcnldOworICAgIFtbTlNGaWxlTWFuYWdlciBkZWZhdWx0TWFuYWdlcl0gcmVtb3Zl
SXRlbUF0UGF0aDp1cmwuYWJzb2x1dGVTdHJpbmcgZXJyb3I6bmlsXTsKKyAgICAKKyAgICBhdXRv
IGRlbGVnYXRlID0gYWRvcHROUyhbW0xvY2FsU3RvcmFnZU5hdmlnYXRpb25EZWxlZ2F0ZSBhbGxv
Y10gaW5pdF0pOworICAgIGF1dG8gd2ViVmlldyA9IGFkb3B0TlMoW1tXS1dlYlZpZXcgYWxsb2Nd
IGluaXRXaXRoRnJhbWU6TlNNYWtlUmVjdCgwLCAwLCA4MDAsIDYwMCkgY29uZmlndXJhdGlvbjpj
b25maWd1cmF0aW9uLmdldCgpXSk7CisgICAgW3dlYlZpZXcgc2V0TmF2aWdhdGlvbkRlbGVnYXRl
OmRlbGVnYXRlLmdldCgpXTsKKyAgICBkaWRGaW5pc2hOYXZpZ2F0aW9uQm9vbGVhbiA9IGZhbHNl
OworICAgIE5TVVJMUmVxdWVzdCAqcmVxdWVzdCA9IFtOU1VSTFJlcXVlc3QgcmVxdWVzdFdpdGhV
Ukw6W1tOU0J1bmRsZSBtYWluQnVuZGxlXSBVUkxGb3JSZXNvdXJjZTpAInNpbXBsZSIgd2l0aEV4
dGVuc2lvbjpAImh0bWwiIHN1YmRpcmVjdG9yeTpAIlRlc3RXZWJLaXRBUEkucmVzb3VyY2VzIl1d
OworICAgIFt3ZWJWaWV3IGxvYWRSZXF1ZXN0OnJlcXVlc3RdOworICAgIFRlc3RXZWJLaXRBUEk6
OlV0aWw6OnJ1bigmZGlkRmluaXNoTmF2aWdhdGlvbkJvb2xlYW4pOworCisgICAgTlNTdHJpbmcg
KnJlc3VsdCA9IG5pbDsKKyAgICBFWFBFQ1RfVFJVRShbdXJsIGdldFJlc291cmNlVmFsdWU6JnJl
c3VsdCBmb3JLZXk6TlNVUkxJc0V4Y2x1ZGVkRnJvbUJhY2t1cEtleSBlcnJvcjpuaWxdKTsKK30K
KworI2VuZGlmCg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>447825</attachid>
            <date>2021-12-22 12:13:34 -0800</date>
            <delta_ts>2021-12-22 15:56:27 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-234404-20211222121333.patch</filename>
            <type>text/plain</type>
            <size>11871</size>
            <attacher name="Sihui Liu">sihui_liu</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjg3MzYzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV1RGL0NoYW5n
ZUxvZyBiL1NvdXJjZS9XVEYvQ2hhbmdlTG9nCmluZGV4IDllYWQyODQ2ZGJlZjZiZDA1MGM3ZmFl
YWU3OGNiNTI4NWQ0NzQyMWUuLjNlZjM4NThhM2NiZDNjZjhkNjA1NDhhMTFkODM2MTcwMDg2ZWRh
NDYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XVEYvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XVEYvQ2hh
bmdlTG9nCkBAIC0xLDMgKzEsMjAgQEAKKzIwMjEtMTItMjIgIFNpaHVpIExpdSAgPHNpaHVpX2xp
dUBhcHBsZS5jb20+CisKKyAgICAgICAgV2Vic2l0ZURhdGFTdG9yZTo6ZXhjbHVkZURpcmVjdG9y
eUZyb21CYWNrdXAgc2hvdWxkIHNldCBhdHRyaWJ1dGUgZm9yIGV4aXN0aW5nIGRpcmVjdG9yaWVz
CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMzQ0MDQK
KworICAgICAgICBSZXZpZXdlZCBieSBZb3Vlbm4gRmFibGV0LgorCisgICAgICAgICogd3RmL0Zp
bGVTeXN0ZW0uY3BwOgorICAgICAgICAoV1RGOjpGaWxlU3lzdGVtSW1wbDo6ZXhjbHVkZUZyb21C
YWNrdXApOgorICAgICAgICAoV1RGOjpGaWxlU3lzdGVtSW1wbDo6Y2FuRXhjbHVkZUZyb21CYWNr
dXApOiBEZWxldGVkLgorICAgICAgICAqIHd0Zi9GaWxlU3lzdGVtLmg6CisgICAgICAgICogd3Rm
L2NvY29hL0ZpbGVTeXN0ZW1Db2NvYS5tbToKKyAgICAgICAgKFdURjo6RmlsZVN5c3RlbUltcGw6
OmV4Y2x1ZGVGcm9tQmFja3VwKToKKyAgICAgICAgKiB3dGYvbWFjL0ZpbGVTeXN0ZW1NYWMubW06
CisgICAgICAgIChXVEY6OkZpbGVTeXN0ZW06OmNhbkV4Y2x1ZGVGcm9tQmFja3VwKTogRGVsZXRl
ZC4KKyAgICAgICAgKFdURjo6RmlsZVN5c3RlbTo6ZXhjbHVkZUZyb21CYWNrdXApOiBEZWxldGVk
LgorCiAyMDIxLTEyLTIyICBKIFBhc2NvZSAgPGpfcGFzY29lQGFwcGxlLmNvbT4KIAogICAgICAg
ICBbV2ViQXV0aG5dIFNldCBXZWIgQXV0aGVudGljYXRpb24gZXhwZXJpbWVudGFsIGZlYXR1cmUg
ZmxhZyBhcyBkZWZhdWx0IHRydWUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9n
IGIvU291cmNlL1dlYktpdC9DaGFuZ2VMb2cKaW5kZXggZmRmNTAwYzJhYzRhOTgxMGVmNGRhNWM2
ZGUxN2NhY2QzODQ3NzhhNC4uNGY0NmM4ZDRhNTk4YWZjNWFhOTE1YjI0MzIzYWE0OTYwMWM3MzUy
NCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYktp
dC9DaGFuZ2VMb2cKQEAgLTEsMyArMSwyMiBAQAorMjAyMS0xMi0yMiAgU2lodWkgTGl1ICA8c2lo
dWlfbGl1QGFwcGxlLmNvbT4KKworICAgICAgICBXZWJzaXRlRGF0YVN0b3JlOjpleGNsdWRlRGly
ZWN0b3J5RnJvbUJhY2t1cCBzaG91bGQgc2V0IGF0dHJpYnV0ZSBmb3IgZXhpc3RpbmcgZGlyZWN0
b3JpZXMKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIz
NDQwNAorCisgICAgICAgIFJldmlld2VkIGJ5IFlvdWVubiBGYWJsZXQuCisKKyAgICAgICAgY3Jl
YXRlRGlyZWN0b3J5QXRVUkwgcmV0dXJuaW5nIGZhbHNlIG1lYW5zIGRpcmVjdG9yeSBjYW5ub3Qg
YmUgY3JlYXRlZCwgYnV0IHRoZSBjYXVzZSBjYW4gYmUgdGhhdCBkaXJlY3RvcnkgCisgICAgICAg
IGFscmVhZHkgZXhpc3RzOyBzbyB3ZSBzaG91bGQgc2V0IGV4Y2x1ZGUgYXR0cmlidXRlIG9uIHRo
ZSBkaXJlY3Rvcnkgbm8gbWF0dGVyIGNyZWF0ZURpcmVjdG9yeUF0VVJMIHJldHVybnMgdHJ1ZQor
ICAgICAgICBvciBmYWxzZS4gQWxzbywgd2UgY2FuIHVzZSBleGlzdGluZyBGaWxlU3lzdGVtIGZ1
bmN0aW9ucy4gCisKKyAgICAgICAgQVBJIHRlc3Q6IFdLV2ViVmlldy5Mb2NhbFN0b3JhZ2VEaXJl
Y3RvcnlFeGNsdWRlZEZyb21CYWNrdXAKKworICAgICAgICAqIFVJUHJvY2Vzcy9XZWJzaXRlRGF0
YS9Db2NvYS9XZWJzaXRlRGF0YVN0b3JlQ29jb2EubW06CisgICAgICAgIChXZWJLaXQ6OldlYnNp
dGVEYXRhU3RvcmU6OmV4Y2x1ZGVEaXJlY3RvcnlGcm9tQmFja3VwKTogRGVsZXRlZC4KKyAgICAg
ICAgKiBVSVByb2Nlc3MvV2Vic2l0ZURhdGEvV2Vic2l0ZURhdGFTdG9yZS5jcHA6CisgICAgICAg
IChXZWJLaXQ6OldlYnNpdGVEYXRhU3RvcmU6OnBhcmFtZXRlcnMpOgorICAgICAgICAqIFVJUHJv
Y2Vzcy9XZWJzaXRlRGF0YS9XZWJzaXRlRGF0YVN0b3JlLmg6CisKIDIwMjEtMTItMjIgIENvbW1p
dCBRdWV1ZSAgPGNvbW1pdC1xdWV1ZUB3ZWJraXQub3JnPgogCiAgICAgICAgIFVucmV2aWV3ZWQs
IHJldmVydGluZyByMjg1MDg3LgpkaWZmIC0tZ2l0IGEvU291cmNlL1dURi93dGYvRmlsZVN5c3Rl
bS5jcHAgYi9Tb3VyY2UvV1RGL3d0Zi9GaWxlU3lzdGVtLmNwcAppbmRleCBkOTBhNmE1M2ZmMWRi
Yzc3MTY0MzhlMTVkMzMxYzc3ZThmZWFmYTgzLi5mNmVmZDNlNzA3NjVhOTVhOWNkNmM1YmVmN2U1
OWEwNmU1NDk2ZTE2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV1RGL3d0Zi9GaWxlU3lzdGVtLmNwcAor
KysgYi9Tb3VyY2UvV1RGL3d0Zi9GaWxlU3lzdGVtLmNwcApAQCAtMzA1LDE2ICszMDUsNiBAQCB2
b2lkIHNldE1ldGFkYXRhVVJMKGNvbnN0IFN0cmluZyYsIGNvbnN0IFN0cmluZyYsIGNvbnN0IFN0
cmluZyYpCiB7CiB9CiAKLWJvb2wgY2FuRXhjbHVkZUZyb21CYWNrdXAoKQotewotICAgIHJldHVy
biBmYWxzZTsKLX0KLQotYm9vbCBleGNsdWRlRnJvbUJhY2t1cChjb25zdCBTdHJpbmcmKQotewot
ICAgIHJldHVybiBmYWxzZTsKLX0KLQogI2VuZGlmCiAKIE1hcHBlZEZpbGVEYXRhOjpNYXBwZWRG
aWxlRGF0YShjb25zdCBTdHJpbmcmIGZpbGVQYXRoLCBNYXBwZWRGaWxlTW9kZSBtYXBNb2RlLCBi
b29sJiBzdWNjZXNzKQpAQCAtNDI2LDEwICs0MTYsMTcgQEAgdm9pZCBtYWtlU2FmZVRvVXNlTWVt
b3J5TWFwRm9yUGF0aChjb25zdCBTdHJpbmcmKQogI2VuZGlmCiAKICNpZiAhUExBVEZPUk0oQ09D
T0EpCisKIFN0cmluZyBjcmVhdGVUZW1wb3JhcnlaaXBBcmNoaXZlKGNvbnN0IFN0cmluZyYpCiB7
CiAgICAgcmV0dXJuIHsgfTsKIH0KKworYm9vbCBleGNsdWRlRnJvbUJhY2t1cChjb25zdCBTdHJp
bmcmKQoreworICAgIHJldHVybiBmYWxzZTsKK30KKwogI2VuZGlmCiAKIE1hcHBlZEZpbGVEYXRh
IG1hcFRvRmlsZShjb25zdCBTdHJpbmcmIHBhdGgsIHNpemVfdCBieXRlc1NpemUsIEZ1bmN0aW9u
PHZvaWQoY29uc3QgRnVuY3Rpb248Ym9vbChTcGFuPGNvbnN0IHVpbnQ4X3Q+KT4mKT4mJiBhcHBs
eSwgUGxhdGZvcm1GaWxlSGFuZGxlKiBvdXRwdXRIYW5kbGUpCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V1RGL3d0Zi9GaWxlU3lzdGVtLmggYi9Tb3VyY2UvV1RGL3d0Zi9GaWxlU3lzdGVtLmgKaW5kZXgg
ZDRkMmNlMmQ0YmIxZjgxOTVhZjE3ZDM0MjdlYzkyYWQwYjNhYTYwOC4uY2U2ODEyODYwYTAwZjkw
MmYyOTk4M2Y0OGNiMWNhMWVkMThiOTA5NyAxMDA2NDQKLS0tIGEvU291cmNlL1dURi93dGYvRmls
ZVN5c3RlbS5oCisrKyBiL1NvdXJjZS9XVEYvd3RmL0ZpbGVTeXN0ZW0uaApAQCAtMTM0LDkgKzEz
NCw3IEBAIFdURl9FWFBPUlRfUFJJVkFURSBzdGQ6Om9wdGlvbmFsPEZpbGVUeXBlPiBmaWxlVHlw
ZShjb25zdCBTdHJpbmcmKTsKIFdURl9FWFBPUlRfUFJJVkFURSBzdGQ6Om9wdGlvbmFsPEZpbGVU
eXBlPiBmaWxlVHlwZUZvbGxvd2luZ1N5bWxpbmtzKGNvbnN0IFN0cmluZyYpOwogCiBXVEZfRVhQ
T1JUX1BSSVZBVEUgdm9pZCBzZXRNZXRhZGF0YVVSTChjb25zdCBTdHJpbmcmIHBhdGgsIGNvbnN0
IFN0cmluZyYgdXJsU3RyaW5nLCBjb25zdCBTdHJpbmcmIHJlZmVycmVyID0geyB9KTsKLQotYm9v
bCBjYW5FeGNsdWRlRnJvbUJhY2t1cCgpOyAvLyBSZXR1cm5zIHRydWUgaWYgYW55IGZpbGUgY2Fu
IGV2ZXIgYmUgZXhjbHVkZWQgZnJvbSBiYWNrdXAuCi1ib29sIGV4Y2x1ZGVGcm9tQmFja3VwKGNv
bnN0IFN0cmluZyYpOyAvLyBSZXR1cm5zIHRydWUgaWYgc3VjY2Vzc2Z1bC4KK1dURl9FWFBPUlRf
UFJJVkFURSBib29sIGV4Y2x1ZGVGcm9tQmFja3VwKGNvbnN0IFN0cmluZyYpOyAvLyBSZXR1cm5z
IHRydWUgaWYgc3VjY2Vzc2Z1bC4KIAogV1RGX0VYUE9SVF9QUklWQVRFIFZlY3RvcjxTdHJpbmc+
IGxpc3REaXJlY3RvcnkoY29uc3QgU3RyaW5nJiBwYXRoKTsgLy8gUmV0dXJucyBmaWxlIG5hbWVz
LCBub3QgZnVsbCBwYXRocy4KIApkaWZmIC0tZ2l0IGEvU291cmNlL1dURi93dGYvY29jb2EvRmls
ZVN5c3RlbUNvY29hLm1tIGIvU291cmNlL1dURi93dGYvY29jb2EvRmlsZVN5c3RlbUNvY29hLm1t
CmluZGV4IGYzYjRlZThjYWYzNGVmNDRhNDlhZmU3Y2VjMTU2ZDZhMTBjYWY2M2YuLjg1NmE4OTI5
ODBlZDJhNDc3ZmI0NGVlNzYxN2U1YjNjZGY1NjE4MDggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XVEYv
d3RmL2NvY29hL0ZpbGVTeXN0ZW1Db2NvYS5tbQorKysgYi9Tb3VyY2UvV1RGL3d0Zi9jb2NvYS9G
aWxlU3lzdGVtQ29jb2EubW0KQEAgLTIyMiw1ICsyMjIsMTYgQEAgdm9pZCBtYWtlU2FmZVRvVXNl
TWVtb3J5TWFwRm9yUGF0aChjb25zdCBTdHJpbmcmIHBhdGgpCiB9CiAjZW5kaWYKIAorYm9vbCBl
eGNsdWRlRnJvbUJhY2t1cChjb25zdCBTdHJpbmcmIHBhdGgpCit7CisgICAgTlNFcnJvciAqZXJy
b3I7CisgICAgaWYgKCFbW05TVVJMIGZpbGVVUkxXaXRoUGF0aDooTlNTdHJpbmcgKilwYXRoIGlz
RGlyZWN0b3J5OllFU10gc2V0UmVzb3VyY2VWYWx1ZTpAWUVTIGZvcktleTpOU1VSTElzRXhjbHVk
ZWRGcm9tQmFja3VwS2V5IGVycm9yOiZlcnJvcl0pIHsKKyAgICAgICAgTE9HX0VSUk9SKCJDYW5u
b3QgZXhjbHVkZSBwYXRoICclcycgZnJvbSBiYWNrdXAgd2l0aCBlcnJvciAnJUAnIiwgcGF0aC51
dGY4KCkuZGF0YSgpLCBlcnJvci5sb2NhbGl6ZWREZXNjcmlwdGlvbik7CisgICAgICAgIHJldHVy
biBmYWxzZTsKKyAgICB9CisKKyAgICByZXR1cm4gdHJ1ZTsKK30KKwogfSAvLyBuYW1lc3BhY2Ug
RmlsZVN5c3RlbUltcGwKIH0gLy8gbmFtZXNwYWNlIFdURgpkaWZmIC0tZ2l0IGEvU291cmNlL1dU
Ri93dGYvbWFjL0ZpbGVTeXN0ZW1NYWMubW0gYi9Tb3VyY2UvV1RGL3d0Zi9tYWMvRmlsZVN5c3Rl
bU1hYy5tbQppbmRleCAyYWQ5MTVjYWY2Nzg5NzRlOWQ0YzBmZmVmZDk5MDFlMjRlYThiMWQyLi5i
YjYyZGFhMzM4MzRjMzI4ZDBlNTE5ZDZmMjVmNGNiOWZmYjkxNzg2IDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV1RGL3d0Zi9tYWMvRmlsZVN5c3RlbU1hYy5tbQorKysgYi9Tb3VyY2UvV1RGL3d0Zi9tYWMv
RmlsZVN5c3RlbU1hYy5tbQpAQCAtNTcsMTggKzU3LDYgQEAgdm9pZCBGaWxlU3lzdGVtOjpzZXRN
ZXRhZGF0YVVSTChjb25zdCBTdHJpbmcmIHBhdGgsIGNvbnN0IFN0cmluZyYgbWV0YWRhdGFVUkxT
dHIKICAgICB9KTsKIH0KIAotYm9vbCBGaWxlU3lzdGVtOjpjYW5FeGNsdWRlRnJvbUJhY2t1cCgp
Ci17Ci0gICAgcmV0dXJuIHRydWU7Ci19Ci0KLWJvb2wgRmlsZVN5c3RlbTo6ZXhjbHVkZUZyb21C
YWNrdXAoY29uc3QgU3RyaW5nJiBwYXRoKQotewotICAgIC8vIEl0IGlzIGNyaXRpY2FsIHRvIHBh
c3MgRkFMU0UgZm9yIGV4Y2x1ZGVCeVBhdGggYmVjYXVzZSBleGNsdWRpbmcgYnkgcGF0aCByZXF1
aXJlcyByb290IHByaXZpbGVnZXMuCi0gICAgQ1NCYWNrdXBTZXRJdGVtRXhjbHVkZWQoRmlsZVN5
c3RlbTo6cGF0aEFzVVJMKHBhdGgpLmdldCgpLCBUUlVFLCBGQUxTRSk7Ci0gICAgcmV0dXJuIHRy
dWU7Ci19Ci0KIH0gLy8gbmFtZXNwYWNlIFdURgogCiAjZW5kaWYgLy8gUExBVEZPUk0oTUFDKQpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2Vic2l0ZURhdGEvQ29jb2EvV2Vi
c2l0ZURhdGFTdG9yZUNvY29hLm1tIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2Vic2l0ZURh
dGEvQ29jb2EvV2Vic2l0ZURhdGFTdG9yZUNvY29hLm1tCmluZGV4IGJkZDBlODI1M2M1MjM4MWUz
YmRiNjE5MjUwMDJhZTM0ZjI4MjZiMTYuLjZlMDhlNGVlNjg1MjhkYzcyY2Q1OTZhMzE4NGRiZWU0
NDlkODlhYmEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYnNpdGVEYXRh
L0NvY29hL1dlYnNpdGVEYXRhU3RvcmVDb2NvYS5tbQorKysgYi9Tb3VyY2UvV2ViS2l0L1VJUHJv
Y2Vzcy9XZWJzaXRlRGF0YS9Db2NvYS9XZWJzaXRlRGF0YVN0b3JlQ29jb2EubW0KQEAgLTY0MCwx
NSArNjQwLDQgQEAgdm9pZCBXZWJzaXRlRGF0YVN0b3JlOjpzZW5kTmV0d29ya1Byb2Nlc3NYUENF
bmRwb2ludFRvQWxsUHJvY2Vzc2VzKCkKICNlbmRpZgogfQogCi0jaWYgUExBVEZPUk0oSU9TX0ZB
TUlMWSkKLQotdm9pZCBXZWJzaXRlRGF0YVN0b3JlOjpleGNsdWRlRGlyZWN0b3J5RnJvbUJhY2t1
cChjb25zdCBTdHJpbmcmIGRpcmVjdG9yeSkKLXsKLSAgICBOU1VSTCAqdXJsID0gW05TVVJMIGZp
bGVVUkxXaXRoUGF0aDooTlNTdHJpbmcgKilkaXJlY3RvcnkgaXNEaXJlY3Rvcnk6WUVTXTsKLSAg
ICBpZiAoW1tOU0ZpbGVNYW5hZ2VyIGRlZmF1bHRNYW5hZ2VyXSBjcmVhdGVEaXJlY3RvcnlBdFVS
TDp1cmwgd2l0aEludGVybWVkaWF0ZURpcmVjdG9yaWVzOllFUyBhdHRyaWJ1dGVzOm5pbCBlcnJv
cjpudWxscHRyXSkKLSAgICAgICAgW3VybCBzZXRSZXNvdXJjZVZhbHVlOkBZRVMgZm9yS2V5Ok5T
VVJMSXNFeGNsdWRlZEZyb21CYWNrdXBLZXkgZXJyb3I6bmlsXTsKLX0KLQotI2VuZGlmCi0KIH0K
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYnNpdGVEYXRhL1dlYnNpdGVE
YXRhU3RvcmUuY3BwIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2Vic2l0ZURhdGEvV2Vic2l0
ZURhdGFTdG9yZS5jcHAKaW5kZXggMjU2Yjg4NzQwM2RhZjY1ZDRiYTFiZTVhMThmNDVlZWRlY2I3
ODdkNi4uYTE4NmZkMTgxM2I1M2NiMDRiNWE0ZmMxYWQ5NGVmMzUwYjg5Y2RhNyAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2Vic2l0ZURhdGEvV2Vic2l0ZURhdGFTdG9yZS5j
cHAKKysrIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2Vic2l0ZURhdGEvV2Vic2l0ZURhdGFT
dG9yZS5jcHAKQEAgLTE5MDMsMTIgKzE5MDMsMTMgQEAgV2Vic2l0ZURhdGFTdG9yZVBhcmFtZXRl
cnMgV2Vic2l0ZURhdGFTdG9yZTo6cGFyYW1ldGVycygpCiAgICAgYXV0byBsb2NhbFN0b3JhZ2VE
aXJlY3RvcnkgPSByZXNvbHZlZExvY2FsU3RvcmFnZURpcmVjdG9yeSgpOwogICAgIGlmICghbG9j
YWxTdG9yYWdlRGlyZWN0b3J5LmlzRW1wdHkoKSkgewogICAgICAgICBwYXJhbWV0ZXJzLmxvY2Fs
U3RvcmFnZURpcmVjdG9yeSA9IGxvY2FsU3RvcmFnZURpcmVjdG9yeTsKLSNpZiBQTEFURk9STShJ
T1NfRkFNSUxZKQotICAgICAgICBleGNsdWRlRGlyZWN0b3J5RnJvbUJhY2t1cChsb2NhbFN0b3Jh
Z2VEaXJlY3RvcnkpOwotI2VuZGlmCiAgICAgICAgIC8vIEZJWE1FOiBTYW5kYm94RXh0ZW5zaW9u
OjpjcmVhdGVIYW5kbGVGb3JSZWFkV3JpdGVEaXJlY3RvcnkgcmVzb2x2ZXMgdGhlIGRpcmVjdG9y
eSwgYnV0IHRoYXQgaGFzIGFscmVhZHkgYmVlbiBkb25lLiBSZW1vdmUgdGhpcyBkdXBsaWNhdGUg
d29yay4KICAgICAgICAgaWYgKGF1dG8gaGFuZGxlID0gU2FuZGJveEV4dGVuc2lvbjo6Y3JlYXRl
SGFuZGxlRm9yUmVhZFdyaXRlRGlyZWN0b3J5KGxvY2FsU3RvcmFnZURpcmVjdG9yeSkpCiAgICAg
ICAgICAgICBwYXJhbWV0ZXJzLmxvY2FsU3RvcmFnZURpcmVjdG9yeUV4dGVuc2lvbkhhbmRsZSA9
IFdURk1vdmUoKmhhbmRsZSk7CisjaWYgUExBVEZPUk0oSU9TX0ZBTUlMWSkKKyAgICAgICAgRmls
ZVN5c3RlbTo6bWFrZUFsbERpcmVjdG9yaWVzKGxvY2FsU3RvcmFnZURpcmVjdG9yeSk7CisgICAg
ICAgIEZpbGVTeXN0ZW06OmV4Y2x1ZGVGcm9tQmFja3VwKGxvY2FsU3RvcmFnZURpcmVjdG9yeSk7
CisjZW5kaWYKICAgICB9CiAKICAgICBhdXRvIGNhY2hlU3RvcmFnZURpcmVjdG9yeSA9IHRoaXMt
PmNhY2hlU3RvcmFnZURpcmVjdG9yeSgpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9VSVBy
b2Nlc3MvV2Vic2l0ZURhdGEvV2Vic2l0ZURhdGFTdG9yZS5oIGIvU291cmNlL1dlYktpdC9VSVBy
b2Nlc3MvV2Vic2l0ZURhdGEvV2Vic2l0ZURhdGFTdG9yZS5oCmluZGV4IDE0N2EwYjliYTc4ZDg3
MWI3YTc2YTc0OWE3MjQxNzU1ZjNkNzc0NGQuLjM0YWU1YWY2MDczYzI1OTE0MjBmMjA5Y2UwZjc1
MzJiYWJkYzgzZTAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYnNpdGVE
YXRhL1dlYnNpdGVEYXRhU3RvcmUuaAorKysgYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJz
aXRlRGF0YS9XZWJzaXRlRGF0YVN0b3JlLmgKQEAgLTM3MSwxMCArMzcxLDYgQEAgcHVibGljOgog
CiAgICAgdm9pZCBjb3VudE5vbkRlZmF1bHRTZXNzaW9uU2V0cyhDb21wbGV0aW9uSGFuZGxlcjx2
b2lkKHNpemVfdCk+JiYpOwogCi0jaWYgUExBVEZPUk0oSU9TX0ZBTUlMWSkKLSAgICB2b2lkIGV4
Y2x1ZGVEaXJlY3RvcnlGcm9tQmFja3VwKGNvbnN0IFN0cmluZyYgZGlyZWN0b3J5KTsKLSNlbmRp
ZgotCiBwcml2YXRlOgogICAgIGVudW0gY2xhc3MgRm9yY2VSZWluaXRpYWxpemF0aW9uIDogYm9v
bCB7IE5vLCBZZXMgfTsKICNpZiBFTkFCTEUoQVBQX0JPVU5EX0RPTUFJTlMpCmRpZmYgLS1naXQg
YS9Ub29scy9DaGFuZ2VMb2cgYi9Ub29scy9DaGFuZ2VMb2cKaW5kZXggNjM4NzM5ZDgyMDIxMDFk
MmFhZGZhY2MxYzM5ZDRhNTUyODUyYzhlMC4uY2FjMmVkNDJjZGExNjNiNjFkNDdkOWIzYzFjOWRi
NDkzZGM1N2ViNiAxMDA2NDQKLS0tIGEvVG9vbHMvQ2hhbmdlTG9nCisrKyBiL1Rvb2xzL0NoYW5n
ZUxvZwpAQCAtMSwzICsxLDEzIEBACisyMDIxLTEyLTIyICBTaWh1aSBMaXUgIDxzaWh1aV9saXVA
YXBwbGUuY29tPgorCisgICAgICAgIFdlYnNpdGVEYXRhU3RvcmU6OmV4Y2x1ZGVEaXJlY3RvcnlG
cm9tQmFja3VwIHNob3VsZCBzZXQgYXR0cmlidXRlIGZvciBleGlzdGluZyBkaXJlY3Rvcmllcwor
ICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjM0NDA0CisK
KyAgICAgICAgUmV2aWV3ZWQgYnkgWW91ZW5uIEZhYmxldC4KKworICAgICAgICAqIFRlc3RXZWJL
aXRBUEkvVGVzdHMvV2ViS2l0Q29jb2EvTG9jYWxTdG9yYWdlUGVyc2lzdGVuY2UubW06CisgICAg
ICAgIChURVNUKToKKwogMjAyMS0xMi0yMiAgSiBQYXNjb2UgIDxqX3Bhc2NvZUBhcHBsZS5jb20+
CiAKICAgICAgICAgW1dlYkF1dGhuXSBTZXQgV2ViIEF1dGhlbnRpY2F0aW9uIGV4cGVyaW1lbnRh
bCBmZWF0dXJlIGZsYWcgYXMgZGVmYXVsdCB0cnVlCmRpZmYgLS1naXQgYS9Ub29scy9UZXN0V2Vi
S2l0QVBJL1Rlc3RzL1dlYktpdENvY29hL0xvY2FsU3RvcmFnZVBlcnNpc3RlbmNlLm1tIGIvVG9v
bHMvVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJLaXRDb2NvYS9Mb2NhbFN0b3JhZ2VQZXJzaXN0ZW5j
ZS5tbQppbmRleCBmOTZlNjExNzdmY2E5ZDRlZGUwODczYTk3NTI2ODQyMzUzMjY3NDY1Li4wOTNm
Y2Y4YTI4NDBhYjlmNDc0YTMzNzE2ZmJhNjFkZDNhOGVjZjcyIDEwMDY0NAotLS0gYS9Ub29scy9U
ZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktpdENvY29hL0xvY2FsU3RvcmFnZVBlcnNpc3RlbmNlLm1t
CisrKyBiL1Rvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0Q29jb2EvTG9jYWxTdG9yYWdl
UGVyc2lzdGVuY2UubW0KQEAgLTM5LDYgKzM5LDcgQEAKICNpbXBvcnQgPFdlYktpdC9XZWJLaXQu
aD4KICNpbXBvcnQgPFdlYktpdC9fV0tQcm9jZXNzUG9vbENvbmZpZ3VyYXRpb24uaD4KICNpbXBv
cnQgPFdlYktpdC9fV0tVc2VyU3R5bGVTaGVldC5oPgorI2ltcG9ydCA8V2ViS2l0L19XS1dlYnNp
dGVEYXRhU3RvcmVDb25maWd1cmF0aW9uLmg+CiAjaW1wb3J0IDx3dGYvUmV0YWluUHRyLmg+CiAj
aW1wb3J0IDx3dGYvdGV4dC9XVEZTdHJpbmcuaD4KIApAQCAtNDUyLDMgKzQ1MywzOCBAQCBURVNU
KFdLV2ViVmlldywgTG9jYWxTdG9yYWdlR3JvdXApCiAgICAgcnVuVGVzdCh0cnVlKTsKICAgICBy
dW5UZXN0KGZhbHNlKTsKIH0KKworI2lmIFBMQVRGT1JNKElPU19GQU1JTFkpCisKK1RFU1QoV0tX
ZWJWaWV3LCBMb2NhbFN0b3JhZ2VEaXJlY3RvcnlFeGNsdWRlZEZyb21CYWNrdXApCit7CisgICAg
YXV0byBjb25maWd1cmF0aW9uID0gYWRvcHROUyhbW1dLV2ViVmlld0NvbmZpZ3VyYXRpb24gYWxs
b2NdIGluaXRdKTsKKyAgICBSZXRhaW5QdHI8TlNVUkw+IHVybCA9IFtbW2NvbmZpZ3VyYXRpb24g
d2Vic2l0ZURhdGFTdG9yZV0gX2NvbmZpZ3VyYXRpb25dIF93ZWJTdG9yYWdlRGlyZWN0b3J5XTsK
KyAgICAvLyBDcmVhdGUgYSBkaXJlY3RvcnkgYW5kIG1ha2UgaXQgbm90IGV4Y2x1ZGVkLgorICAg
IFtbTlNGaWxlTWFuYWdlciBkZWZhdWx0TWFuYWdlcl0gY3JlYXRlRGlyZWN0b3J5QXRVUkw6dXJs
LmdldCgpIHdpdGhJbnRlcm1lZGlhdGVEaXJlY3RvcmllczpZRVMgYXR0cmlidXRlczpuaWwgZXJy
b3I6bnVsbHB0cl07CisgICAgW3VybC5nZXQoKSBzZXRSZXNvdXJjZVZhbHVlOkBOTyBmb3JLZXk6
TlNVUkxJc0V4Y2x1ZGVkRnJvbUJhY2t1cEtleSBlcnJvcjpuaWxdOworICAgIE5TTnVtYmVyICpp
c0RpcmVjdG9yeUV4Y2x1ZGVkID0gbmlsOworICAgIEVYUEVDVF9UUlVFKFt1cmwuZ2V0KCkgZ2V0
UmVzb3VyY2VWYWx1ZTomaXNEaXJlY3RvcnlFeGNsdWRlZCBmb3JLZXk6TlNVUkxJc0V4Y2x1ZGVk
RnJvbUJhY2t1cEtleSBlcnJvcjpuaWxdKTsKKyAgICBFWFBFQ1RfRkFMU0UoaXNEaXJlY3RvcnlF
eGNsdWRlZC5ib29sVmFsdWUpOworCisgICAgYXV0byBkZWxlZ2F0ZSA9IGFkb3B0TlMoW1tMb2Nh
bFN0b3JhZ2VOYXZpZ2F0aW9uRGVsZWdhdGUgYWxsb2NdIGluaXRdKTsKKyAgICBhdXRvIHdlYlZp
ZXcgPSBhZG9wdE5TKFtbV0tXZWJWaWV3IGFsbG9jXSBpbml0V2l0aEZyYW1lOk5TTWFrZVJlY3Qo
MCwgMCwgODAwLCA2MDApIGNvbmZpZ3VyYXRpb246Y29uZmlndXJhdGlvbi5nZXQoKV0pOworICAg
IFt3ZWJWaWV3IHNldE5hdmlnYXRpb25EZWxlZ2F0ZTpkZWxlZ2F0ZS5nZXQoKV07CisgICAgZGlk
RmluaXNoTmF2aWdhdGlvbkJvb2xlYW4gPSBmYWxzZTsKKyAgICBOU1VSTFJlcXVlc3QgKnJlcXVl
c3QgPSBbTlNVUkxSZXF1ZXN0IHJlcXVlc3RXaXRoVVJMOltbTlNCdW5kbGUgbWFpbkJ1bmRsZV0g
VVJMRm9yUmVzb3VyY2U6QCJzaW1wbGUiIHdpdGhFeHRlbnNpb246QCJodG1sIiBzdWJkaXJlY3Rv
cnk6QCJUZXN0V2ViS2l0QVBJLnJlc291cmNlcyJdXTsKKyAgICBbd2ViVmlldyBsb2FkUmVxdWVz
dDpyZXF1ZXN0XTsKKyAgICBUZXN0V2ViS2l0QVBJOjpVdGlsOjpydW4oJmRpZEZpbmlzaE5hdmln
YXRpb25Cb29sZWFuKTsKKworICAgIGJvb2wgZmluaXNoZWRSdW5uaW5nU2NyaXB0ID0gZmFsc2U7
CisgICAgW3dlYlZpZXcgZXZhbHVhdGVKYXZhU2NyaXB0OkAibG9jYWxTdG9yYWdlLmdldEl0ZW0o
J2tleScpOyIgY29tcGxldGlvbkhhbmRsZXI6IFsmXSAoaWQgcmVzdWx0LCBOU0Vycm9yICopIHsK
KyAgICAgICAgZmluaXNoZWRSdW5uaW5nU2NyaXB0ID0gdHJ1ZTsKKyAgICB9XTsKKyAgICBUZXN0
V2ViS2l0QVBJOjpVdGlsOjpydW4oJmZpbmlzaGVkUnVubmluZ1NjcmlwdCk7CisKKyAgICAvLyBD
cmVhdGUgbmV3IHVybCB0aGF0IGhhcyB1cGRhdGVkIHZhbHVlLgorICAgIHVybCA9IFtbW2NvbmZp
Z3VyYXRpb24gd2Vic2l0ZURhdGFTdG9yZV0gX2NvbmZpZ3VyYXRpb25dIF93ZWJTdG9yYWdlRGly
ZWN0b3J5XTsKKyAgICBFWFBFQ1RfVFJVRShbdXJsLmdldCgpIGdldFJlc291cmNlVmFsdWU6Jmlz
RGlyZWN0b3J5RXhjbHVkZWQgZm9yS2V5Ok5TVVJMSXNFeGNsdWRlZEZyb21CYWNrdXBLZXkgZXJy
b3I6bmlsXSk7CisgICAgRVhQRUNUX1RSVUUoaXNEaXJlY3RvcnlFeGNsdWRlZC5ib29sVmFsdWUp
OworfQorCisjZW5kaWYK
</data>

          </attachment>
      

    </bug>

</bugzilla>