<?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>180461</bug_id>
          
          <creation_ts>2017-12-05 17:48:37 -0800</creation_ts>
          <short_desc>CacheStorageEngineConnection should protect its IPC Connection when doing asynchronous tasks</short_desc>
          <delta_ts>2017-12-06 16:23:23 -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>Service Workers</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="youenn fablet">youennf</reporter>
          <assigned_to name="youenn fablet">youennf</assigned_to>
          <cc>ap</cc>
    
    <cc>beidson</cc>
    
    <cc>cdumez</cc>
    
    <cc>cgarcia</cc>
    
    <cc>commit-queue</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1378490</commentid>
    <comment_count>0</comment_count>
    <who name="youenn fablet">youennf</who>
    <bug_when>2017-12-05 17:48:37 -0800</bug_when>
    <thetext>CacheStorageEngineConnection should protect its IPC Connection when doing asynchronous tasks</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1378493</commentid>
    <comment_count>1</comment_count>
    <who name="youenn fablet">youennf</who>
    <bug_when>2017-12-05 17:49:49 -0800</bug_when>
    <thetext>Here is a crash log when doing:
run-webkit-tests --no-retry --no-sample -v --repeat-each 100 imported/w3c/web-platform-tests/service-workers/service-worker/fetch-canvas-tainting-cache.https.html

Process:               com.apple.WebKit.Networking.Development [86454]
Path:                  /Users/USER/*/WebKit.framework/Versions/A/XPCServices/com.apple.WebKit.Networking.xpc/Contents/MacOS/com.apple.WebKit.Networking.Development
Identifier:            com.apple.WebKit.Networking.Development
Version:               605+ (605.1.16+)
Code Type:             X86-64 (Native)
Parent Process:        ??? [1]
Responsible:           WebKitTestRunner [86453]
User ID:               501

Date/Time:             2017-12-05 14:55:53.013 -0800
OS Version:            Mac OS X 10.13.2 (17C88)
Report Version:        12
Anonymous UUID:        31B4759E-B7DD-798A-299A-02258BA90FE8

Sleep/Wake UUID:       55AF7277-A7F7-4AAF-BE2C-75CABF38A30E

Time Awake Since Boot: 250000 seconds
Time Since Wake:       1400 seconds

System Integrity Protection: enabled

Crashed Thread:        0  Dispatch queue: com.apple.libdispatch-io.opq

Exception Type:        EXC_CRASH (SIGABRT)
Exception Codes:       0x0000000000000000, 0x0000000000000000
Exception Note:        EXC_CORPSE_NOTIFY

Application Specific Information:
=================================================================
==86454==ERROR: AddressSanitizer: heap-use-after-free on address 0x60c000068210 at pc 0x00010a4239a7 bp 0x7ffee8986080 sp 0x7ffee8986078
READ of size 8 at 0x60c000068210 thread T0
==86454==WARNING: invalid path to external symbolizer!
==86454==WARNING: Failed to use and restart external symbolizer!
    #0 0x10a4239a6 in WTF::Ref&lt;IPC::Connection&gt;::get() const (/Users/ap/Safari/OpenSource/WebKitBuild/Release/WebKit.framework/Versions/A/WebKit:x86_64+0xcd9a6)
    #1 0x10a4718e4 in WebKit::CacheStorageEngineConnection::putRecords(PAL::SessionID, unsigned long long, unsigned long long, WTF::Vector&lt;WebCore::DOMCacheEngine::Record, 0ul, WTF::CrashOnOverflow, 16ul, WTF::FastMalloc&gt;&amp;&amp;)::$_5::operator()(WTF::Expected&lt;WTF::Vector&lt;unsigned long long, 0ul, WTF::CrashOnOverflow, 16ul, WTF::FastMalloc&gt;, WebCore::DOMCacheEngine::Error&gt;&amp;&amp;) const (/Users/ap/Safari/OpenSource/WebKitBuild/Release/WebKit.framework/Versions/A/WebKit:x86_64+0x11b8e4)
    #2 0x10a454985 in WebKit::CacheStorage::AsynchronousPutTaskCounter::~AsynchronousPutTaskCounter() (/Users/ap/Safari/OpenSource/WebKitBuild/Release/WebKit.framework/Versions/A/WebKit:x86_64+0xfe985)
    #3 0x10a45479e in WTF::RefCounted&lt;WebKit::CacheStorage::AsynchronousPutTaskCounter&gt;::deref() const (/Users/ap/Safari/OpenSource/WebKitBuild/Release/WebKit.framework/Versions/A/WebKit:x86_64+0xfe79e)
    #4 0x10a455824 in WTF::Function&lt;void (std::optional&lt;WebCore::DOMCacheEngine::Error&gt;&amp;&amp;)&gt;::CallableWrapper&lt;WebKit::CacheStorage::Cache::writeRecordToDisk(WebKit::CacheStorage::RecordInformation const&amp;, WebCore::DOMCacheEngine::Record&amp;&amp;, WTF::Ref&lt;WebKit::CacheStorage::AsynchronousPutTaskCounter&gt;&amp;&amp;, unsigned long long)::$_9&gt;::~CallableWrapper() (/Users/ap/Safari/OpenSource/WebKitBuild/Release/WebKit.framework/Versions/A/WebKit:x86_64+0xff824)
    #5 0x10a4557bd in WTF::Function&lt;void (std::optional&lt;WebCore::DOMCacheEngine::Error&gt;&amp;&amp;)&gt;::CallableWrapper&lt;WebKit::CacheStorage::Cache::writeRecordToDisk(WebKit::CacheStorage::RecordInformation const&amp;, WebCore::DOMCacheEngine::Record&amp;&amp;, WTF::Ref&lt;WebKit::CacheStorage::AsynchronousPutTaskCounter&gt;&amp;&amp;, unsigned long long)::$_9&gt;::~CallableWrapper() (/Users/ap/Safari/OpenSource/WebKitBuild/Release/WebKit.framework/Versions/A/WebKit:x86_64+0xff7bd)
    #6 0x10a460ed1 in WebKit::CacheStorage::Caches::writeRecord(WebKit::CacheStorage::Cache const&amp;, WebKit::CacheStorage::RecordInformation const&amp;, WebCore::DOMCacheEngine::Record&amp;&amp;, unsigned long long, WTF::Function&lt;void (std::optional&lt;WebCore::DOMCacheEngine::Error&gt;&amp;&amp;)&gt;&amp;&amp;)::$_17::~$_17() (/Users/ap/Safari/OpenSource/WebKitBuild/Release/WebKit.framework/Versions/A/WebKit:x86_64+0x10aed1)
    #7 0x10a4683f4 in WTF::Function&lt;void (WebKit::NetworkCache::Data const&amp;)&gt;::CallableWrapper&lt;WebKit::CacheStorage::Caches::writeRecord(WebKit::CacheStorage::Cache const&amp;, WebKit::CacheStorage::RecordInformation const&amp;, WebCore::DOMCacheEngine::Record&amp;&amp;, unsigned long long, WTF::Function&lt;void (std::optional&lt;WebCore::DOMCacheEngine::Error&gt;&amp;&amp;)&gt;&amp;&amp;)::$_17&gt;::~CallableWrapper() (/Users/ap/Safari/OpenSource/WebKitBuild/Release/WebKit.framework/Versions/A/WebKit:x86_64+0x1123f4)
    #8 0x10a46831d in WTF::Function&lt;void (WebKit::NetworkCache::Data const&amp;)&gt;::CallableWrapper&lt;WebKit::CacheStorage::Caches::writeRecord(WebKit::CacheStorage::Cache const&amp;, WebKit::CacheStorage::RecordInformation const&amp;, WebCore::DOMCacheEngine::Record&amp;&amp;, unsigned long long, WTF::Function&lt;void (std::optional&lt;WebCore::DOMCacheEngine::Error&gt;&amp;&amp;)&gt;&amp;&amp;)::$_17&gt;::~CallableWrapper() (/Users/ap/Safari/OpenSource/WebKitBuild/Release/WebKit.framework/Versions/A/WebKit:x86_64+0x11231d)
    #9 0x10a636924 in WebKit::NetworkCache::Storage::WriteOperation::~WriteOperation() (/Users/ap/Safari/OpenSource/WebKitBuild/Release/WebKit.framework/Versions/A/WebKit:x86_64+0x2e0924)
    #10 0x10a638cff in WTF::HashTraits&lt;std::__1::unique_ptr&lt;WebKit::NetworkCache::Storage::WriteOperation, std::__1::default_delete&lt;WebKit::NetworkCache::Storage::WriteOperation&gt; &gt; &gt;::customDeleteBucket(std::__1::unique_ptr&lt;WebKit::NetworkCache::Storage::WriteOperation, std::__1::default_delete&lt;WebKit::NetworkCache::Storage::WriteOperation&gt; &gt;&amp;) (/Users/ap/Safari/OpenSource/WebKitBuild/Release/WebKit.framework/Versions/A/WebKit:x86_64+0x2e2cff)
    #11 0x10a638b5b in WTF::HashTable&lt;std::__1::unique_ptr&lt;WebKit::NetworkCache::Storage::WriteOperation, std::__1::default_delete&lt;WebKit::NetworkCache::Storage::WriteOperation&gt; &gt;, std::__1::unique_ptr&lt;WebKit::NetworkCache::Storage::WriteOperation, std::__1::default_delete&lt;WebKit::NetworkCache::Storage::WriteOperation&gt; &gt;, WTF::IdentityExtractor, WTF::PtrHash&lt;std::__1::unique_ptr&lt;WebKit::NetworkCache::Storage::WriteOperation, std::__1::default_delete&lt;WebKit::NetworkCache::Storage::WriteOperation&gt; &gt; &gt;, WTF::HashTraits&lt;std::__1::unique_ptr&lt;WebKit::NetworkCache::Storage::WriteOperation, std::__1::default_delete&lt;WebKit::NetworkCache::Storage::WriteOperation&gt; &gt; &gt;, WTF::HashTraits&lt;std::__1::unique_ptr&lt;WebKit::NetworkCache::Storage::WriteOperation, std::__1::default_delete&lt;WebKit::NetworkCache::Storage::WriteOperation&gt; &gt; &gt; &gt;::remove(std::__1::unique_ptr&lt;WebKit::NetworkCache::Storage::WriteOperation, std::__1::default_delete&lt;WebKit::NetworkCache::Storage::WriteOperation&gt; &gt;*) (/Users/ap/Safari/OpenSource/WebKitBuild/Release/WebKit.framework/Versions/A/WebKit:x86_64+0x2e2b5b)
    #12 0x10a6389ba in WTF::HashTable&lt;std::__1::unique_ptr&lt;WebKit::NetworkCache::Storage::WriteOperation, std::__1::default_delete&lt;WebKit::NetworkCache::Storage::WriteOperation&gt; &gt;, std::__1::unique_ptr&lt;WebKit::NetworkCache::Storage::WriteOperation, std::__1::default_delete&lt;WebKit::NetworkCache::Storage::WriteOperation&gt; &gt;, WTF::IdentityExtractor, WTF::PtrHash&lt;std::__1::unique_ptr&lt;WebKit::NetworkCache::Storage::WriteOperation, std::__1::default_delete&lt;WebKit::NetworkCache::Storage::WriteOperation&gt; &gt; &gt;, WTF::HashTraits&lt;std::__1::unique_ptr&lt;WebKit::NetworkCache::Storage::WriteOperation, std::__1::default_delete&lt;WebKit::NetworkCache::Storage::WriteOperation&gt; &gt; &gt;, WTF::HashTraits&lt;std::__1::unique_ptr&lt;WebKit::NetworkCache::Storage::WriteOperation, std::__1::default_delete&lt;WebKit::NetworkCache::Storage::WriteOperation&gt; &gt; &gt; &gt;::removeWithoutEntryConsistencyCheck(WTF::HashTableConstIterator&lt;std::__1::unique_ptr&lt;WebKit::NetworkCache::Storage::WriteOperation, std::__1::default_delete&lt;WebKit::NetworkCache::Storage::WriteOperation&gt; &gt;, std::__1::unique_ptr&lt;WebKit::NetworkCache::Storage::WriteOperation, std::__1::default_delete&lt;WebKit::NetworkCache::Storage::WriteOperation&gt; &gt;, WTF::IdentityExtractor, WTF::PtrHash&lt;std::__1::unique_ptr&lt;WebKit::NetworkCache::Storage::WriteOperation, std::__1::default_delete&lt;WebKit::NetworkCache::Storage::WriteOperation&gt; &gt; &gt;, WTF::HashTraits&lt;std::__1::unique_ptr&lt;WebKit::NetworkCache::Storage::WriteOperation, std::__1::default_delete&lt;WebKit::NetworkCache::Storage::WriteOperation&gt; &gt; &gt;, WTF::HashTraits&lt;std::__1::unique_ptr&lt;WebKit::NetworkCache::Storage::WriteOperation, std::__1::default_delete&lt;WebKit::NetworkCache::Storage::WriteOperation&gt; &gt; &gt; &gt;) (/Users/ap/Safari/OpenSource/WebKitBuild/Release/WebKit.framework/Versions/A/WebKit:x86_64+0x2e29ba)
    #13 0x10a638474 in WTF::HashSet&lt;std::__1::unique_ptr&lt;WebKit::NetworkCache::Storage::WriteOperation, std::__1::default_delete&lt;WebKit::NetworkCache::Storage::WriteOperation&gt; &gt;, WTF::PtrHash&lt;std::__1::unique_ptr&lt;WebKit::NetworkCache::Storage::WriteOperation, std::__1::default_delete&lt;WebKit::NetworkCache::Storage::WriteOperation&gt; &gt; &gt;, WTF::HashTraits&lt;std::__1::unique_ptr&lt;WebKit::NetworkCache::Storage::WriteOperation, std::__1::default_delete&lt;WebKit::NetworkCache::Storage::WriteOperation&gt; &gt; &gt; &gt;::remove(WTF::HashTableConstIteratorAdapter&lt;WTF::HashTable&lt;std::__1::unique_ptr&lt;WebKit::NetworkCache::Storage::WriteOperation, std::__1::default_delete&lt;WebKit::NetworkCache::Storage::WriteOperation&gt; &gt;, std::__1::unique_ptr&lt;WebKit::NetworkCache::Storage::WriteOperation, std::__1::default_delete&lt;WebKit::NetworkCache::Storage::WriteOperation&gt; &gt;, WTF::IdentityExtractor, WTF::PtrHash&lt;std::__1::unique_ptr&lt;WebKit::NetworkCache::Storage::WriteOperation, std::__1::default_delete&lt;WebKit::NetworkCache::Storage::WriteOperation&gt; &gt; &gt;, WTF::HashTraits&lt;std::__1::unique_ptr&lt;WebKit::NetworkCache::Storage::WriteOperation, std::__1::default_delete&lt;WebKit::NetworkCache::Storage::WriteOperation&gt; &gt; &gt;, WTF::HashTraits&lt;std::__1::unique_ptr&lt;WebKit::NetworkCache::Storage::WriteOperation, std::__1::default_delete&lt;WebKit::NetworkCache::Storage::WriteOperation&gt; &gt; &gt; &gt;, std::__1::unique_ptr&lt;WebKit::NetworkCache::Storage::WriteOperation, std::__1::default_delete&lt;WebKit::NetworkCache::Storage::WriteOperation&gt; &gt; &gt;) (/Users/ap/Safari/OpenSource/WebKitBuild/Release/WebKit.framework/Versions/A/WebKit:x86_64+0x2e2474)
    #14 0x10a629282 in std::__1::enable_if&lt;IsSmartPtr&lt;std::__1::unique_ptr&lt;WebKit::NetworkCache::Storage::WriteOperation, std::__1::default_delete&lt;WebKit::NetworkCache::Storage::WriteOperation&gt; &gt; &gt;::value, bool&gt;::type WTF::HashSet&lt;std::__1::unique_ptr&lt;WebKit::NetworkCache::Storage::WriteOperation, std::__1::default_delete&lt;WebKit::NetworkCache::Storage::WriteOperation&gt; &gt;, WTF::PtrHash&lt;std::__1::unique_ptr&lt;WebKit::NetworkCache::Storage::WriteOperation, std::__1::default_delete&lt;WebKit::NetworkCache::Storage::WriteOperation&gt; &gt; &gt;, WTF::HashTraits&lt;std::__1::unique_ptr&lt;WebKit::NetworkCache::Storage::WriteOperation, std::__1::default_delete&lt;WebKit::NetworkCache::Storage::WriteOperation&gt; &gt; &gt; &gt;::remove&lt;std::__1::unique_ptr&lt;WebKit::NetworkCache::Storage::WriteOperation, std::__1::default_delete&lt;WebKit::NetworkCache::Storage::WriteOperation&gt; &gt; &gt;(WTF::GetPtrHelper&lt;std::__1::unique_ptr&lt;WebKit::NetworkCache::Storage::WriteOperation, std::__1::default_delete&lt;WebKit::NetworkCache::Storage::WriteOperation&gt; &gt; &gt;::PtrType) (/Users/ap/Safari/OpenSource/WebKitBuild/Release/WebKit.framework/Versions/A/WebKit:x86_64+0x2d3282)
    #15 0x10a629116 in WebKit::NetworkCache::Storage::finishWriteOperation(WebKit::NetworkCache::Storage::WriteOperation&amp;) (/Users/ap/Safari/OpenSource/WebKitBuild/Release/WebKit.framework/Versions/A/WebKit:x86_64+0x2d3116)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1378494</commentid>
    <comment_count>2</comment_count>
      <attachid>328540</attachid>
    <who name="youenn fablet">youennf</who>
    <bug_when>2017-12-05 17:52:06 -0800</bug_when>
    <thetext>Created attachment 328540
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1378682</commentid>
    <comment_count>3</comment_count>
      <attachid>328540</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2017-12-06 10:55:53 -0800</bug_when>
    <thetext>Comment on attachment 328540
Patch

Clearing flags on attachment: 328540

Committed r225578: &lt;https://trac.webkit.org/changeset/225578&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1378683</commentid>
    <comment_count>4</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2017-12-06 10:55:55 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1378882</commentid>
    <comment_count>5</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2017-12-06 16:23:23 -0800</bug_when>
    <thetext>&lt;rdar://problem/35895883&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>328540</attachid>
            <date>2017-12-05 17:52:06 -0800</date>
            <delta_ts>2017-12-06 10:55:53 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-180461-20171205175205.patch</filename>
            <type>text/plain</type>
            <size>7608</size>
            <attacher name="youenn fablet">youennf</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjI1NTExCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCmluZGV4IDFjMDAzODNiNWYxZjAzNWFi
YzIyNzM1ZmUyYWU2Y2E0ZGQ3OWYwMDIuLmFkM2UzZjNmZWZmYjQ0OTVhOGIxZWE1ZWU4MTUxY2I4
ZTYxYjIxOTEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJj
ZS9XZWJLaXQvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjIgQEAKKzIwMTctMTItMDUgIFlvdWVubiBG
YWJsZXQgIDx5b3Vlbm5AYXBwbGUuY29tPgorCisgICAgICAgIENhY2hlU3RvcmFnZUVuZ2luZUNv
bm5lY3Rpb24gc2hvdWxkIHByb3RlY3QgaXRzIElQQyBDb25uZWN0aW9uIHdoZW4gZG9pbmcgYXN5
bmNocm9ub3VzIHRhc2tzCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVn
LmNnaT9pZD0xODA0NjEKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKwor
ICAgICAgICBQcm90ZWN0aW5nIHRoZSBJUEMgY29ubmVjdGlvbiBpbnN0ZWFkIG9mIHRoZSBDYWNo
ZVN0b3JhZ2VFbmdpbmVDb25uZWN0aW9uCisgICAgICAgIHNpbmNlIENhY2hlU3RvcmFnZUVuZ2lu
ZUNvbm5lY3Rpb24gb25seSBrZWVwcyBhIHJlZmVyZW5jZSB0byB0aGUgTmV0d29ya0Nvbm5lY3Rp
b25Ub1dlYlByb2Nlc3MuCisKKyAgICAgICAgKiBOZXR3b3JrUHJvY2Vzcy9jYWNoZS9DYWNoZVN0
b3JhZ2VFbmdpbmVDb25uZWN0aW9uLmNwcDoKKyAgICAgICAgKFdlYktpdDo6Q2FjaGVTdG9yYWdl
RW5naW5lQ29ubmVjdGlvbjo6b3Blbik6CisgICAgICAgIChXZWJLaXQ6OkNhY2hlU3RvcmFnZUVu
Z2luZUNvbm5lY3Rpb246OnJlbW92ZSk6CisgICAgICAgIChXZWJLaXQ6OkNhY2hlU3RvcmFnZUVu
Z2luZUNvbm5lY3Rpb246OmNhY2hlcyk6CisgICAgICAgIChXZWJLaXQ6OkNhY2hlU3RvcmFnZUVu
Z2luZUNvbm5lY3Rpb246OnJldHJpZXZlUmVjb3Jkcyk6CisgICAgICAgIChXZWJLaXQ6OkNhY2hl
U3RvcmFnZUVuZ2luZUNvbm5lY3Rpb246OmRlbGV0ZU1hdGNoaW5nUmVjb3Jkcyk6CisgICAgICAg
IChXZWJLaXQ6OkNhY2hlU3RvcmFnZUVuZ2luZUNvbm5lY3Rpb246OnB1dFJlY29yZHMpOgorICAg
ICAgICAoV2ViS2l0OjpDYWNoZVN0b3JhZ2VFbmdpbmVDb25uZWN0aW9uOjpjbGVhck1lbW9yeVJl
cHJlc2VudGF0aW9uKToKKwogMjAxNy0xMi0wNCAgWW91ZW5uIEZhYmxldCAgPHlvdWVubkBhcHBs
ZS5jb20+CiAKICAgICAgICAgSW1wbGVtZW50IGh0dHBzOi8vdzNjLmdpdGh1Yi5pby9TZXJ2aWNl
V29ya2VyLyNjbGllbnRzLWNsYWltCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQ
cm9jZXNzL2NhY2hlL0NhY2hlU3RvcmFnZUVuZ2luZUNvbm5lY3Rpb24uY3BwIGIvU291cmNlL1dl
YktpdC9OZXR3b3JrUHJvY2Vzcy9jYWNoZS9DYWNoZVN0b3JhZ2VFbmdpbmVDb25uZWN0aW9uLmNw
cAppbmRleCA4NTJhZDcyOWFjMjc3YjIzOThlMmJlMTZkNGQ5NDIxZjVmZDhlNTI1Li4yMTY2MmFh
ZjYyZDkwYmY4ODRkNTZjNDZkZjg1ZmQ3OTgxZTM5ZmY4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
S2l0L05ldHdvcmtQcm9jZXNzL2NhY2hlL0NhY2hlU3RvcmFnZUVuZ2luZUNvbm5lY3Rpb24uY3Bw
CisrKyBiL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvY2FjaGUvQ2FjaGVTdG9yYWdlRW5n
aW5lQ29ubmVjdGlvbi5jcHAKQEAgLTU1LDQzICs1NSw0MyBAQCBDYWNoZVN0b3JhZ2VFbmdpbmVD
b25uZWN0aW9uOjp+Q2FjaGVTdG9yYWdlRW5naW5lQ29ubmVjdGlvbigpCiAKIHZvaWQgQ2FjaGVT
dG9yYWdlRW5naW5lQ29ubmVjdGlvbjo6b3BlbihQQUw6OlNlc3Npb25JRCBzZXNzaW9uSUQsIHVp
bnQ2NF90IHJlcXVlc3RJZGVudGlmaWVyLCBjb25zdCBTdHJpbmcmIG9yaWdpbiwgY29uc3QgU3Ry
aW5nJiBjYWNoZU5hbWUpCiB7Ci0gICAgRW5naW5lOjpmcm9tKHNlc3Npb25JRCkub3Blbihvcmln
aW4sIGNhY2hlTmFtZSwgW3Byb3RlY3RlZFRoaXMgPSBtYWtlUmVmKCp0aGlzKSwgdGhpcywgc2Vz
c2lvbklELCByZXF1ZXN0SWRlbnRpZmllcl0oY29uc3QgQ2FjaGVJZGVudGlmaWVyT3JFcnJvciYg
cmVzdWx0KSB7Ci0gICAgICAgIG1fY29ubmVjdGlvbi5jb25uZWN0aW9uKCkuc2VuZChNZXNzYWdl
czo6V2ViQ2FjaGVTdG9yYWdlQ29ubmVjdGlvbjo6T3BlbkNvbXBsZXRlZChyZXF1ZXN0SWRlbnRp
ZmllciwgcmVzdWx0KSwgc2Vzc2lvbklELnNlc3Npb25JRCgpKTsKKyAgICBFbmdpbmU6OmZyb20o
c2Vzc2lvbklEKS5vcGVuKG9yaWdpbiwgY2FjaGVOYW1lLCBbY29ubmVjdGlvbiA9IG1ha2VSZWYo
bV9jb25uZWN0aW9uLmNvbm5lY3Rpb24oKSksIHRoaXMsIHNlc3Npb25JRCwgcmVxdWVzdElkZW50
aWZpZXJdKGNvbnN0IENhY2hlSWRlbnRpZmllck9yRXJyb3ImIHJlc3VsdCkgeworICAgICAgICBj
b25uZWN0aW9uLT5zZW5kKE1lc3NhZ2VzOjpXZWJDYWNoZVN0b3JhZ2VDb25uZWN0aW9uOjpPcGVu
Q29tcGxldGVkKHJlcXVlc3RJZGVudGlmaWVyLCByZXN1bHQpLCBzZXNzaW9uSUQuc2Vzc2lvbklE
KCkpOwogICAgIH0pOwogfQogCiB2b2lkIENhY2hlU3RvcmFnZUVuZ2luZUNvbm5lY3Rpb246OnJl
bW92ZShQQUw6OlNlc3Npb25JRCBzZXNzaW9uSUQsIHVpbnQ2NF90IHJlcXVlc3RJZGVudGlmaWVy
LCB1aW50NjRfdCBjYWNoZUlkZW50aWZpZXIpCiB7Ci0gICAgRW5naW5lOjpmcm9tKHNlc3Npb25J
RCkucmVtb3ZlKGNhY2hlSWRlbnRpZmllciwgW3Byb3RlY3RlZFRoaXMgPSBtYWtlUmVmKCp0aGlz
KSwgdGhpcywgc2Vzc2lvbklELCByZXF1ZXN0SWRlbnRpZmllcl0oY29uc3QgQ2FjaGVJZGVudGlm
aWVyT3JFcnJvciYgcmVzdWx0KSB7Ci0gICAgICAgIG1fY29ubmVjdGlvbi5jb25uZWN0aW9uKCku
c2VuZChNZXNzYWdlczo6V2ViQ2FjaGVTdG9yYWdlQ29ubmVjdGlvbjo6UmVtb3ZlQ29tcGxldGVk
KHJlcXVlc3RJZGVudGlmaWVyLCByZXN1bHQpLCBzZXNzaW9uSUQuc2Vzc2lvbklEKCkpOworICAg
IEVuZ2luZTo6ZnJvbShzZXNzaW9uSUQpLnJlbW92ZShjYWNoZUlkZW50aWZpZXIsIFtjb25uZWN0
aW9uID0gbWFrZVJlZihtX2Nvbm5lY3Rpb24uY29ubmVjdGlvbigpKSwgc2Vzc2lvbklELCByZXF1
ZXN0SWRlbnRpZmllcl0oY29uc3QgQ2FjaGVJZGVudGlmaWVyT3JFcnJvciYgcmVzdWx0KSB7Cisg
ICAgICAgIGNvbm5lY3Rpb24tPnNlbmQoTWVzc2FnZXM6OldlYkNhY2hlU3RvcmFnZUNvbm5lY3Rp
b246OlJlbW92ZUNvbXBsZXRlZChyZXF1ZXN0SWRlbnRpZmllciwgcmVzdWx0KSwgc2Vzc2lvbklE
LnNlc3Npb25JRCgpKTsKICAgICB9KTsKIH0KIAogdm9pZCBDYWNoZVN0b3JhZ2VFbmdpbmVDb25u
ZWN0aW9uOjpjYWNoZXMoUEFMOjpTZXNzaW9uSUQgc2Vzc2lvbklELCB1aW50NjRfdCByZXF1ZXN0
SWRlbnRpZmllciwgY29uc3QgU3RyaW5nJiBvcmlnaW4sIHVpbnQ2NF90IHVwZGF0ZUNvdW50ZXIp
CiB7Ci0gICAgRW5naW5lOjpmcm9tKHNlc3Npb25JRCkucmV0cmlldmVDYWNoZXMob3JpZ2luLCB1
cGRhdGVDb3VudGVyLCBbcHJvdGVjdGVkVGhpcyA9IG1ha2VSZWYoKnRoaXMpLCB0aGlzLCBzZXNz
aW9uSUQsIG9yaWdpbiwgcmVxdWVzdElkZW50aWZpZXJdKENhY2hlSW5mb3NPckVycm9yJiYgcmVz
dWx0KSB7Ci0gICAgICAgIG1fY29ubmVjdGlvbi5jb25uZWN0aW9uKCkuc2VuZChNZXNzYWdlczo6
V2ViQ2FjaGVTdG9yYWdlQ29ubmVjdGlvbjo6VXBkYXRlQ2FjaGVzKHJlcXVlc3RJZGVudGlmaWVy
LCByZXN1bHQpLCBzZXNzaW9uSUQuc2Vzc2lvbklEKCkpOworICAgIEVuZ2luZTo6ZnJvbShzZXNz
aW9uSUQpLnJldHJpZXZlQ2FjaGVzKG9yaWdpbiwgdXBkYXRlQ291bnRlciwgW2Nvbm5lY3Rpb24g
PSBtYWtlUmVmKG1fY29ubmVjdGlvbi5jb25uZWN0aW9uKCkpLCBzZXNzaW9uSUQsIG9yaWdpbiwg
cmVxdWVzdElkZW50aWZpZXJdKENhY2hlSW5mb3NPckVycm9yJiYgcmVzdWx0KSB7CisgICAgICAg
IGNvbm5lY3Rpb24tPnNlbmQoTWVzc2FnZXM6OldlYkNhY2hlU3RvcmFnZUNvbm5lY3Rpb246OlVw
ZGF0ZUNhY2hlcyhyZXF1ZXN0SWRlbnRpZmllciwgcmVzdWx0KSwgc2Vzc2lvbklELnNlc3Npb25J
RCgpKTsKICAgICB9KTsKIH0KIAogdm9pZCBDYWNoZVN0b3JhZ2VFbmdpbmVDb25uZWN0aW9uOjpy
ZXRyaWV2ZVJlY29yZHMoUEFMOjpTZXNzaW9uSUQgc2Vzc2lvbklELCB1aW50NjRfdCByZXF1ZXN0
SWRlbnRpZmllciwgdWludDY0X3QgY2FjaGVJZGVudGlmaWVyLCBXZWJDb3JlOjpVUkwmJiB1cmwp
CiB7Ci0gICAgRW5naW5lOjpmcm9tKHNlc3Npb25JRCkucmV0cmlldmVSZWNvcmRzKGNhY2hlSWRl
bnRpZmllciwgV1RGTW92ZSh1cmwpLCBbcHJvdGVjdGVkVGhpcyA9IG1ha2VSZWYoKnRoaXMpLCB0
aGlzLCBzZXNzaW9uSUQsIHJlcXVlc3RJZGVudGlmaWVyXShSZWNvcmRzT3JFcnJvciYmIHJlc3Vs
dCkgewotICAgICAgICBtX2Nvbm5lY3Rpb24uY29ubmVjdGlvbigpLnNlbmQoTWVzc2FnZXM6Oldl
YkNhY2hlU3RvcmFnZUNvbm5lY3Rpb246OlVwZGF0ZVJlY29yZHMocmVxdWVzdElkZW50aWZpZXIs
IHJlc3VsdCksIHNlc3Npb25JRC5zZXNzaW9uSUQoKSk7CisgICAgRW5naW5lOjpmcm9tKHNlc3Np
b25JRCkucmV0cmlldmVSZWNvcmRzKGNhY2hlSWRlbnRpZmllciwgV1RGTW92ZSh1cmwpLCBbY29u
bmVjdGlvbiA9IG1ha2VSZWYobV9jb25uZWN0aW9uLmNvbm5lY3Rpb24oKSksIHNlc3Npb25JRCwg
cmVxdWVzdElkZW50aWZpZXJdKFJlY29yZHNPckVycm9yJiYgcmVzdWx0KSB7CisgICAgICAgIGNv
bm5lY3Rpb24tPnNlbmQoTWVzc2FnZXM6OldlYkNhY2hlU3RvcmFnZUNvbm5lY3Rpb246OlVwZGF0
ZVJlY29yZHMocmVxdWVzdElkZW50aWZpZXIsIHJlc3VsdCksIHNlc3Npb25JRC5zZXNzaW9uSUQo
KSk7CiAgICAgfSk7CiB9CiAKIHZvaWQgQ2FjaGVTdG9yYWdlRW5naW5lQ29ubmVjdGlvbjo6ZGVs
ZXRlTWF0Y2hpbmdSZWNvcmRzKFBBTDo6U2Vzc2lvbklEIHNlc3Npb25JRCwgdWludDY0X3QgcmVx
dWVzdElkZW50aWZpZXIsIHVpbnQ2NF90IGNhY2hlSWRlbnRpZmllciwgV2ViQ29yZTo6UmVzb3Vy
Y2VSZXF1ZXN0JiYgcmVxdWVzdCwgV2ViQ29yZTo6Q2FjaGVRdWVyeU9wdGlvbnMmJiBvcHRpb25z
KQogewotICAgIEVuZ2luZTo6ZnJvbShzZXNzaW9uSUQpLmRlbGV0ZU1hdGNoaW5nUmVjb3Jkcyhj
YWNoZUlkZW50aWZpZXIsIFdURk1vdmUocmVxdWVzdCksIFdURk1vdmUob3B0aW9ucyksIFtwcm90
ZWN0ZWRUaGlzID0gbWFrZVJlZigqdGhpcyksIHRoaXMsIHNlc3Npb25JRCwgcmVxdWVzdElkZW50
aWZpZXJdKFJlY29yZElkZW50aWZpZXJzT3JFcnJvciYmIHJlc3VsdCkgewotICAgICAgICBtX2Nv
bm5lY3Rpb24uY29ubmVjdGlvbigpLnNlbmQoTWVzc2FnZXM6OldlYkNhY2hlU3RvcmFnZUNvbm5l
Y3Rpb246OkRlbGV0ZVJlY29yZHNDb21wbGV0ZWQocmVxdWVzdElkZW50aWZpZXIsIHJlc3VsdCks
IHNlc3Npb25JRC5zZXNzaW9uSUQoKSk7CisgICAgRW5naW5lOjpmcm9tKHNlc3Npb25JRCkuZGVs
ZXRlTWF0Y2hpbmdSZWNvcmRzKGNhY2hlSWRlbnRpZmllciwgV1RGTW92ZShyZXF1ZXN0KSwgV1RG
TW92ZShvcHRpb25zKSwgW2Nvbm5lY3Rpb24gPSBtYWtlUmVmKG1fY29ubmVjdGlvbi5jb25uZWN0
aW9uKCkpLCBzZXNzaW9uSUQsIHJlcXVlc3RJZGVudGlmaWVyXShSZWNvcmRJZGVudGlmaWVyc09y
RXJyb3ImJiByZXN1bHQpIHsKKyAgICAgICAgY29ubmVjdGlvbi0+c2VuZChNZXNzYWdlczo6V2Vi
Q2FjaGVTdG9yYWdlQ29ubmVjdGlvbjo6RGVsZXRlUmVjb3Jkc0NvbXBsZXRlZChyZXF1ZXN0SWRl
bnRpZmllciwgcmVzdWx0KSwgc2Vzc2lvbklELnNlc3Npb25JRCgpKTsKICAgICB9KTsKIH0KIAog
dm9pZCBDYWNoZVN0b3JhZ2VFbmdpbmVDb25uZWN0aW9uOjpwdXRSZWNvcmRzKFBBTDo6U2Vzc2lv
bklEIHNlc3Npb25JRCwgdWludDY0X3QgcmVxdWVzdElkZW50aWZpZXIsIHVpbnQ2NF90IGNhY2hl
SWRlbnRpZmllciwgVmVjdG9yPFJlY29yZD4mJiByZWNvcmRzKQogewotICAgIEVuZ2luZTo6ZnJv
bShzZXNzaW9uSUQpLnB1dFJlY29yZHMoY2FjaGVJZGVudGlmaWVyLCBXVEZNb3ZlKHJlY29yZHMp
LCBbcHJvdGVjdGVkVGhpcyA9IG1ha2VSZWYoKnRoaXMpLCB0aGlzLCBzZXNzaW9uSUQsIHJlcXVl
c3RJZGVudGlmaWVyXShSZWNvcmRJZGVudGlmaWVyc09yRXJyb3ImJiByZXN1bHQpIHsKLSAgICAg
ICAgbV9jb25uZWN0aW9uLmNvbm5lY3Rpb24oKS5zZW5kKE1lc3NhZ2VzOjpXZWJDYWNoZVN0b3Jh
Z2VDb25uZWN0aW9uOjpQdXRSZWNvcmRzQ29tcGxldGVkKHJlcXVlc3RJZGVudGlmaWVyLCByZXN1
bHQpLCBzZXNzaW9uSUQuc2Vzc2lvbklEKCkpOworICAgIEVuZ2luZTo6ZnJvbShzZXNzaW9uSUQp
LnB1dFJlY29yZHMoY2FjaGVJZGVudGlmaWVyLCBXVEZNb3ZlKHJlY29yZHMpLCBbY29ubmVjdGlv
biA9IG1ha2VSZWYobV9jb25uZWN0aW9uLmNvbm5lY3Rpb24oKSksIHNlc3Npb25JRCwgcmVxdWVz
dElkZW50aWZpZXJdKFJlY29yZElkZW50aWZpZXJzT3JFcnJvciYmIHJlc3VsdCkgeworICAgICAg
ICBjb25uZWN0aW9uLT5zZW5kKE1lc3NhZ2VzOjpXZWJDYWNoZVN0b3JhZ2VDb25uZWN0aW9uOjpQ
dXRSZWNvcmRzQ29tcGxldGVkKHJlcXVlc3RJZGVudGlmaWVyLCByZXN1bHQpLCBzZXNzaW9uSUQu
c2Vzc2lvbklEKCkpOwogICAgIH0pOwogfQogCkBAIC0xMjksOCArMTI5LDggQEAgdm9pZCBDYWNo
ZVN0b3JhZ2VFbmdpbmVDb25uZWN0aW9uOjpkZXJlZmVyZW5jZShQQUw6OlNlc3Npb25JRCBzZXNz
aW9uSUQsIHVpbnQ2NF8KIAogdm9pZCBDYWNoZVN0b3JhZ2VFbmdpbmVDb25uZWN0aW9uOjpjbGVh
ck1lbW9yeVJlcHJlc2VudGF0aW9uKFBBTDo6U2Vzc2lvbklEIHNlc3Npb25JRCwgdWludDY0X3Qg
cmVxdWVzdElkZW50aWZpZXIsIGNvbnN0IFN0cmluZyYgb3JpZ2luKQogewotICAgIEVuZ2luZTo6
ZnJvbShzZXNzaW9uSUQpLmNsZWFyTWVtb3J5UmVwcmVzZW50YXRpb24ob3JpZ2luLCBbcHJvdGVj
dGVkVGhpcyA9IG1ha2VSZWYoKnRoaXMpLCB0aGlzLCBzZXNzaW9uSUQsIHJlcXVlc3RJZGVudGlm
aWVyXSAoc3RkOjpvcHRpb25hbDxFcnJvcj4mJiBlcnJvcikgewotICAgICAgICBtX2Nvbm5lY3Rp
b24uY29ubmVjdGlvbigpLnNlbmQoTWVzc2FnZXM6OldlYkNhY2hlU3RvcmFnZUNvbm5lY3Rpb246
OkNsZWFyTWVtb3J5UmVwcmVzZW50YXRpb25Db21wbGV0ZWQocmVxdWVzdElkZW50aWZpZXIsIGVy
cm9yKSwgc2Vzc2lvbklELnNlc3Npb25JRCgpKTsKKyAgICBFbmdpbmU6OmZyb20oc2Vzc2lvbklE
KS5jbGVhck1lbW9yeVJlcHJlc2VudGF0aW9uKG9yaWdpbiwgW2Nvbm5lY3Rpb24gPSBtYWtlUmVm
KG1fY29ubmVjdGlvbi5jb25uZWN0aW9uKCkpLCBzZXNzaW9uSUQsIHJlcXVlc3RJZGVudGlmaWVy
XSAoc3RkOjpvcHRpb25hbDxFcnJvcj4mJiBlcnJvcikgeworICAgICAgICBjb25uZWN0aW9uLT5z
ZW5kKE1lc3NhZ2VzOjpXZWJDYWNoZVN0b3JhZ2VDb25uZWN0aW9uOjpDbGVhck1lbW9yeVJlcHJl
c2VudGF0aW9uQ29tcGxldGVkKHJlcXVlc3RJZGVudGlmaWVyLCBlcnJvciksIHNlc3Npb25JRC5z
ZXNzaW9uSUQoKSk7CiAgICAgfSk7CiB9CiAK
</data>

          </attachment>
      

    </bug>

</bugzilla>