<?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>144147</bug_id>
          
          <creation_ts>2015-04-24 06:56:04 -0700</creation_ts>
          <short_desc>CrashTracer: [USER] com.apple.WebKit.Networking at com.apple.WebKit: WebKit::NetworkResourceLoader::~NetworkResourceLoader + 14</short_desc>
          <delta_ts>2015-04-24 11:58:40 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>Page Loading</component>
          <version>528+ (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="Antti Koivisto">koivisto</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>cgarcia</cc>
    
    <cc>commit-queue</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1088219</commentid>
    <comment_count>0</comment_count>
    <who name="Antti Koivisto">koivisto</who>
    <bug_when>2015-04-24 06:56:04 -0700</bug_when>
    <thetext>1 libobjc.A.dylib                0x7fff8d78ae9d objc_msgSend + 0x1d
&gt;  2 com.apple.WebKit               0x7fff9128b986 WebKit::NetworkResourceLoader::~NetworkResourceLoader() + 0xe
   3 com.apple.WebKit               0x7fff91362a77 std::__1::__function::__func&lt;WebKit::NetworkResourceLoader::didFinishLoading(WebCore::ResourceHandle*, double)::$_1, std::__1::allocator&lt;WebKit::NetworkResourceLoader::didFinishLoading(WebCore::ResourceHandle*, double)::$_1&gt;, void (WebKit::NetworkCache::MappedBody&amp;)&gt;::destroy_deallocate() + 0x51
   4 com.apple.WebKit               0x7fff91349dad std::__1::__function::__func&lt;WebKit::NetworkCache::Cache::store(WebCore::ResourceRequest const&amp;, WebCore::ResourceResponse const&amp;, WTF::RefPtr&lt;WebCore::SharedBuffer&gt;&amp;&amp;, std::__1::function&lt;void (WebKit::NetworkCache::MappedBody&amp;)&gt;)::$_1, std::__1::allocator&lt;WebKit::NetworkCache::Cache::store(WebCore::ResourceRequest const&amp;, WebCore::ResourceResponse const&amp;, WTF::RefPtr&lt;WebCore::SharedBuffer&gt;&amp;&amp;, std::__1::function&lt;void (WebKit::NetworkCache::MappedBody&amp;)&gt;)::$_1&gt;, void (WebKit::NetworkCache::Data const&amp;)&gt;::destroy_deallocate() + 0x21
   5 com.apple.WebKit               0x7fff91352a5c WTF::HashTable&lt;std::__1::unique_ptr&lt;WebKit::NetworkCache::Storage::WriteOperation const, std::__1::default_delete&lt;WebKit::NetworkCache::Storage::WriteOperation const&gt; &gt;, std::__1::unique_ptr&lt;WebKit::NetworkCache::Storage::WriteOperation const, std::__1::default_delete&lt;WebKit::NetworkCache::Storage::WriteOperation const&gt; &gt;, WTF::IdentityExtractor, WTF::PtrHash&lt;std::__1::unique_ptr&lt;WebKit::NetworkCache::Storage::WriteOperation const, std::__1::default_delete&lt;WebKit::NetworkCache::Storage::WriteOperation const&gt; &gt; &gt;, WTF::HashTraits&lt;std::__1::unique_ptr&lt;WebKit::NetworkCache::Storage::WriteOperation const, std::__1::default_delete&lt;WebKit::NetworkCache::Storage::WriteOperation const&gt; &gt; &gt;, WTF::HashTraits&lt;std::__1::unique_ptr&lt;WebKit::NetworkCache::Storage::WriteOperation const, std::__1::default_delete&lt;WebKit::NetworkCache::Storage::WriteOperation const&gt; &gt; &gt; &gt;::deleteBucket(std::__1::unique_ptr&lt;WebKit::NetworkCache::Storage::WriteOperation const, std::__1::default_delete&lt;WebKit::NetworkCache::Storage::WriteOperation const&gt; &gt;&amp;) + 0x38
   6 com.apple.WebKit               0x7fff913529eb WTF::HashTable&lt;std::__1::unique_ptr&lt;WebKit::NetworkCache::Storage::WriteOperation const, std::__1::default_delete&lt;WebKit::NetworkCache::Storage::WriteOperation const&gt; &gt;, std::__1::unique_ptr&lt;WebKit::NetworkCache::Storage::WriteOperation const, std::__1::default_delete&lt;WebKit::NetworkCache::Storage::WriteOperation const&gt; &gt;, WTF::IdentityExtractor, WTF::PtrHash&lt;std::__1::unique_ptr&lt;WebKit::NetworkCache::Storage::WriteOperation const, std::__1::default_delete&lt;WebKit::NetworkCache::Storage::WriteOperation const&gt; &gt; &gt;, WTF::HashTraits&lt;std::__1::unique_ptr&lt;WebKit::NetworkCache::Storage::WriteOperation const, std::__1::default_delete&lt;WebKit::NetworkCache::Storage::WriteOperation const&gt; &gt; &gt;, WTF::HashTraits&lt;std::__1::unique_ptr&lt;WebKit::NetworkCache::Storage::WriteOperation const, std::__1::default_delete&lt;WebKit::NetworkCache::Storage::WriteOperation const&gt; &gt; &gt; &gt;::remove(std::__1::unique_ptr&lt;WebKit::NetworkCache::Storage::WriteOperation const, std::__1::default_delete&lt;WebKit::NetworkCache::Storage::WriteOperation const&gt; &gt;*) + 0x11
   7 com.apple.WebKit               0x7fff91351546 std::__1::enable_if&lt;IsSmartPtr&lt;std::__1::unique_ptr&lt;WebKit::NetworkCache::Storage::WriteOperation const, std::__1::default_delete&lt;WebKit::NetworkCache::Storage::WriteOperation const&gt; &gt; &gt;::value, bool&gt;::type WTF::HashSet&lt;std::__1::unique_ptr&lt;WebKit::NetworkCache::Storage::WriteOperation const, std::__1::default_delete&lt;WebKit::NetworkCache::Storage::WriteOperation const&gt; &gt;, WTF::PtrHash&lt;std::__1::unique_ptr&lt;WebKit::NetworkCache::Storage::WriteOperation const, std::__1::default_delete&lt;WebKit::NetworkCache::Storage::WriteOperation const&gt; &gt; &gt;, WTF::HashTraits&lt;std::__1::unique_ptr&lt;WebKit::NetworkCache::Storage::WriteOperation const, std::__1::default_delete&lt;WebKit::NetworkCache::Storage::WriteOperation const&gt; &gt; &gt; &gt;::remove&lt;std::__1::unique_ptr&lt;WebKit::NetworkCache::Storage::WriteOperation const, std::__1::default_delete&lt;WebKit::NetworkCache::Storage::WriteOperation const&gt; &gt; &gt;(WTF::GetPtrHelper&lt;std::__1::unique_ptr&lt;WebKit::NetworkCache::Storage::WriteOperation const, std::__1::default_delete&lt;WebKit::NetworkCache::Storage::WriteOperation const&gt; &gt; &gt;::PtrType) + 0x30
   8 com.apple.WebKit               0x7fff9134ce09 WebKit::NetworkCache::Storage::finishWriteOperation(WebKit::NetworkCache::Storage::WriteOperation const&amp;) + 0x15
   9 com.apple.WebKit               0x7fff914c47f9 ___ZN6WebKit12NetworkCache9IOChannel5writeEmRKNS0_4DataENSt3__18functionIFviEEE_block_invoke + 0x19
  10 libdispatch.dylib              0x7fff8dbe624d ___dispatch_operation_deliver_data_block_invoke + 0x76
  11 libdispatch.dylib              0x7fff8dbca54c _dispatch_call_block_and_release + 0xc
  12 libdispatch.dylib              0x7fff8dbc643c _dispatch_client_callout + 0x8
  13 libdispatch.dylib              0x7fff8dbc9edd _dispatch_queue_drain + 0x2e5
  14 libdispatch.dylib              0x7fff8dbc9aa7 _dispatch_queue_invoke + 0xc8
  15 libdispatch.dylib              0x7fff8dbd76a8 _dispatch_main_queue_callback_4CF + 0x19e
  16 com.apple.CoreFoundation       0x7fff92de5699 __CFRUNLOOP_IS_SERVICING_THE_MAIN_DISPATCH_QUEUE__ + 0x9
  17 com.apple.CoreFoundation       0x7fff92da1124 __CFRunLoopRun + 0x774
  18 com.apple.CoreFoundation       0x7fff92da0748 CFRunLoopRunSpecific + 0x128
  19 com.apple.Foundation           0x7fff958bf138 -[NSRunLoop(NSRunLoop) runMode:beforeDate:] + 0x10e
  20 com.apple.Foundation           0x7fff95933f9e -[NSRunLoop(NSRunLoop) run] + 0x4a
  21 libxpc.dylib                   0x103355ede _xpc_objc_main + 0x2ef
  22 libxpc.dylib                   0x103357657 xpc_main + 0x1ee
  23 com.apple.WebKit.Networking    0x103323b30 main + 0x10 (/Library/Caches/com.apple.xbs/Sources/WebKit2/WebKit2-7601.1.27.2/Shared/EntryPointUtilities/mac/XPCService/XPCServiceMain.mm:80)
  24 libdyld.dylib                  0x7fff93ad65ad start + 0x1</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1088220</commentid>
    <comment_count>1</comment_count>
    <who name="Antti Koivisto">koivisto</who>
    <bug_when>2015-04-24 06:56:24 -0700</bug_when>
    <thetext>&lt;rdar://problem/20617963&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1088224</commentid>
    <comment_count>2</comment_count>
      <attachid>251550</attachid>
    <who name="Antti Koivisto">koivisto</who>
    <bug_when>2015-04-24 07:57:50 -0700</bug_when>
    <thetext>Created attachment 251550
patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1088263</commentid>
    <comment_count>3</comment_count>
      <attachid>251550</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2015-04-24 11:03:21 -0700</bug_when>
    <thetext>Comment on attachment 251550
patch

r=me</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1088286</commentid>
    <comment_count>4</comment_count>
      <attachid>251550</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2015-04-24 11:58:36 -0700</bug_when>
    <thetext>Comment on attachment 251550
patch

Clearing flags on attachment: 251550

Committed r183273: &lt;http://trac.webkit.org/changeset/183273&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1088287</commentid>
    <comment_count>5</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2015-04-24 11:58:40 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>251550</attachid>
            <date>2015-04-24 07:57:50 -0700</date>
            <delta_ts>2015-04-24 11:58:36 -0700</delta_ts>
            <desc>patch</desc>
            <filename>disk-cache-active-operation.patch</filename>
            <type>text/plain</type>
            <size>10446</size>
            <attacher name="Antti Koivisto">koivisto</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJLaXQyL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
S2l0Mi9DaGFuZ2VMb2cJKHJldmlzaW9uIDE4MzI2MykKKysrIFNvdXJjZS9XZWJLaXQyL0NoYW5n
ZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDQyIEBACisyMDE1LTA0LTI0ICBBbnR0aSBL
b2l2aXN0byAgPGFudHRpQGFwcGxlLmNvbT4KKworICAgICAgICBDcmFzaFRyYWNlcjogW1VTRVJd
IGNvbS5hcHBsZS5XZWJLaXQuTmV0d29ya2luZyBhdCBjb20uYXBwbGUuV2ViS2l0OiBXZWJLaXQ6
Ok5ldHdvcmtSZXNvdXJjZUxvYWRlcjo6fk5ldHdvcmtSZXNvdXJjZUxvYWRlciArIDE0CisgICAg
ICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNDQxNDcKKworICAg
ICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBTdG9yYWdlOjpzdG9y
ZUJvZHlBc0Jsb2IgY29waWVzIHRoZSBzdGQ6OmZ1bmN0aW9uIGNhbGxiYWNrIGZvciBoYW5kbGlu
ZyBtYXBwZWQgYm9kaWVzIGluIGEgdGhyZWFkLgorICAgICAgICBUaGlzIGlzIHRocmVhZCBzYWZl
IG9ubHkgaWYgdGhlIGZ1bmN0aW9uIGNvcHkgaXMgdGhyZWFkIHNhZmUuIEl0IGlzIGN1cnJlbnRs
eSBub3QgYXMgd2UgYXJlIGNhcHR1cmluZworICAgICAgICBSZWZQdHI8TmV0d29ya1Jlc291cmNl
TG9hZGVyPiBhbmQgTmV0d29ya1Jlc291cmNlTG9hZGVyIGRvZXNuJ3QgdXNlIHRocmVhZCBzYWZl
IHJlZmNvdW50aW5nLgorCisgICAgICAgIEZpeCBieSBhdm9pZGluZyBjb3B5aW5nIG9mIHRoZSBj
YWxsYmFjay4gVXNlIHNhbWUgYXBwb3JhY2ggZm9yIFdyaXRlT3BlcmF0aW9uIGFzIHdlIGFscmVh
ZHkgdXNlIGZvcgorICAgICAgICBSZWFkT3BlcmF0aW9uOiBjb3VudCB0aGUgYWN0aXZlIG9wZXJh
dGlvbnMgaW4gcHJvZ3Jlc3MgYW5kIGRlbGV0ZSBXcml0ZU9wZXJhdGlvbiB3aGVuIGV2ZXJ5dGhp
bmcgaXMKKyAgICAgICAgZmluaXNoZWQuIFRoaXMgd2F5IHdlIGRvbid0IG5lZWQgdG8gY29weSB0
aGUgZnVuY3Rpb24gb3V0IGZyb20gV3JpdGVPcGVyYXRpb24uCisKKyAgICAgICAgKiBOZXR3b3Jr
UHJvY2Vzcy9jYWNoZS9OZXR3b3JrQ2FjaGVTdG9yYWdlLmNwcDoKKyAgICAgICAgKFdlYktpdDo6
TmV0d29ya0NhY2hlOjpTdG9yYWdlOjpSZWFkT3BlcmF0aW9uOjpSZWFkT3BlcmF0aW9uKToKKyAg
ICAgICAgKFdlYktpdDo6TmV0d29ya0NhY2hlOjpTdG9yYWdlOjpXcml0ZU9wZXJhdGlvbjo6V3Jp
dGVPcGVyYXRpb24pOgorCisgICAgICAgICAgICBNb3ZlIGRlZmluaXRpb24gaGVyZSBmcm9tIHRo
ZSBoZWFkZXIuCisKKyAgICAgICAgKFdlYktpdDo6TmV0d29ya0NhY2hlOjpTdG9yYWdlOjp+U3Rv
cmFnZSk6CisgICAgICAgIChXZWJLaXQ6Ok5ldHdvcmtDYWNoZTo6U3RvcmFnZTo6c3RvcmVCb2R5
QXNCbG9iKToKKworICAgICAgICAgICAgSW5jcmVtZW50IHRoZSBvcGVyYXRpb24gY291bnQgd2hl
biBzdG9yaW5nIGEgYmxvYiwgY2FsbCBmaW5pc2hXcml0ZU9wZXJhdGlvbiB3aGVuIGRvbmUuCisK
KyAgICAgICAgKFdlYktpdDo6TmV0d29ya0NhY2hlOjpTdG9yYWdlOjpkaXNwYXRjaFJlYWRPcGVy
YXRpb24pOgorICAgICAgICAoV2ViS2l0OjpOZXR3b3JrQ2FjaGU6OlN0b3JhZ2U6OmZpbmlzaFJl
YWRPcGVyYXRpb24pOgorCisgICAgICAgICAgICBDb3VudCBhY3RpdmUgb3BlcmF0aW9ucyBpbnN0
ZWFkIG9mIGZpbmlzaGVkIG9wZXJhdGlvbnMuIFRoaXMgbWFrZXMgdGhlIGNvZGUgY2xlYXJlci4K
KworICAgICAgICAoV2ViS2l0OjpOZXR3b3JrQ2FjaGU6OlN0b3JhZ2U6OmRpc3BhdGNoV3JpdGVP
cGVyYXRpb24pOgorICAgICAgICAoV2ViS2l0OjpOZXR3b3JrQ2FjaGU6OlN0b3JhZ2U6OmZpbmlz
aFdyaXRlT3BlcmF0aW9uKToKKworICAgICAgICAgICAgTWlycm9yIHRoZSB3YXkgUmVhZE9wZXJh
dGlvbnMgd29yay4KKworICAgICAgICAqIE5ldHdvcmtQcm9jZXNzL2NhY2hlL05ldHdvcmtDYWNo
ZVN0b3JhZ2UuaDoKKyAgICAgICAgKFdlYktpdDo6TmV0d29ya0NhY2hlOjpTdG9yYWdlOjpSZWFk
T3BlcmF0aW9uOjpSZWFkT3BlcmF0aW9uKTogRGVsZXRlZC4KKwogMjAxNS0wNC0yNCAgQW50dGkg
S29pdmlzdG8gIDxhbnR0aUBhcHBsZS5jb20+CiAKICAgICAgICAgTmV0d29yayBDYWNoZTogTWFr
ZSBwYXRoIGZ1bmN0aW9ucyBtZW1iZXJzCkluZGV4OiBTb3VyY2UvV2ViS2l0Mi9OZXR3b3JrUHJv
Y2Vzcy9jYWNoZS9OZXR3b3JrQ2FjaGVTdG9yYWdlLmNwcAo9PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2Uv
V2ViS2l0Mi9OZXR3b3JrUHJvY2Vzcy9jYWNoZS9OZXR3b3JrQ2FjaGVTdG9yYWdlLmNwcAkocmV2
aXNpb24gMTgzMjYzKQorKysgU291cmNlL1dlYktpdDIvTmV0d29ya1Byb2Nlc3MvY2FjaGUvTmV0
d29ya0NhY2hlU3RvcmFnZS5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTQ5LDYgKzQ5LDMyIEBAIHN0
YXRpYyBjb25zdCBjaGFyIGJvZHlQb3N0Zml4W10gPSAiLWJvZHkKIAogc3RhdGljIGRvdWJsZSBj
b21wdXRlUmVjb3JkV29ydGgoRmlsZVRpbWVzKTsKIAorc3RydWN0IFN0b3JhZ2U6OlJlYWRPcGVy
YXRpb24geworICAgIFJlYWRPcGVyYXRpb24oY29uc3QgS2V5JiBrZXksIGNvbnN0IFJldHJpZXZl
Q29tcGxldGlvbkhhbmRsZXImIGNvbXBsZXRpb25IYW5kbGVyKQorICAgICAgICA6IGtleShrZXkp
CisgICAgICAgICwgY29tcGxldGlvbkhhbmRsZXIoY29tcGxldGlvbkhhbmRsZXIpCisgICAgeyB9
CisKKyAgICBjb25zdCBLZXkga2V5OworICAgIGNvbnN0IFJldHJpZXZlQ29tcGxldGlvbkhhbmRs
ZXIgY29tcGxldGlvbkhhbmRsZXI7CisgICAgCisgICAgc3RkOjp1bmlxdWVfcHRyPFJlY29yZD4g
cmVzdWx0UmVjb3JkOworICAgIFNIQTE6OkRpZ2VzdCBleHBlY3RlZEJvZHlIYXNoOworICAgIEJs
b2JTdG9yYWdlOjpCbG9iIHJlc3VsdEJvZHlCbG9iOworICAgIHN0ZDo6YXRvbWljPHVuc2lnbmVk
PiBhY3RpdmVDb3VudCB7IDAgfTsKK307CisKK3N0cnVjdCBTdG9yYWdlOjpXcml0ZU9wZXJhdGlv
biB7CisgICAgV3JpdGVPcGVyYXRpb24oY29uc3QgUmVjb3JkJiByZWNvcmQsIGNvbnN0IE1hcHBl
ZEJvZHlIYW5kbGVyJiBtYXBwZWRCb2R5SGFuZGxlcikKKyAgICAgICAgOiByZWNvcmQocmVjb3Jk
KQorICAgICAgICAsIG1hcHBlZEJvZHlIYW5kbGVyKG1hcHBlZEJvZHlIYW5kbGVyKQorICAgIHsg
fQorICAgIAorICAgIFJlY29yZCByZWNvcmQ7CisgICAgTWFwcGVkQm9keUhhbmRsZXIgbWFwcGVk
Qm9keUhhbmRsZXI7CisgICAgc3RkOjphdG9taWM8dW5zaWduZWQ+IGFjdGl2ZUNvdW50IHsgMCB9
OworfTsKKwogc3RkOjp1bmlxdWVfcHRyPFN0b3JhZ2U+IFN0b3JhZ2U6Om9wZW4oY29uc3QgU3Ry
aW5nJiBjYWNoZVBhdGgpCiB7CiAgICAgQVNTRVJUKFJ1bkxvb3A6OmlzTWFpbigpKTsKQEAgLTg3
LDYgKzExMyw5IEBAIFN0b3JhZ2U6OlN0b3JhZ2UoY29uc3QgU3RyaW5nJiBiYXNlRGlyZWMKICAg
ICBzeW5jaHJvbml6ZSgpOwogfQogCitTdG9yYWdlOjp+U3RvcmFnZSgpCit7Cit9CiAKIFN0cmlu
ZyBTdG9yYWdlOjpiYXNlUGF0aCgpIGNvbnN0CiB7CkBAIC0zNTEsMjUgKzM4MCwyNyBAQCBzdGF0
aWMgRGF0YSBlbmNvZGVSZWNvcmRNZXRhRGF0YShjb25zdCBSCiAgICAgcmV0dXJuIERhdGEoZW5j
b2Rlci5idWZmZXIoKSwgZW5jb2Rlci5idWZmZXJTaXplKCkpOwogfQogCi1PcHRpb25hbDxCbG9i
U3RvcmFnZTo6QmxvYj4gU3RvcmFnZTo6c3RvcmVCb2R5QXNCbG9iKGNvbnN0IFJlY29yZCYgcmVj
b3JkLCBjb25zdCBNYXBwZWRCb2R5SGFuZGxlciYgbWFwcGVkQm9keUhhbmRsZXIpCitPcHRpb25h
bDxCbG9iU3RvcmFnZTo6QmxvYj4gU3RvcmFnZTo6c3RvcmVCb2R5QXNCbG9iKFdyaXRlT3BlcmF0
aW9uJiB3cml0ZU9wZXJhdGlvbikKIHsKLSAgICBhdXRvIGJvZHlQYXRoID0gYm9keVBhdGhGb3JL
ZXkocmVjb3JkLmtleSk7CisgICAgYXV0byBib2R5UGF0aCA9IGJvZHlQYXRoRm9yS2V5KHdyaXRl
T3BlcmF0aW9uLnJlY29yZC5rZXkpOwogCiAgICAgLy8gU3RvcmUgdGhlIGJvZHkuCi0gICAgYXV0
byBibG9iID0gbV9ibG9iU3RvcmFnZS5hZGQoYm9keVBhdGgsIHJlY29yZC5ib2R5KTsKKyAgICBh
dXRvIGJsb2IgPSBtX2Jsb2JTdG9yYWdlLmFkZChib2R5UGF0aCwgd3JpdGVPcGVyYXRpb24ucmVj
b3JkLmJvZHkpOwogICAgIGlmIChibG9iLmRhdGEuaXNOdWxsKCkpCiAgICAgICAgIHJldHVybiB7
IH07CiAKLSAgICBhdXRvIGhhc2ggPSByZWNvcmQua2V5Lmhhc2goKTsKLSAgICBSdW5Mb29wOjpt
YWluKCkuZGlzcGF0Y2goW3RoaXMsIGJsb2IsIGhhc2gsIG1hcHBlZEJvZHlIYW5kbGVyXSB7Cisg
ICAgKyt3cml0ZU9wZXJhdGlvbi5hY3RpdmVDb3VudDsKKworICAgIFJ1bkxvb3A6Om1haW4oKS5k
aXNwYXRjaChbdGhpcywgYmxvYiwgJndyaXRlT3BlcmF0aW9uXSB7CiAgICAgICAgIGlmIChtX2Jv
ZHlGaWx0ZXIpCi0gICAgICAgICAgICBtX2JvZHlGaWx0ZXItPmFkZChoYXNoKTsKKyAgICAgICAg
ICAgIG1fYm9keUZpbHRlci0+YWRkKHdyaXRlT3BlcmF0aW9uLnJlY29yZC5rZXkuaGFzaCgpKTsK
ICAgICAgICAgaWYgKG1fc3luY2hyb25pemF0aW9uSW5Qcm9ncmVzcykKLSAgICAgICAgICAgIG1f
Ym9keUZpbHRlckhhc2hlc0FkZGVkRHVyaW5nU3luY2hyb25pemF0aW9uLmFwcGVuZChoYXNoKTsK
KyAgICAgICAgICAgIG1fYm9keUZpbHRlckhhc2hlc0FkZGVkRHVyaW5nU3luY2hyb25pemF0aW9u
LmFwcGVuZCh3cml0ZU9wZXJhdGlvbi5yZWNvcmQua2V5Lmhhc2goKSk7CiAKLSAgICAgICAgaWYg
KG1hcHBlZEJvZHlIYW5kbGVyKQotICAgICAgICAgICAgbWFwcGVkQm9keUhhbmRsZXIoYmxvYi5k
YXRhKTsKKyAgICAgICAgaWYgKHdyaXRlT3BlcmF0aW9uLm1hcHBlZEJvZHlIYW5kbGVyKQorICAg
ICAgICAgICAgd3JpdGVPcGVyYXRpb24ubWFwcGVkQm9keUhhbmRsZXIoYmxvYi5kYXRhKTsKIAor
ICAgICAgICBmaW5pc2hXcml0ZU9wZXJhdGlvbih3cml0ZU9wZXJhdGlvbik7CiAgICAgfSk7CiAg
ICAgcmV0dXJuIGJsb2I7CiB9CkBAIC00MjQsNiArNDU1LDEyIEBAIHZvaWQgU3RvcmFnZTo6ZGlz
cGF0Y2hSZWFkT3BlcmF0aW9uKFJlYWQKIAogICAgIGF1dG8gcmVjb3JkUGF0aCA9IHJlY29yZFBh
dGhGb3JLZXkocmVhZE9wZXJhdGlvbi5rZXkpOwogCisgICAgKytyZWFkT3BlcmF0aW9uLmFjdGl2
ZUNvdW50OworCisgICAgYm9vbCBzaG91bGRHZXRCb2R5QmxvYiA9ICFtX2JvZHlGaWx0ZXIgfHwg
bV9ib2R5RmlsdGVyLT5tYXlDb250YWluKHJlYWRPcGVyYXRpb24ua2V5Lmhhc2goKSk7CisgICAg
aWYgKHNob3VsZEdldEJvZHlCbG9iKQorICAgICAgICArK3JlYWRPcGVyYXRpb24uYWN0aXZlQ291
bnQ7CisKICAgICBSZWZQdHI8SU9DaGFubmVsPiBjaGFubmVsID0gSU9DaGFubmVsOjpvcGVuKHJl
Y29yZFBhdGgsIElPQ2hhbm5lbDo6VHlwZTo6UmVhZCk7CiAgICAgY2hhbm5lbC0+cmVhZCgwLCBz
dGQ6Om51bWVyaWNfbGltaXRzPHNpemVfdD46Om1heCgpLCAmaW9RdWV1ZSgpLCBbdGhpcywgJnJl
YWRPcGVyYXRpb25dKGNvbnN0IERhdGEmIGZpbGVEYXRhLCBpbnQgZXJyb3IpIHsKICAgICAgICAg
aWYgKCFlcnJvcikKQEAgLTQzMSwxMSArNDY4LDggQEAgdm9pZCBTdG9yYWdlOjpkaXNwYXRjaFJl
YWRPcGVyYXRpb24oUmVhZAogICAgICAgICBmaW5pc2hSZWFkT3BlcmF0aW9uKHJlYWRPcGVyYXRp
b24pOwogICAgIH0pOwogCi0gICAgYm9vbCBzaG91bGRHZXRCb2R5QmxvYiA9ICFtX2JvZHlGaWx0
ZXIgfHwgbV9ib2R5RmlsdGVyLT5tYXlDb250YWluKHJlYWRPcGVyYXRpb24ua2V5Lmhhc2goKSk7
Ci0gICAgaWYgKCFzaG91bGRHZXRCb2R5QmxvYikgewotICAgICAgICBmaW5pc2hSZWFkT3BlcmF0
aW9uKHJlYWRPcGVyYXRpb24pOworICAgIGlmICghc2hvdWxkR2V0Qm9keUJsb2IpCiAgICAgICAg
IHJldHVybjsKLSAgICB9CiAKICAgICAvLyBSZWFkIHRoZSBib2R5IGJsb2IgaW4gcGFyYWxsZWwg
d2l0aCB0aGUgcmVjb3JkIHJlYWQuCiAgICAgaW9RdWV1ZSgpLmRpc3BhdGNoKFt0aGlzLCAmcmVh
ZE9wZXJhdGlvbl0gewpAQCAtNDQ3LDkgKzQ4MSw5IEBAIHZvaWQgU3RvcmFnZTo6ZGlzcGF0Y2hS
ZWFkT3BlcmF0aW9uKFJlYWQKIAogdm9pZCBTdG9yYWdlOjpmaW5pc2hSZWFkT3BlcmF0aW9uKFJl
YWRPcGVyYXRpb24mIHJlYWRPcGVyYXRpb24pCiB7CisgICAgQVNTRVJUKHJlYWRPcGVyYXRpb24u
YWN0aXZlQ291bnQpOwogICAgIC8vIFJlY29yZCBhbmQgYm9keSBibG9iIHJlYWRzIG11c3QgZmlu
aXNoLgotICAgIGJvb2wgaXNDb21wbGV0ZSA9ICsrcmVhZE9wZXJhdGlvbi5maW5pc2hlZENvdW50
ID09IDI7Ci0gICAgaWYgKCFpc0NvbXBsZXRlKQorICAgIGlmICgtLXJlYWRPcGVyYXRpb24uYWN0
aXZlQ291bnQpCiAgICAgICAgIHJldHVybjsKIAogICAgIFJ1bkxvb3A6Om1haW4oKS5kaXNwYXRj
aChbdGhpcywgJnJlYWRPcGVyYXRpb25dIHsKQEAgLTUzNCw3ICs1NjgsNyBAQCBzdGF0aWMgYm9v
bCBzaG91bGRTdG9yZUJvZHlBc0Jsb2IoY29uc3QgCiAgICAgcmV0dXJuIGJvZHlEYXRhLnNpemUo
KSA+IG1heGltdW1JbmxpbmVCb2R5U2l6ZTsKIH0KIAotdm9pZCBTdG9yYWdlOjpkaXNwYXRjaFdy
aXRlT3BlcmF0aW9uKGNvbnN0IFdyaXRlT3BlcmF0aW9uJiB3cml0ZU9wZXJhdGlvbikKK3ZvaWQg
U3RvcmFnZTo6ZGlzcGF0Y2hXcml0ZU9wZXJhdGlvbihXcml0ZU9wZXJhdGlvbiYgd3JpdGVPcGVy
YXRpb24pCiB7CiAgICAgQVNTRVJUKFJ1bkxvb3A6OmlzTWFpbigpKTsKICAgICBBU1NFUlQobV9h
Y3RpdmVXcml0ZU9wZXJhdGlvbnMuY29udGFpbnMoJndyaXRlT3BlcmF0aW9uKSk7CkBAIC01NDgs
OCArNTgyLDEwIEBAIHZvaWQgU3RvcmFnZTo6ZGlzcGF0Y2hXcml0ZU9wZXJhdGlvbihjb24KIAog
ICAgICAgICBXZWJDb3JlOjptYWtlQWxsRGlyZWN0b3JpZXMocGFydGl0aW9uUGF0aCk7CiAKKyAg
ICAgICAgKyt3cml0ZU9wZXJhdGlvbi5hY3RpdmVDb3VudDsKKwogICAgICAgICBib29sIHNob3Vs
ZFN0b3JlQXNCbG9iID0gc2hvdWxkU3RvcmVCb2R5QXNCbG9iKHdyaXRlT3BlcmF0aW9uLnJlY29y
ZC5ib2R5KTsKLSAgICAgICAgYXV0byBib2R5QmxvYiA9IHNob3VsZFN0b3JlQXNCbG9iID8gc3Rv
cmVCb2R5QXNCbG9iKHdyaXRlT3BlcmF0aW9uLnJlY29yZCwgd3JpdGVPcGVyYXRpb24ubWFwcGVk
Qm9keUhhbmRsZXIpIDogTnVsbG9wdDsKKyAgICAgICAgYXV0byBib2R5QmxvYiA9IHNob3VsZFN0
b3JlQXNCbG9iID8gc3RvcmVCb2R5QXNCbG9iKHdyaXRlT3BlcmF0aW9uKSA6IE51bGxvcHQ7CiAK
ICAgICAgICAgYXV0byByZWNvcmREYXRhID0gZW5jb2RlUmVjb3JkKHdyaXRlT3BlcmF0aW9uLnJl
Y29yZCwgYm9keUJsb2IpOwogCkBAIC01NjUsOSArNjAxLDE1IEBAIHZvaWQgU3RvcmFnZTo6ZGlz
cGF0Y2hXcml0ZU9wZXJhdGlvbihjb24KICAgICB9KTsKIH0KIAotdm9pZCBTdG9yYWdlOjpmaW5p
c2hXcml0ZU9wZXJhdGlvbihjb25zdCBXcml0ZU9wZXJhdGlvbiYgd3JpdGVPcGVyYXRpb24pCit2
b2lkIFN0b3JhZ2U6OmZpbmlzaFdyaXRlT3BlcmF0aW9uKFdyaXRlT3BlcmF0aW9uJiB3cml0ZU9w
ZXJhdGlvbikKIHsKKyAgICBBU1NFUlQoUnVuTG9vcDo6aXNNYWluKCkpOworICAgIEFTU0VSVCh3
cml0ZU9wZXJhdGlvbi5hY3RpdmVDb3VudCk7CiAgICAgQVNTRVJUKG1fYWN0aXZlV3JpdGVPcGVy
YXRpb25zLmNvbnRhaW5zKCZ3cml0ZU9wZXJhdGlvbikpOworCisgICAgaWYgKC0td3JpdGVPcGVy
YXRpb24uYWN0aXZlQ291bnQpCisgICAgICAgIHJldHVybjsKKwogICAgIG1fYWN0aXZlV3JpdGVP
cGVyYXRpb25zLnJlbW92ZSgmd3JpdGVPcGVyYXRpb24pOwogICAgIGRpc3BhdGNoUGVuZGluZ1dy
aXRlT3BlcmF0aW9ucygpOwogCkluZGV4OiBTb3VyY2UvV2ViS2l0Mi9OZXR3b3JrUHJvY2Vzcy9j
YWNoZS9OZXR3b3JrQ2FjaGVTdG9yYWdlLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYktpdDIv
TmV0d29ya1Byb2Nlc3MvY2FjaGUvTmV0d29ya0NhY2hlU3RvcmFnZS5oCShyZXZpc2lvbiAxODMy
NjMpCisrKyBTb3VyY2UvV2ViS2l0Mi9OZXR3b3JrUHJvY2Vzcy9jYWNoZS9OZXR3b3JrQ2FjaGVT
dG9yYWdlLmgJKHdvcmtpbmcgY29weSkKQEAgLTg3LDYgKzg3LDggQEAgcHVibGljOgogICAgIFN0
cmluZyB2ZXJzaW9uUGF0aCgpIGNvbnN0OwogICAgIFN0cmluZyByZWNvcmRzUGF0aCgpIGNvbnN0
OwogCisgICAgflN0b3JhZ2UoKTsKKwogcHJpdmF0ZToKICAgICBTdG9yYWdlKGNvbnN0IFN0cmlu
ZyYgZGlyZWN0b3J5UGF0aCk7CiAKQEAgLTk5LDMzICsxMDEsMTcgQEAgcHJpdmF0ZToKICAgICB2
b2lkIHNocmlua0lmTmVlZGVkKCk7CiAgICAgdm9pZCBzaHJpbmsoKTsKIAotICAgIHN0cnVjdCBS
ZWFkT3BlcmF0aW9uIHsKLSAgICAgICAgUmVhZE9wZXJhdGlvbihjb25zdCBLZXkmIGtleSwgY29u
c3QgUmV0cmlldmVDb21wbGV0aW9uSGFuZGxlciYgY29tcGxldGlvbkhhbmRsZXIpCi0gICAgICAg
ICAgICA6IGtleShrZXkpCi0gICAgICAgICAgICAsIGNvbXBsZXRpb25IYW5kbGVyKGNvbXBsZXRp
b25IYW5kbGVyKQotICAgICAgICB7IH0KLQotICAgICAgICBjb25zdCBLZXkga2V5OwotICAgICAg
ICBjb25zdCBSZXRyaWV2ZUNvbXBsZXRpb25IYW5kbGVyIGNvbXBsZXRpb25IYW5kbGVyOwotICAg
ICAgICAKLSAgICAgICAgc3RkOjp1bmlxdWVfcHRyPFJlY29yZD4gcmVzdWx0UmVjb3JkOwotICAg
ICAgICBTSEExOjpEaWdlc3QgZXhwZWN0ZWRCb2R5SGFzaDsKLSAgICAgICAgQmxvYlN0b3JhZ2U6
OkJsb2IgcmVzdWx0Qm9keUJsb2I7Ci0gICAgICAgIHN0ZDo6YXRvbWljPHVuc2lnbmVkPiBmaW5p
c2hlZENvdW50IHsgMCB9OwotICAgIH07CisgICAgc3RydWN0IFJlYWRPcGVyYXRpb247CiAgICAg
dm9pZCBkaXNwYXRjaFJlYWRPcGVyYXRpb24oUmVhZE9wZXJhdGlvbiYpOwogICAgIHZvaWQgZGlz
cGF0Y2hQZW5kaW5nUmVhZE9wZXJhdGlvbnMoKTsKICAgICB2b2lkIGZpbmlzaFJlYWRPcGVyYXRp
b24oUmVhZE9wZXJhdGlvbiYpOwogCi0gICAgc3RydWN0IFdyaXRlT3BlcmF0aW9uIHsKLSAgICAg
ICAgUmVjb3JkIHJlY29yZDsKLSAgICAgICAgTWFwcGVkQm9keUhhbmRsZXIgbWFwcGVkQm9keUhh
bmRsZXI7Ci0gICAgfTsKLSAgICB2b2lkIGRpc3BhdGNoV3JpdGVPcGVyYXRpb24oY29uc3QgV3Jp
dGVPcGVyYXRpb24mKTsKKyAgICBzdHJ1Y3QgV3JpdGVPcGVyYXRpb247CisgICAgdm9pZCBkaXNw
YXRjaFdyaXRlT3BlcmF0aW9uKFdyaXRlT3BlcmF0aW9uJik7CiAgICAgdm9pZCBkaXNwYXRjaFBl
bmRpbmdXcml0ZU9wZXJhdGlvbnMoKTsKLSAgICB2b2lkIGZpbmlzaFdyaXRlT3BlcmF0aW9uKGNv
bnN0IFdyaXRlT3BlcmF0aW9uJik7CisgICAgdm9pZCBmaW5pc2hXcml0ZU9wZXJhdGlvbihXcml0
ZU9wZXJhdGlvbiYpOwogCi0gICAgT3B0aW9uYWw8QmxvYlN0b3JhZ2U6OkJsb2I+IHN0b3JlQm9k
eUFzQmxvYihjb25zdCBSZWNvcmQmLCBjb25zdCBNYXBwZWRCb2R5SGFuZGxlciYpOworICAgIE9w
dGlvbmFsPEJsb2JTdG9yYWdlOjpCbG9iPiBzdG9yZUJvZHlBc0Jsb2IoV3JpdGVPcGVyYXRpb24m
KTsKICAgICBEYXRhIGVuY29kZVJlY29yZChjb25zdCBSZWNvcmQmLCBPcHRpb25hbDxCbG9iU3Rv
cmFnZTo6QmxvYj4pOwogICAgIHZvaWQgcmVhZFJlY29yZChSZWFkT3BlcmF0aW9uJiwgY29uc3Qg
RGF0YSYpOwogCkBAIC0xNjAsOCArMTQ2LDggQEAgcHJpdmF0ZToKICAgICBEZXF1ZTxzdGQ6OnVu
aXF1ZV9wdHI8UmVhZE9wZXJhdGlvbj4+IG1fcGVuZGluZ1JlYWRPcGVyYXRpb25zQnlQcmlvcml0
eVttYXhpbXVtUmV0cmlldmVQcmlvcml0eSArIDFdOwogICAgIEhhc2hTZXQ8c3RkOjp1bmlxdWVf
cHRyPFJlYWRPcGVyYXRpb24+PiBtX2FjdGl2ZVJlYWRPcGVyYXRpb25zOwogCi0gICAgRGVxdWU8
c3RkOjp1bmlxdWVfcHRyPGNvbnN0IFdyaXRlT3BlcmF0aW9uPj4gbV9wZW5kaW5nV3JpdGVPcGVy
YXRpb25zOwotICAgIEhhc2hTZXQ8c3RkOjp1bmlxdWVfcHRyPGNvbnN0IFdyaXRlT3BlcmF0aW9u
Pj4gbV9hY3RpdmVXcml0ZU9wZXJhdGlvbnM7CisgICAgRGVxdWU8c3RkOjp1bmlxdWVfcHRyPFdy
aXRlT3BlcmF0aW9uPj4gbV9wZW5kaW5nV3JpdGVPcGVyYXRpb25zOworICAgIEhhc2hTZXQ8c3Rk
Ojp1bmlxdWVfcHRyPFdyaXRlT3BlcmF0aW9uPj4gbV9hY3RpdmVXcml0ZU9wZXJhdGlvbnM7CiAK
ICAgICBSZWY8V29ya1F1ZXVlPiBtX2lvUXVldWU7CiAgICAgUmVmPFdvcmtRdWV1ZT4gbV9iYWNr
Z3JvdW5kSU9RdWV1ZTsK
</data>

          </attachment>
      

    </bug>

</bugzilla>