<?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>170087</bug_id>
          
          <creation_ts>2017-03-24 16:56:20 -0700</creation_ts>
          <short_desc>REGRESSION (r214014): media/restore-from-page-cache.html causes NoEventDispatchAssertion::isEventAllowedInMainThread() assertion failure</short_desc>
          <delta_ts>2017-03-24 18:21:24 -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>Tools / Tests</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>All</rep_platform>
          <op_sys>All</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar, Regression</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          <dependson>169703</dependson>
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Daniel Bates">dbates</reporter>
          <assigned_to name="Daniel Bates">dbates</assigned_to>
          <cc>buildbot</cc>
    
    <cc>cdumez</cc>
    
    <cc>esprehn+autocc</cc>
    
    <cc>japhet</cc>
    
    <cc>kangil.han</cc>
    
    <cc>lforschler</cc>
    
    <cc>simon.fraser</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1291082</commentid>
    <comment_count>0</comment_count>
    <who name="Daniel Bates">dbates</who>
    <bug_when>2017-03-24 16:56:20 -0700</bug_when>
    <thetext>The test media/restore-from-page-cache.html dispatches a non-bubbling, non-cancelable DOM resize event when the page is being restored from the page cache. Following &lt;https://trac.webkit.org/changeset/214014&gt; (bug #169703) we assert that DOM events should not be dispatched when a page is being restored from the page cache.

[[
ASSERTION FAILED: NoEventDispatchAssertion::isEventAllowedInMainThread()
/Volumes/Data/slave/sierra-debug/build/Source/WebCore/dom/EventDispatcher.cpp(131) : bool WebCore::EventDispatcher::dispatchEvent(WebCore::Node &amp;, WebCore::Event &amp;)
1   0x11076682d WTFCrash
2   0x110766849 WTFCrashWithSecurityImplication
3   0x1188d7ef4 WebCore::EventDispatcher::dispatchEvent(WebCore::Node&amp;, WebCore::Event&amp;)
4   0x119fdda1d WebCore::Node::dispatchEvent(WebCore::Event&amp;)
5   0x118d59d75 WebCore::HTMLMediaElement::layoutSizeChanged()::$_2::operator()() const
6   0x118d59b39 WTF::Function&lt;void ()&gt;::CallableWrapper&lt;WebCore::HTMLMediaElement::layoutSizeChanged()::$_2&gt;::call()
7   0x11805679e WTF::Function&lt;void ()&gt;::operator()() const
8   0x118b152b6 WebCore::FrameView::flushPostLayoutTasksQueue()
9   0x118b028a5 WebCore::FrameView::performPostLayoutTasks()
10  0x118b0939d WebCore::FrameView::layout(bool)
11  0x118b12a2a WebCore::FrameView::updateContentsSize()
12  0x1182413a0 WebCore::CachedPage::restore(WebCore::Page&amp;)
13  0x118ad6683 WebCore::FrameLoader::commitProvisionalLoad()
14  0x118adc0f5 WebCore::FrameLoader::loadProvisionalItemFromCachedPage()
15  0x118ad44a6 WebCore::FrameLoader::continueLoadAfterNavigationPolicy(WebCore::ResourceRequest const&amp;, WebCore::FormState*, bool, WebCore::AllowNavigationToInvalidURL)
16  0x118aeb338 WebCore::FrameLoader::loadWithDocumentLoader(WebCore::DocumentLoader*, WebCore::FrameLoadType, WebCore::FormState*, WebCore::AllowNavigationToInvalidURL)::$_4::operator()(WebCore::ResourceRequest const&amp;, WebCore::FormState*, bool) const
17  0x118aeb2da void std::__1::__invoke_void_return_wrapper&lt;void&gt;::__call&lt;WebCore::FrameLoader::loadWithDocumentLoader(WebCore::DocumentLoader*, WebCore::FrameLoadType, WebCore::FormState*, WebCore::AllowNavigationToInvalidURL)::$_4&amp;, WebCore::ResourceRequest const&amp;, WebCore::FormState*, bool&gt;(WebCore::FrameLoader::loadWithDocumentLoader(WebCore::DocumentLoader*, WebCore::FrameLoadType, WebCore::FormState*, WebCore::AllowNavigationToInvalidURL)::$_4&amp;&amp;&amp;, WebCore::ResourceRequest const&amp;&amp;&amp;, WebCore::FormState*&amp;&amp;, bool&amp;&amp;)
18  0x118aeb219 std::__1::__function::__func&lt;WebCore::FrameLoader::loadWithDocumentLoader(WebCore::DocumentLoader*, WebCore::FrameLoadType, WebCore::FormState*, WebCore::AllowNavigationToInvalidURL)::$_4, std::__1::allocator&lt;WebCore::FrameLoader::loadWithDocumentLoader(WebCore::DocumentLoader*, WebCore::FrameLoadType, WebCore::FormState*, WebCore::AllowNavigationToInvalidURL)::$_4&gt;, void (WebCore::ResourceRequest const&amp;, WebCore::FormState*, bool)&gt;::operator()(WebCore::ResourceRequest const&amp;, WebCore::FormState*&amp;&amp;, bool&amp;&amp;)
19  0x11a0f21fa std::__1::function&lt;void (WebCore::ResourceRequest const&amp;, WebCore::FormState*, bool)&gt;::operator()(WebCore::ResourceRequest const&amp;, WebCore::FormState*, bool) const
20  0x11a0f20bb WebCore::PolicyCallback::call(bool)
21  0x11a0f3388 WebCore::PolicyChecker::continueAfterNavigationPolicy(WebCore::PolicyAction)
22  0x11a0f705e WebCore::PolicyChecker::checkNavigationPolicy(WebCore::ResourceRequest const&amp;, bool, WebCore::DocumentLoader*, WebCore::FormState*, std::__1::function&lt;void (WebCore::ResourceRequest const&amp;, WebCore::FormState*, bool)&gt;)::$_1::operator()(WebCore::PolicyAction) const
23  0x11a0f702f void std::__1::__invoke_void_return_wrapper&lt;void&gt;::__call&lt;WebCore::PolicyChecker::checkNavigationPolicy(WebCore::ResourceRequest const&amp;, bool, WebCore::DocumentLoader*, WebCore::FormState*, std::__1::function&lt;void (WebCore::ResourceRequest const&amp;, WebCore::FormState*, bool)&gt;)::$_1&amp;, WebCore::PolicyAction&gt;(WebCore::PolicyChecker::checkNavigationPolicy(WebCore::ResourceRequest const&amp;, bool, WebCore::DocumentLoader*, WebCore::FormState*, std::__1::function&lt;void (WebCore::ResourceRequest const&amp;, WebCore::FormState*, bool)&gt;)::$_1&amp;&amp;&amp;, WebCore::PolicyAction&amp;&amp;)
24  0x11a0f6fb9 std::__1::__function::__func&lt;WebCore::PolicyChecker::checkNavigationPolicy(WebCore::ResourceRequest const&amp;, bool, WebCore::DocumentLoader*, WebCore::FormState*, std::__1::function&lt;void (WebCore::ResourceRequest const&amp;, WebCore::FormState*, bool)&gt;)::$_1, std::__1::allocator&lt;WebCore::PolicyChecker::checkNavigationPolicy(WebCore::ResourceRequest const&amp;, bool, WebCore::DocumentLoader*, WebCore::FormState*, std::__1::function&lt;void (WebCore::ResourceRequest const&amp;, WebCore::FormState*, bool)&gt;)::$_1&gt;, void (WebCore::PolicyAction)&gt;::operator()(WebCore::PolicyAction&amp;&amp;)
25  0x122c9f12c std::__1::function&lt;void (WebCore::PolicyAction)&gt;::operator()(WebCore::PolicyAction) const
26  0x122ca75a0 -[WebFramePolicyListener receivedPolicyDecision:]
27  0x122ca777d -[WebFramePolicyListener use]
28  0x10ea675da -[DefaultPolicyDelegate webView:decidePolicyForNavigationAction:request:frame:decisionListener:]
29  0x7fffcfc5a6dc __invoking___
30  0x7fffcfc5a561 -[NSInvocation invoke]
31  0x7fffcfc73736 -[NSInvocation invokeWithTarget:]
]]
&lt;https://build.webkit.org/results/Apple%20Sierra%20Debug%20WK1%20(Tests)/r214369%20(166)/media/restore-from-page-cache-crash-log.txt&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1291099</commentid>
    <comment_count>1</comment_count>
      <attachid>305344</attachid>
    <who name="Daniel Bates">dbates</who>
    <bug_when>2017-03-24 17:47:28 -0700</bug_when>
    <thetext>Created attachment 305344
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1291105</commentid>
    <comment_count>2</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2017-03-24 17:56:59 -0700</bug_when>
    <thetext>&lt;rdar://problem/31254822&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1291109</commentid>
    <comment_count>3</comment_count>
      <attachid>305349</attachid>
    <who name="Daniel Bates">dbates</who>
    <bug_when>2017-03-24 18:09:01 -0700</bug_when>
    <thetext>Created attachment 305349
Patch

Update patch to rename Document::enqueue{Pageshow, Popstate}Event() to dispatch{Pageshow, Popstate}Event(), respectively, to better reflect their purpose.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1291112</commentid>
    <comment_count>4</comment_count>
      <attachid>305349</attachid>
    <who name="Daniel Bates">dbates</who>
    <bug_when>2017-03-24 18:13:27 -0700</bug_when>
    <thetext>Comment on attachment 305349
Patch

Clearing flags on attachment: 305349

Committed r214392: &lt;http://trac.webkit.org/changeset/214392&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1291113</commentid>
    <comment_count>5</comment_count>
    <who name="Daniel Bates">dbates</who>
    <bug_when>2017-03-24 18:13:30 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>305344</attachid>
            <date>2017-03-24 17:47:28 -0700</date>
            <delta_ts>2017-03-24 18:08:58 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-170087-20170324174727.patch</filename>
            <type>text/plain</type>
            <size>7709</size>
            <attacher name="Daniel Bates">dbates</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjE0Mzg4CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggODk4OTZiODlhYjM0MTYw
MWJjYzhjYmFkZWNhZmVmMzkxYjQ1NzNhYi4uNTFmNTMwMzhiZGZkNWMzMmFlYzUyMzNiZTQ4NWYx
ZjJlOGRiOTI3OSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI4IEBACisyMDE3LTAzLTI0ICBEYW5p
ZWwgQmF0ZXMgIDxkYWJhdGVzQGFwcGxlLmNvbT4KKworICAgICAgICBtZWRpYS9yZXN0b3JlLWZy
b20tcGFnZS1jYWNoZS5odG1sIGNhdXNlcyBOb0V2ZW50RGlzcGF0Y2hBc3NlcnRpb246OmlzRXZl
bnRBbGxvd2VkSW5NYWluVGhyZWFkKCkgYXNzZXJ0aW9uIGZhaWx1cmUKKyAgICAgICAgaHR0cHM6
Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE3MDA4NworCisgICAgICAgIFJldmll
d2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFJlZHVjZSB0aGUgc2NvcGUgb2YgY29k
ZSB0aGF0IHNob3VsZCBuZXZlciBkaXNwYXRjaCBET00gZXZlbnRzIHNvIGFzIHRvIGFsbG93IHVw
ZGF0aW5nIGNvbnRlbnRzIHNpemUKKyAgICAgICAgYWZ0ZXIgcmVzdG9yaW5nIGEgcGFnZSBmcm9t
IHRoZSBwYWdlIGNhY2hlLgorCisgICAgICAgIEluIHIyMTQwMTQgd2UgaW5zdGFudGlhdGUgYSBO
b0V2ZW50RGlzcGF0Y2hBc3NlcnRpb24gaW4gRnJhbWVMb2FkZXI6OmNvbW1pdFByb3Zpc2lvbmFs
TG9hZCgpCisgICAgICAgIGFyb3VuZCB0aGUgY2FsbCB0byBDYWNoZWRQYWdlOjpyZXN0b3JlKCkg
dG8gYXNzZXJ0IHdoZW4gYSBET00gZXZlbnQgaXMgZGlzcGF0Y2hlZCBkdXJpbmcKKyAgICAgICAg
cGFnZSByZXN0b3JhdGlvbiBhcyBzdWNoIGV2ZW50cyBjYW4gY2F1c2UgcmUtZW50cmFuY3kgaW50
byB0aGUgcGFnZSBjYWNoZS4gQXMgaXQgdHVybnMgb3V0CisgICAgICAgIGl0IGlzIHN1ZmZpY2ll
bnQgdG8gZW5zdXJlIHRoYXQgbm8gRE9NIGV2ZW50cyBhcmUgZGlzcGF0Y2hlZCBhZnRlciByZXN0
b3JpbmcgYWxsIGNhY2hlZCBmcmFtZXMKKyAgICAgICAgYXMgb3Bwb3NlZCB0byBhZnRlciBDYWNo
ZWRQYWdlOjpyZXN0b3JlKCkgcmV0dXJucy4KKworICAgICAgICAqIGhpc3RvcnkvQ2FjaGVkUGFn
ZS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpmaXJlUGFnZVNob3dBbmRQb3BTdGF0ZUV2ZW50cyk6
IE1vdmVkIGxvZ2ljIGZyb20gRnJhbWVMb2FkZXI6OmRpZFJlc3RvcmVGcm9tQ2FjaGVkUGFnZSgp
IHRvIGhlcmUuCisgICAgICAgIChXZWJDb3JlOjpDYWNoZWRQYWdlOjpyZXN0b3JlKTogTW9kaWZp
ZWQgdG8gY2FsbCBmaXJlUGFnZVNob3dBbmRQb3BTdGF0ZUV2ZW50cygpLgorICAgICAgICAqIGxv
YWRlci9GcmFtZUxvYWRlci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpGcmFtZUxvYWRlcjo6Y29t
bWl0UHJvdmlzaW9uYWxMb2FkKTogUmVtb3ZlZCB1c2Ugb2YgTm9FdmVudERpc3BhdGNoQXNzZXJ0
aW9uIFJBSUkgb2JqZWN0LiBXZQorICAgICAgICB3aWxsIGluc3RhbnRpYXRlIGl0IGluIENhY2hl
ZFBhZ2U6OnJlc3RvcmUoKSB3aXRoIGEgc21hbGxlciBzY29wZS4KKyAgICAgICAgKFdlYkNvcmU6
OkZyYW1lTG9hZGVyOjpkaWRSZXN0b3JlRnJvbUNhY2hlZFBhZ2UpOiBEZWxldGVkOyBtb3ZlZCBs
b2dpYyBmcm9tIGhlcmUgdG8gV2ViQ29yZTo6ZmlyZVBhZ2VTaG93QW5kUG9wU3RhdGVFdmVudHMo
KS4KKyAgICAgICAgKiBsb2FkZXIvRnJhbWVMb2FkZXIuaDoKKwogMjAxNy0wMy0yNCAgUnlhbiBI
YWRkYWQgIDxyeWFuaGFkZGFkQGFwcGxlLmNvbT4KIAogICAgICAgICBVbnJldmlld2VkLCByb2xs
aW5nIG91dCByMjE0MzYxLgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaGlzdG9yeS9DYWNo
ZWRQYWdlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2hpc3RvcnkvQ2FjaGVkUGFnZS5jcHAKaW5kZXgg
NTY1MGFiZjNmZjlhMGVhODY5OWI0ZDU1NDBlMDU1OWZhNmYxZmI4My4uNTFhZjViNTM2MWVmZTkx
NmVlM2E2NzczMmJlODJkMTY2NjIzOWFiZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaGlz
dG9yeS9DYWNoZWRQYWdlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9oaXN0b3J5L0NhY2hlZFBh
Z2UuY3BwCkBAIC0zMCw5ICszMCwxMyBAQAogI2luY2x1ZGUgIkVsZW1lbnQuaCIKICNpbmNsdWRl
ICJGb2N1c0NvbnRyb2xsZXIuaCIKICNpbmNsdWRlICJGcmFtZVZpZXcuaCIKKyNpbmNsdWRlICJI
aXN0b3J5Q29udHJvbGxlci5oIgorI2luY2x1ZGUgIkhpc3RvcnlJdGVtLmgiCiAjaW5jbHVkZSAi
TWFpbkZyYW1lLmgiCisjaW5jbHVkZSAiTm9FdmVudERpc3BhdGNoQXNzZXJ0aW9uLmgiCiAjaW5j
bHVkZSAiTm9kZS5oIgogI2luY2x1ZGUgIlBhZ2UuaCIKKyNpbmNsdWRlICJQYWdlVHJhbnNpdGlv
bkV2ZW50LmgiCiAjaW5jbHVkZSAiU2V0dGluZ3MuaCIKICNpbmNsdWRlICJWaXNpdGVkTGlua1N0
YXRlLmgiCiAjaW5jbHVkZSA8d3RmL0N1cnJlbnRUaW1lLmg+CkBAIC02OSwxMyArNzMsNDQgQEAg
Q2FjaGVkUGFnZTo6fkNhY2hlZFBhZ2UoKQogICAgICAgICBtX2NhY2hlZE1haW5GcmFtZS0+ZGVz
dHJveSgpOwogfQogCitzdGF0aWMgdm9pZCBmaXJlUGFnZVNob3dBbmRQb3BTdGF0ZUV2ZW50cyhQ
YWdlJiBwYWdlKQoreworICAgIC8vIERpc3BhdGNoaW5nIEphdmFTY3JpcHQgZXZlbnRzIGNhbiBj
YXVzZSBmcmFtZSBkZXN0cnVjdGlvbi4KKyAgICBhdXRvJiBtYWluRnJhbWUgPSBwYWdlLm1haW5G
cmFtZSgpOworICAgIFZlY3RvcjxSZWY8RnJhbWU+PiBjaGlsZEZyYW1lczsKKyAgICBmb3IgKGF1
dG8qIGNoaWxkID0gbWFpbkZyYW1lLnRyZWUoKS50cmF2ZXJzZU5leHRJblBvc3RPcmRlcldpdGhX
cmFwKHRydWUpOyBjaGlsZDsgY2hpbGQgPSBjaGlsZC0+dHJlZSgpLnRyYXZlcnNlTmV4dEluUG9z
dE9yZGVyV2l0aFdyYXAoZmFsc2UpKQorICAgICAgICBjaGlsZEZyYW1lcy5hcHBlbmQoKmNoaWxk
KTsKKworICAgIGZvciAoYXV0byYgY2hpbGQgOiBjaGlsZEZyYW1lcykgeworICAgICAgICBpZiAo
IWNoaWxkLT50cmVlKCkuaXNEZXNjZW5kYW50T2YoJm1haW5GcmFtZSkpCisgICAgICAgICAgICBj
b250aW51ZTsKKyAgICAgICAgYXV0byogZG9jdW1lbnQgPSBjaGlsZC0+ZG9jdW1lbnQoKTsKKyAg
ICAgICAgaWYgKCFkb2N1bWVudCkKKyAgICAgICAgICAgIGNvbnRpbnVlOworCisgICAgICAgIC8v
IEZJWE1FOiBVcGRhdGUgUGFnZSBWaXNpYmlsaXR5IHN0YXRlIGhlcmUuCisgICAgICAgIC8vIGh0
dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMTY3NzAKKyAgICAgICAgZG9j
dW1lbnQtPmVucXVldWVQYWdlc2hvd0V2ZW50KFBhZ2VzaG93RXZlbnRQZXJzaXN0ZWQpOworCisg
ICAgICAgIGF1dG8qIGhpc3RvcnlJdGVtID0gY2hpbGQtPmxvYWRlcigpLmhpc3RvcnkoKS5jdXJy
ZW50SXRlbSgpOworICAgICAgICBpZiAoaGlzdG9yeUl0ZW0gJiYgaGlzdG9yeUl0ZW0tPnN0YXRl
T2JqZWN0KCkpCisgICAgICAgICAgICBkb2N1bWVudC0+ZW5xdWV1ZVBvcHN0YXRlRXZlbnQoaGlz
dG9yeUl0ZW0tPnN0YXRlT2JqZWN0KCkpOworICAgIH0KK30KKwogdm9pZCBDYWNoZWRQYWdlOjpy
ZXN0b3JlKFBhZ2UmIHBhZ2UpCiB7CiAgICAgQVNTRVJUKG1fY2FjaGVkTWFpbkZyYW1lKTsKICAg
ICBBU1NFUlQobV9jYWNoZWRNYWluRnJhbWUtPnZpZXcoKS0+ZnJhbWUoKS5pc01haW5GcmFtZSgp
KTsKICAgICBBU1NFUlQoIXBhZ2Uuc3ViZnJhbWVDb3VudCgpKTsKIAotICAgIG1fY2FjaGVkTWFp
bkZyYW1lLT5vcGVuKCk7CisgICAgeworICAgICAgICAvLyBEbyBub3QgZGlzcGF0Y2ggRE9NIGV2
ZW50cyBhcyB0aGVpciBKYXZhU2NyaXB0IGxpc3RlbmVycyBjb3VsZCBjYXVzZSB0aGUgcGFnZSB0
byBiZSBwdXQKKyAgICAgICAgLy8gaW50byB0aGUgcGFnZSBjYWNoZSBiZWZvcmUgd2UgaGF2ZSBm
aW5pc2hlZCByZXN0b3JpbmcgaXQgZnJvbSB0aGUgcGFnZSBjYWNoZS4KKyAgICAgICAgTm9FdmVu
dERpc3BhdGNoQXNzZXJ0aW9uIG5vRXZlbnREaXNwYXRjaEFzc2VydGlvbjsKKworICAgICAgICBt
X2NhY2hlZE1haW5GcmFtZS0+b3BlbigpOworICAgIH0KICAgICAKICAgICAvLyBSZXN0b3JlIHRo
ZSBmb2N1cyBhcHBlYXJhbmNlIGZvciB0aGUgZm9jdXNlZCBlbGVtZW50LgogICAgIC8vIEZJWE1F
OiBSaWdodCBub3cgd2UgZG9uJ3Qgc3VwcG9ydCBwYWdlcyB3LyBmcmFtZXMgaW4gdGhlIGIvZiBj
YWNoZS4gIFRoaXMgbWF5IG5lZWQgdG8gYmUgdHdlYWtlZCB3aGVuIHdlIGFkZCBzdXBwb3J0IGZv
ciB0aGF0LgpAQCAtMTE2LDYgKzE1MSw4IEBAIHZvaWQgQ2FjaGVkUGFnZTo6cmVzdG9yZShQYWdl
JiBwYWdlKQogICAgICAgICAgICAgZnJhbWVWaWV3LT51cGRhdGVDb250ZW50c1NpemUoKTsKICAg
ICB9CiAKKyAgICBmaXJlUGFnZVNob3dBbmRQb3BTdGF0ZUV2ZW50cyhwYWdlKTsKKwogICAgIGNs
ZWFyKCk7CiB9CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9GcmFtZUxvYWRl
ci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvRnJhbWVMb2FkZXIuY3BwCmluZGV4IGUwNGVh
NTAyZTU0YmYzMmRlYTYzNTI3Mzk3M2E3MjFiNTg1YjZkODAuLmJkMWU5OWY4ZjA3MzQwNGNmMDU0
OTcwM2M5Y2MzYWM5MTRiZjM2MDEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9G
cmFtZUxvYWRlci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL0ZyYW1lTG9hZGVyLmNw
cApAQCAtODYsNyArODYsNiBAQAogI2luY2x1ZGUgIk1haW5GcmFtZS5oIgogI2luY2x1ZGUgIk1l
bW9yeUNhY2hlLmgiCiAjaW5jbHVkZSAiTWVtb3J5UmVsZWFzZS5oIgotI2luY2x1ZGUgIk5vRXZl
bnREaXNwYXRjaEFzc2VydGlvbi5oIgogI2luY2x1ZGUgIlBhZ2UuaCIKICNpbmNsdWRlICJQYWdl
Q2FjaGUuaCIKICNpbmNsdWRlICJQYWdlVHJhbnNpdGlvbkV2ZW50LmgiCkBAIC0xODY2LDE5ICsx
ODY1LDExIEBAIHZvaWQgRnJhbWVMb2FkZXI6OmNvbW1pdFByb3Zpc2lvbmFsTG9hZCgpCiAKICAg
ICAgICAgc3RkOjpvcHRpb25hbDxIYXNJbnNlY3VyZUNvbnRlbnQ+IGhhc0luc2VjdXJlQ29udGVu
dCA9IGNhY2hlZFBhZ2UtPmNhY2hlZE1haW5GcmFtZSgpLT5oYXNJbnNlY3VyZUNvbnRlbnQoKTsK
IAotICAgICAgICB7Ci0gICAgICAgICAgICAvLyBEbyBub3QgZGlzcGF0Y2ggRE9NIGV2ZW50cyBh
cyB0aGVpciBKYXZhU2NyaXB0IGxpc3RlbmVycyBjb3VsZCBjYXVzZSB0aGUgcGFnZSB0byBiZSBw
dXQKLSAgICAgICAgICAgIC8vIGludG8gdGhlIHBhZ2UgY2FjaGUgYmVmb3JlIHdlIGhhdmUgZmlu
aXNoZWQgcmVzdG9yaW5nIGl0IGZyb20gdGhlIHBhZ2UgY2FjaGUuCi0gICAgICAgICAgICBOb0V2
ZW50RGlzcGF0Y2hBc3NlcnRpb24gYXNzZXJ0Tm9FdmVudERpc3BhdGNoOwotCi0gICAgICAgICAg
ICAvLyBGSVhNRTogVGhpcyBBUEkgc2hvdWxkIGJlIHR1cm5lZCBhcm91bmQgc28gdGhhdCB3ZSBn
cm91bmQgQ2FjaGVkUGFnZSBpbnRvIHRoZSBQYWdlLgotICAgICAgICAgICAgY2FjaGVkUGFnZS0+
cmVzdG9yZSgqbV9mcmFtZS5wYWdlKCkpOwotICAgICAgICB9CisgICAgICAgIC8vIEZJWE1FOiBU
aGlzIEFQSSBzaG91bGQgYmUgdHVybmVkIGFyb3VuZCBzbyB0aGF0IHdlIGdyb3VuZCBDYWNoZWRQ
YWdlIGludG8gdGhlIFBhZ2UuCisgICAgICAgIGNhY2hlZFBhZ2UtPnJlc3RvcmUoKm1fZnJhbWUu
cGFnZSgpKTsKIAogICAgICAgICBkaXNwYXRjaERpZENvbW1pdExvYWQoaGFzSW5zZWN1cmVDb250
ZW50KTsKIAotICAgICAgICBkaWRSZXN0b3JlRnJvbUNhY2hlZFBhZ2UoKTsKLQogI2lmIFBMQVRG
T1JNKElPUykKICAgICAgICAgbV9mcmFtZS5wYWdlKCktPmNocm9tZSgpLnNldERpc3BhdGNoVmll
d3BvcnREYXRhRGlkQ2hhbmdlU3VwcHJlc3NlZChmYWxzZSk7CiAgICAgICAgIG1fZnJhbWUucGFn
ZSgpLT5jaHJvbWUoKS5kaXNwYXRjaFZpZXdwb3J0UHJvcGVydGllc0RpZENoYW5nZShtX2ZyYW1l
LnBhZ2UoKS0+dmlld3BvcnRBcmd1bWVudHMoKSk7CkBAIC0yMTEyLDMxICsyMTAzLDYgQEAgdm9p
ZCBGcmFtZUxvYWRlcjo6d2lsbFJlc3RvcmVGcm9tQ2FjaGVkUGFnZSgpCiAgICAgfQogfQogCi12
b2lkIEZyYW1lTG9hZGVyOjpkaWRSZXN0b3JlRnJvbUNhY2hlZFBhZ2UoKQotewotICAgIC8vIERp
c3BhdGNoaW5nIEphdmFTY3JpcHQgZXZlbnRzIGNhbiBjYXVzZSBmcmFtZSBkZXN0cnVjdGlvbi4K
LSAgICBhdXRvJiBtYWluRnJhbWUgPSBtX2ZyYW1lLnBhZ2UoKS0+bWFpbkZyYW1lKCk7Ci0gICAg
VmVjdG9yPFJlZjxGcmFtZT4+IGNoaWxkRnJhbWVzOwotICAgIGZvciAoYXV0byogY2hpbGQgPSBt
YWluRnJhbWUudHJlZSgpLnRyYXZlcnNlTmV4dEluUG9zdE9yZGVyV2l0aFdyYXAodHJ1ZSk7IGNo
aWxkOyBjaGlsZCA9IGNoaWxkLT50cmVlKCkudHJhdmVyc2VOZXh0SW5Qb3N0T3JkZXJXaXRoV3Jh
cChmYWxzZSkpCi0gICAgICAgIGNoaWxkRnJhbWVzLmFwcGVuZCgqY2hpbGQpOwotCi0gICAgZm9y
IChhdXRvJiBjaGlsZCA6IGNoaWxkRnJhbWVzKSB7Ci0gICAgICAgIGlmICghY2hpbGQtPnRyZWUo
KS5pc0Rlc2NlbmRhbnRPZigmbWFpbkZyYW1lKSkKLSAgICAgICAgICAgIGNvbnRpbnVlOwotICAg
ICAgICBhdXRvKiBkb2N1bWVudCA9IGNoaWxkLT5kb2N1bWVudCgpOwotICAgICAgICBpZiAoIWRv
Y3VtZW50KQotICAgICAgICAgICAgY29udGludWU7Ci0KLSAgICAgICAgLy8gRklYTUU6IFVwZGF0
ZSBQYWdlIFZpc2liaWxpdHkgc3RhdGUgaGVyZS4KLSAgICAgICAgLy8gaHR0cHM6Ly9idWdzLndl
YmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTExNjc3MAotICAgICAgICBkb2N1bWVudC0+ZW5xdWV1
ZVBhZ2VzaG93RXZlbnQoUGFnZXNob3dFdmVudFBlcnNpc3RlZCk7Ci0KLSAgICAgICAgYXV0byog
aGlzdG9yeUl0ZW0gPSBjaGlsZC0+bG9hZGVyKCkuaGlzdG9yeSgpLmN1cnJlbnRJdGVtKCk7Ci0g
ICAgICAgIGlmIChoaXN0b3J5SXRlbSAmJiBoaXN0b3J5SXRlbS0+c3RhdGVPYmplY3QoKSkKLSAg
ICAgICAgICAgIGRvY3VtZW50LT5lbnF1ZXVlUG9wc3RhdGVFdmVudChoaXN0b3J5SXRlbS0+c3Rh
dGVPYmplY3QoKSk7Ci0gICAgfQotfQotCiB2b2lkIEZyYW1lTG9hZGVyOjpvcGVuKENhY2hlZEZy
YW1lQmFzZSYgY2FjaGVkRnJhbWUpCiB7CiAgICAgbV9pc0NvbXBsZXRlID0gZmFsc2U7CmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvRnJhbWVMb2FkZXIuaCBiL1NvdXJjZS9XZWJD
b3JlL2xvYWRlci9GcmFtZUxvYWRlci5oCmluZGV4IGZkMWJiMTUwMzk0ZWI4OTdhNGNjOWU0MGQ3
ZjFmZWYyN2E4ZDVjNjcuLjdiNDdmOTQyY2FlM2RhZGEwYjE5YmMwNTRlYzEzM2ZlOTRiOTk1YzIg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9GcmFtZUxvYWRlci5oCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL2xvYWRlci9GcmFtZUxvYWRlci5oCkBAIC0zNDcsNyArMzQ3LDYgQEAgcHJp
dmF0ZToKIAogICAgIHZvaWQgY2xvc2VPbGREYXRhU291cmNlcygpOwogICAgIHZvaWQgd2lsbFJl
c3RvcmVGcm9tQ2FjaGVkUGFnZSgpOwotICAgIHZvaWQgZGlkUmVzdG9yZUZyb21DYWNoZWRQYWdl
KCk7CiAKICAgICBib29sIHNob3VsZFJlbG9hZFRvSGFuZGxlVW5yZWFjaGFibGVVUkwoRG9jdW1l
bnRMb2FkZXIqKTsKIAo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>305349</attachid>
            <date>2017-03-24 18:09:01 -0700</date>
            <delta_ts>2017-03-24 18:13:27 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-170087-20170324180900.patch</filename>
            <type>text/plain</type>
            <size>11612</size>
            <attacher name="Daniel Bates">dbates</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjE0Mzg4CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggODk4OTZiODlhYjM0MTYw
MWJjYzhjYmFkZWNhZmVmMzkxYjQ1NzNhYi4uMTQxMDcxNGI5ZjFiZTBhYjljYzg4MjY3MjJkMzFl
OTA3ODVlZTU5ZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQxIEBACisyMDE3LTAzLTI0ICBEYW5p
ZWwgQmF0ZXMgIDxkYWJhdGVzQGFwcGxlLmNvbT4KKworICAgICAgICBtZWRpYS9yZXN0b3JlLWZy
b20tcGFnZS1jYWNoZS5odG1sIGNhdXNlcyBOb0V2ZW50RGlzcGF0Y2hBc3NlcnRpb246OmlzRXZl
bnRBbGxvd2VkSW5NYWluVGhyZWFkKCkgYXNzZXJ0aW9uIGZhaWx1cmUKKyAgICAgICAgaHR0cHM6
Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE3MDA4NworICAgICAgICA8cmRhcjov
L3Byb2JsZW0vMzEyNTQ4MjI+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISku
CisKKyAgICAgICAgUmVkdWNlIHRoZSBzY29wZSBvZiBjb2RlIHRoYXQgc2hvdWxkIG5ldmVyIGRp
c3BhdGNoIERPTSBldmVudHMgc28gYXMgdG8gYWxsb3cgdXBkYXRpbmcgY29udGVudHMgc2l6ZQor
ICAgICAgICBhZnRlciByZXN0b3JpbmcgYSBwYWdlIGZyb20gdGhlIHBhZ2UgY2FjaGUuCisKKyAg
ICAgICAgSW4gcjIxNDAxNCB3ZSBpbnN0YW50aWF0ZSBhIE5vRXZlbnREaXNwYXRjaEFzc2VydGlv
biBpbiBGcmFtZUxvYWRlcjo6Y29tbWl0UHJvdmlzaW9uYWxMb2FkKCkKKyAgICAgICAgYXJvdW5k
IHRoZSBjYWxsIHRvIENhY2hlZFBhZ2U6OnJlc3RvcmUoKSB0byBhc3NlcnQgd2hlbiBhIERPTSBl
dmVudCBpcyBkaXNwYXRjaGVkIGR1cmluZworICAgICAgICBwYWdlIHJlc3RvcmF0aW9uIGFzIHN1
Y2ggZXZlbnRzIGNhbiBjYXVzZSByZS1lbnRyYW5jeSBpbnRvIHRoZSBwYWdlIGNhY2hlLiBBcyBp
dCB0dXJucyBvdXQKKyAgICAgICAgaXQgaXMgc3VmZmljaWVudCB0byBlbnN1cmUgdGhhdCBubyBE
T00gZXZlbnRzIGFyZSBkaXNwYXRjaGVkIGFmdGVyIHJlc3RvcmluZyBhbGwgY2FjaGVkIGZyYW1l
cworICAgICAgICBhcyBvcHBvc2VkIHRvIGFmdGVyIENhY2hlZFBhZ2U6OnJlc3RvcmUoKSByZXR1
cm5zLgorCisgICAgICAgIEFsc28gcmVuYW1lIERvY3VtZW50OjplbnF1ZXVle1BhZ2VzaG93LCBQ
b3BzdGF0ZX1FdmVudCgpIHRvIGRpc3BhdGNoe1BhZ2VzaG93LCBQb3BzdGF0ZX1FdmVudCgpLAor
ICAgICAgICByZXNwZWN0aXZlbHksIHNpbmNlIHRoZXkgc3luY2hyb25vdXNseSBkaXNwYXRjaCBl
dmVudHMgOiguIFdlIGhvcGUgaW4gdGhlIGZ1dHVyZSB0byBtYWtlIHRoZW0KKyAgICAgICAgYXN5
bmNocm9ub3VzbHkgZGlzcGF0Y2ggZXZlbnRzLgorCisgICAgICAgICogZG9tL0RvY3VtZW50LmNw
cDoKKyAgICAgICAgKFdlYkNvcmU6OkRvY3VtZW50OjppbXBsaWNpdENsb3NlKTogVXBkYXRlIGZv
ciByZW5hbWluZy4KKyAgICAgICAgKFdlYkNvcmU6OkRvY3VtZW50OjpzdGF0ZVBvcHBlZCk6IERp
dHRvLgorICAgICAgICAoV2ViQ29yZTo6RG9jdW1lbnQ6OmRpc3BhdGNoUGFnZXNob3dFdmVudCk6
IFJlbmFtZWQ7IGZvcm1lcmx5IG5hbWVkIGVucXVldWVQYWdlc2hvd0V2ZW50KCkuCisgICAgICAg
IChXZWJDb3JlOjpEb2N1bWVudDo6ZGlzcGF0Y2hQb3BzdGF0ZUV2ZW50KTogUmVuYW1lZDsgZm9y
bWVybHkgbmFtZWQgZW5xdWV1ZVBvcHN0YXRlRXZlbnQoKS4KKyAgICAgICAgKFdlYkNvcmU6OkRv
Y3VtZW50OjplbnF1ZXVlUGFnZXNob3dFdmVudCk6IERlbGV0ZWQuCisgICAgICAgIChXZWJDb3Jl
OjpEb2N1bWVudDo6ZW5xdWV1ZVBvcHN0YXRlRXZlbnQpOiBEZWxldGVkLgorICAgICAgICAqIGRv
bS9Eb2N1bWVudC5oOgorICAgICAgICAqIGhpc3RvcnkvQ2FjaGVkUGFnZS5jcHA6CisgICAgICAg
IChXZWJDb3JlOjpmaXJlUGFnZVNob3dBbmRQb3BTdGF0ZUV2ZW50cyk6IE1vdmVkIGxvZ2ljIGZy
b20gRnJhbWVMb2FkZXI6OmRpZFJlc3RvcmVGcm9tQ2FjaGVkUGFnZSgpIHRvIGhlcmUuCisgICAg
ICAgIChXZWJDb3JlOjpDYWNoZWRQYWdlOjpyZXN0b3JlKTogTW9kaWZpZWQgdG8gY2FsbCBmaXJl
UGFnZVNob3dBbmRQb3BTdGF0ZUV2ZW50cygpLgorICAgICAgICAqIGxvYWRlci9GcmFtZUxvYWRl
ci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpGcmFtZUxvYWRlcjo6Y29tbWl0UHJvdmlzaW9uYWxM
b2FkKTogUmVtb3ZlZCB1c2Ugb2YgTm9FdmVudERpc3BhdGNoQXNzZXJ0aW9uIFJBSUkgb2JqZWN0
LiBXZQorICAgICAgICB3aWxsIGluc3RhbnRpYXRlIGl0IGluIENhY2hlZFBhZ2U6OnJlc3RvcmUo
KSB3aXRoIGEgc21hbGxlciBzY29wZS4KKyAgICAgICAgKFdlYkNvcmU6OkZyYW1lTG9hZGVyOjpk
aWRSZXN0b3JlRnJvbUNhY2hlZFBhZ2UpOiBEZWxldGVkOyBtb3ZlZCBsb2dpYyBmcm9tIGhlcmUg
dG8gV2ViQ29yZTo6ZmlyZVBhZ2VTaG93QW5kUG9wU3RhdGVFdmVudHMoKS4KKyAgICAgICAgKiBs
b2FkZXIvRnJhbWVMb2FkZXIuaDoKKwogMjAxNy0wMy0yNCAgUnlhbiBIYWRkYWQgIDxyeWFuaGFk
ZGFkQGFwcGxlLmNvbT4KIAogICAgICAgICBVbnJldmlld2VkLCByb2xsaW5nIG91dCByMjE0MzYx
LgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvZG9tL0RvY3VtZW50LmNwcCBiL1NvdXJjZS9X
ZWJDb3JlL2RvbS9Eb2N1bWVudC5jcHAKaW5kZXggZDFhNWMzZjYwYmE0NGI4ZWE0YzRkNDc0YjFj
MTYwNTc1YTMxMWVmZC4uNjJmY2Q2YzE0OTY4ZGNjNDJkMGYwNjRlZWNhMzE5ZWY5OTU4NjU3ZCAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvZG9tL0RvY3VtZW50LmNwcAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9kb20vRG9jdW1lbnQuY3BwCkBAIC0yNjQ0LDkgKzI2NDQsOSBAQCB2b2lkIERvY3Vt
ZW50OjppbXBsaWNpdENsb3NlKCkKICAgICAgICAgYWNjZXNzU1ZHRXh0ZW5zaW9ucygpLmRpc3Bh
dGNoU1ZHTG9hZEV2ZW50VG9PdXRlcm1vc3RTVkdFbGVtZW50cygpOwogCiAgICAgZGlzcGF0Y2hX
aW5kb3dMb2FkRXZlbnQoKTsKLSAgICBlbnF1ZXVlUGFnZXNob3dFdmVudChQYWdlc2hvd0V2ZW50
Tm90UGVyc2lzdGVkKTsKKyAgICBkaXNwYXRjaFBhZ2VzaG93RXZlbnQoUGFnZXNob3dFdmVudE5v
dFBlcnNpc3RlZCk7CiAgICAgaWYgKG1fcGVuZGluZ1N0YXRlT2JqZWN0KQotICAgICAgICBlbnF1
ZXVlUG9wc3RhdGVFdmVudChXVEZNb3ZlKG1fcGVuZGluZ1N0YXRlT2JqZWN0KSk7CisgICAgICAg
IGRpc3BhdGNoUG9wc3RhdGVFdmVudChXVEZNb3ZlKG1fcGVuZGluZ1N0YXRlT2JqZWN0KSk7CiAK
ICAgICBpZiAoZikKICAgICAgICAgZi0+bG9hZGVyKCkuZGlzcGF0Y2hPbmxvYWRFdmVudHMoKTsK
QEAgLTUyMzUsNyArNTIzNSw3IEBAIHZvaWQgRG9jdW1lbnQ6OnN0YXRlUG9wcGVkKFJlZjxTZXJp
YWxpemVkU2NyaXB0VmFsdWU+JiYgc3RhdGVPYmplY3QpCiAgICAgLy8gUGVyIHN0ZXAgMTEgb2Yg
c2VjdGlvbiA2LjUuOSAoaGlzdG9yeSB0cmF2ZXJzYWwpIG9mIHRoZSBIVE1MNSBzcGVjLCB3ZSAK
ICAgICAvLyBkZWZlciBmaXJpbmcgb2YgcG9wc3RhdGUgdW50aWwgd2UncmUgaW4gdGhlIGNvbXBs
ZXRlIHN0YXRlLgogICAgIGlmIChtX3JlYWR5U3RhdGUgPT0gQ29tcGxldGUpCi0gICAgICAgIGVu
cXVldWVQb3BzdGF0ZUV2ZW50KFdURk1vdmUoc3RhdGVPYmplY3QpKTsKKyAgICAgICAgZGlzcGF0
Y2hQb3BzdGF0ZUV2ZW50KFdURk1vdmUoc3RhdGVPYmplY3QpKTsKICAgICBlbHNlCiAgICAgICAg
IG1fcGVuZGluZ1N0YXRlT2JqZWN0ID0gV1RGTW92ZShzdGF0ZU9iamVjdCk7CiB9CkBAIC01NDYw
LDcgKzU0NjAsNyBAQCBTdHJpbmcgRG9jdW1lbnQ6OmRpc3BsYXlTdHJpbmdNb2RpZmllZEJ5RW5j
b2RpbmcoY29uc3QgU3RyaW5nJiBzdHJpbmcpIGNvbnN0CiAgICAgcmV0dXJuIFN0cmluZyB7IHN0
cmluZyB9LnJlcGxhY2UoJ1xcJywgbV9kZWNvZGVyLT5lbmNvZGluZygpLmJhY2tzbGFzaEFzQ3Vy
cmVuY3lTeW1ib2woKSk7CiB9CiAKLXZvaWQgRG9jdW1lbnQ6OmVucXVldWVQYWdlc2hvd0V2ZW50
KFBhZ2VzaG93RXZlbnRQZXJzaXN0ZW5jZSBwZXJzaXN0ZWQpCit2b2lkIERvY3VtZW50OjpkaXNw
YXRjaFBhZ2VzaG93RXZlbnQoUGFnZXNob3dFdmVudFBlcnNpc3RlbmNlIHBlcnNpc3RlZCkKIHsK
ICAgICAvLyBGSVhNRTogaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTM2
MzM0IFBhZ2VzaG93IGV2ZW50IG5lZWRzIHRvIGZpcmUgYXN5bmNocm9ub3VzbHkuCiAgICAgZGlz
cGF0Y2hXaW5kb3dFdmVudChQYWdlVHJhbnNpdGlvbkV2ZW50OjpjcmVhdGUoZXZlbnROYW1lcygp
LnBhZ2VzaG93RXZlbnQsIHBlcnNpc3RlZCksIHRoaXMpOwpAQCAtNTQ3MSw3ICs1NDcxLDcgQEAg
dm9pZCBEb2N1bWVudDo6ZW5xdWV1ZUhhc2hjaGFuZ2VFdmVudChjb25zdCBTdHJpbmcmIG9sZFVS
TCwgY29uc3QgU3RyaW5nJiBuZXdVUkwKICAgICBlbnF1ZXVlV2luZG93RXZlbnQoSGFzaENoYW5n
ZUV2ZW50OjpjcmVhdGUob2xkVVJMLCBuZXdVUkwpKTsKIH0KIAotdm9pZCBEb2N1bWVudDo6ZW5x
dWV1ZVBvcHN0YXRlRXZlbnQoUmVmUHRyPFNlcmlhbGl6ZWRTY3JpcHRWYWx1ZT4mJiBzdGF0ZU9i
amVjdCkKK3ZvaWQgRG9jdW1lbnQ6OmRpc3BhdGNoUG9wc3RhdGVFdmVudChSZWZQdHI8U2VyaWFs
aXplZFNjcmlwdFZhbHVlPiYmIHN0YXRlT2JqZWN0KQogewogICAgIGRpc3BhdGNoV2luZG93RXZl
bnQoUG9wU3RhdGVFdmVudDo6Y3JlYXRlKFdURk1vdmUoc3RhdGVPYmplY3QpLCBtX2RvbVdpbmRv
dyA/IG1fZG9tV2luZG93LT5oaXN0b3J5KCkgOiBudWxscHRyKSk7CiB9CmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9kb20vRG9jdW1lbnQuaCBiL1NvdXJjZS9XZWJDb3JlL2RvbS9Eb2N1bWVu
dC5oCmluZGV4IDRjOTM4ZDc3MWNkODJlNDYwNDM2NGFmZmRiYjYzODU1MzA5ODVlNTYuLjRiNzFl
NmVjYTQ2YTIyZjI2ZjIzNDBhNTUwMjZlNjIxOWExOGE0Y2YgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL2RvbS9Eb2N1bWVudC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2RvbS9Eb2N1bWVudC5o
CkBAIC0xMDU4LDkgKzEwNTgsOSBAQCBwdWJsaWM6CiAgICAgdm9pZCBlbnF1ZXVlV2luZG93RXZl
bnQoUmVmPEV2ZW50PiYmKTsKICAgICB2b2lkIGVucXVldWVEb2N1bWVudEV2ZW50KFJlZjxFdmVu
dD4mJik7CiAgICAgdm9pZCBlbnF1ZXVlT3ZlcmZsb3dFdmVudChSZWY8RXZlbnQ+JiYpOwotICAg
IHZvaWQgZW5xdWV1ZVBhZ2VzaG93RXZlbnQoUGFnZXNob3dFdmVudFBlcnNpc3RlbmNlKTsKKyAg
ICB2b2lkIGRpc3BhdGNoUGFnZXNob3dFdmVudChQYWdlc2hvd0V2ZW50UGVyc2lzdGVuY2UpOwog
ICAgIHZvaWQgZW5xdWV1ZUhhc2hjaGFuZ2VFdmVudChjb25zdCBTdHJpbmcmIG9sZFVSTCwgY29u
c3QgU3RyaW5nJiBuZXdVUkwpOwotICAgIHZvaWQgZW5xdWV1ZVBvcHN0YXRlRXZlbnQoUmVmUHRy
PFNlcmlhbGl6ZWRTY3JpcHRWYWx1ZT4mJiBzdGF0ZU9iamVjdCk7CisgICAgdm9pZCBkaXNwYXRj
aFBvcHN0YXRlRXZlbnQoUmVmUHRyPFNlcmlhbGl6ZWRTY3JpcHRWYWx1ZT4mJiBzdGF0ZU9iamVj
dCk7CiAgICAgRG9jdW1lbnRFdmVudFF1ZXVlJiBldmVudFF1ZXVlKCkgY29uc3QgZmluYWwgeyBy
ZXR1cm4gbV9ldmVudFF1ZXVlOyB9CiAKICAgICBXRUJDT1JFX0VYUE9SVCB2b2lkIGFkZE1lZGlh
Q2FuU3RhcnRMaXN0ZW5lcihNZWRpYUNhblN0YXJ0TGlzdGVuZXIqKTsKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL2hpc3RvcnkvQ2FjaGVkUGFnZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9oaXN0
b3J5L0NhY2hlZFBhZ2UuY3BwCmluZGV4IDU2NTBhYmYzZmY5YTBlYTg2OTliNGQ1NTQwZTA1NTlm
YTZmMWZiODMuLjNkZGQ5YzE4ZGNkMmY2MWFmMjNiODBjNDQyZGE3MThkZjk3M2FmNjQgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2hpc3RvcnkvQ2FjaGVkUGFnZS5jcHAKKysrIGIvU291cmNl
L1dlYkNvcmUvaGlzdG9yeS9DYWNoZWRQYWdlLmNwcApAQCAtMzAsOSArMzAsMTMgQEAKICNpbmNs
dWRlICJFbGVtZW50LmgiCiAjaW5jbHVkZSAiRm9jdXNDb250cm9sbGVyLmgiCiAjaW5jbHVkZSAi
RnJhbWVWaWV3LmgiCisjaW5jbHVkZSAiSGlzdG9yeUNvbnRyb2xsZXIuaCIKKyNpbmNsdWRlICJI
aXN0b3J5SXRlbS5oIgogI2luY2x1ZGUgIk1haW5GcmFtZS5oIgorI2luY2x1ZGUgIk5vRXZlbnRE
aXNwYXRjaEFzc2VydGlvbi5oIgogI2luY2x1ZGUgIk5vZGUuaCIKICNpbmNsdWRlICJQYWdlLmgi
CisjaW5jbHVkZSAiUGFnZVRyYW5zaXRpb25FdmVudC5oIgogI2luY2x1ZGUgIlNldHRpbmdzLmgi
CiAjaW5jbHVkZSAiVmlzaXRlZExpbmtTdGF0ZS5oIgogI2luY2x1ZGUgPHd0Zi9DdXJyZW50VGlt
ZS5oPgpAQCAtNjksMTMgKzczLDQ0IEBAIENhY2hlZFBhZ2U6On5DYWNoZWRQYWdlKCkKICAgICAg
ICAgbV9jYWNoZWRNYWluRnJhbWUtPmRlc3Ryb3koKTsKIH0KIAorc3RhdGljIHZvaWQgZmlyZVBh
Z2VTaG93QW5kUG9wU3RhdGVFdmVudHMoUGFnZSYgcGFnZSkKK3sKKyAgICAvLyBEaXNwYXRjaGlu
ZyBKYXZhU2NyaXB0IGV2ZW50cyBjYW4gY2F1c2UgZnJhbWUgZGVzdHJ1Y3Rpb24uCisgICAgYXV0
byYgbWFpbkZyYW1lID0gcGFnZS5tYWluRnJhbWUoKTsKKyAgICBWZWN0b3I8UmVmPEZyYW1lPj4g
Y2hpbGRGcmFtZXM7CisgICAgZm9yIChhdXRvKiBjaGlsZCA9IG1haW5GcmFtZS50cmVlKCkudHJh
dmVyc2VOZXh0SW5Qb3N0T3JkZXJXaXRoV3JhcCh0cnVlKTsgY2hpbGQ7IGNoaWxkID0gY2hpbGQt
PnRyZWUoKS50cmF2ZXJzZU5leHRJblBvc3RPcmRlcldpdGhXcmFwKGZhbHNlKSkKKyAgICAgICAg
Y2hpbGRGcmFtZXMuYXBwZW5kKCpjaGlsZCk7CisKKyAgICBmb3IgKGF1dG8mIGNoaWxkIDogY2hp
bGRGcmFtZXMpIHsKKyAgICAgICAgaWYgKCFjaGlsZC0+dHJlZSgpLmlzRGVzY2VuZGFudE9mKCZt
YWluRnJhbWUpKQorICAgICAgICAgICAgY29udGludWU7CisgICAgICAgIGF1dG8qIGRvY3VtZW50
ID0gY2hpbGQtPmRvY3VtZW50KCk7CisgICAgICAgIGlmICghZG9jdW1lbnQpCisgICAgICAgICAg
ICBjb250aW51ZTsKKworICAgICAgICAvLyBGSVhNRTogVXBkYXRlIFBhZ2UgVmlzaWJpbGl0eSBz
dGF0ZSBoZXJlLgorICAgICAgICAvLyBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5j
Z2k/aWQ9MTE2NzcwCisgICAgICAgIGRvY3VtZW50LT5kaXNwYXRjaFBhZ2VzaG93RXZlbnQoUGFn
ZXNob3dFdmVudFBlcnNpc3RlZCk7CisKKyAgICAgICAgYXV0byogaGlzdG9yeUl0ZW0gPSBjaGls
ZC0+bG9hZGVyKCkuaGlzdG9yeSgpLmN1cnJlbnRJdGVtKCk7CisgICAgICAgIGlmIChoaXN0b3J5
SXRlbSAmJiBoaXN0b3J5SXRlbS0+c3RhdGVPYmplY3QoKSkKKyAgICAgICAgICAgIGRvY3VtZW50
LT5kaXNwYXRjaFBvcHN0YXRlRXZlbnQoaGlzdG9yeUl0ZW0tPnN0YXRlT2JqZWN0KCkpOworICAg
IH0KK30KKwogdm9pZCBDYWNoZWRQYWdlOjpyZXN0b3JlKFBhZ2UmIHBhZ2UpCiB7CiAgICAgQVNT
RVJUKG1fY2FjaGVkTWFpbkZyYW1lKTsKICAgICBBU1NFUlQobV9jYWNoZWRNYWluRnJhbWUtPnZp
ZXcoKS0+ZnJhbWUoKS5pc01haW5GcmFtZSgpKTsKICAgICBBU1NFUlQoIXBhZ2Uuc3ViZnJhbWVD
b3VudCgpKTsKIAotICAgIG1fY2FjaGVkTWFpbkZyYW1lLT5vcGVuKCk7CisgICAgeworICAgICAg
ICAvLyBEbyBub3QgZGlzcGF0Y2ggRE9NIGV2ZW50cyBhcyB0aGVpciBKYXZhU2NyaXB0IGxpc3Rl
bmVycyBjb3VsZCBjYXVzZSB0aGUgcGFnZSB0byBiZSBwdXQKKyAgICAgICAgLy8gaW50byB0aGUg
cGFnZSBjYWNoZSBiZWZvcmUgd2UgaGF2ZSBmaW5pc2hlZCByZXN0b3JpbmcgaXQgZnJvbSB0aGUg
cGFnZSBjYWNoZS4KKyAgICAgICAgTm9FdmVudERpc3BhdGNoQXNzZXJ0aW9uIG5vRXZlbnREaXNw
YXRjaEFzc2VydGlvbjsKKworICAgICAgICBtX2NhY2hlZE1haW5GcmFtZS0+b3BlbigpOworICAg
IH0KICAgICAKICAgICAvLyBSZXN0b3JlIHRoZSBmb2N1cyBhcHBlYXJhbmNlIGZvciB0aGUgZm9j
dXNlZCBlbGVtZW50LgogICAgIC8vIEZJWE1FOiBSaWdodCBub3cgd2UgZG9uJ3Qgc3VwcG9ydCBw
YWdlcyB3LyBmcmFtZXMgaW4gdGhlIGIvZiBjYWNoZS4gIFRoaXMgbWF5IG5lZWQgdG8gYmUgdHdl
YWtlZCB3aGVuIHdlIGFkZCBzdXBwb3J0IGZvciB0aGF0LgpAQCAtMTE2LDYgKzE1MSw4IEBAIHZv
aWQgQ2FjaGVkUGFnZTo6cmVzdG9yZShQYWdlJiBwYWdlKQogICAgICAgICAgICAgZnJhbWVWaWV3
LT51cGRhdGVDb250ZW50c1NpemUoKTsKICAgICB9CiAKKyAgICBmaXJlUGFnZVNob3dBbmRQb3BT
dGF0ZUV2ZW50cyhwYWdlKTsKKwogICAgIGNsZWFyKCk7CiB9CiAKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL2xvYWRlci9GcmFtZUxvYWRlci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIv
RnJhbWVMb2FkZXIuY3BwCmluZGV4IGUwNGVhNTAyZTU0YmYzMmRlYTYzNTI3Mzk3M2E3MjFiNTg1
YjZkODAuLmJkMWU5OWY4ZjA3MzQwNGNmMDU0OTcwM2M5Y2MzYWM5MTRiZjM2MDEgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9GcmFtZUxvYWRlci5jcHAKKysrIGIvU291cmNlL1dl
YkNvcmUvbG9hZGVyL0ZyYW1lTG9hZGVyLmNwcApAQCAtODYsNyArODYsNiBAQAogI2luY2x1ZGUg
Ik1haW5GcmFtZS5oIgogI2luY2x1ZGUgIk1lbW9yeUNhY2hlLmgiCiAjaW5jbHVkZSAiTWVtb3J5
UmVsZWFzZS5oIgotI2luY2x1ZGUgIk5vRXZlbnREaXNwYXRjaEFzc2VydGlvbi5oIgogI2luY2x1
ZGUgIlBhZ2UuaCIKICNpbmNsdWRlICJQYWdlQ2FjaGUuaCIKICNpbmNsdWRlICJQYWdlVHJhbnNp
dGlvbkV2ZW50LmgiCkBAIC0xODY2LDE5ICsxODY1LDExIEBAIHZvaWQgRnJhbWVMb2FkZXI6OmNv
bW1pdFByb3Zpc2lvbmFsTG9hZCgpCiAKICAgICAgICAgc3RkOjpvcHRpb25hbDxIYXNJbnNlY3Vy
ZUNvbnRlbnQ+IGhhc0luc2VjdXJlQ29udGVudCA9IGNhY2hlZFBhZ2UtPmNhY2hlZE1haW5GcmFt
ZSgpLT5oYXNJbnNlY3VyZUNvbnRlbnQoKTsKIAotICAgICAgICB7Ci0gICAgICAgICAgICAvLyBE
byBub3QgZGlzcGF0Y2ggRE9NIGV2ZW50cyBhcyB0aGVpciBKYXZhU2NyaXB0IGxpc3RlbmVycyBj
b3VsZCBjYXVzZSB0aGUgcGFnZSB0byBiZSBwdXQKLSAgICAgICAgICAgIC8vIGludG8gdGhlIHBh
Z2UgY2FjaGUgYmVmb3JlIHdlIGhhdmUgZmluaXNoZWQgcmVzdG9yaW5nIGl0IGZyb20gdGhlIHBh
Z2UgY2FjaGUuCi0gICAgICAgICAgICBOb0V2ZW50RGlzcGF0Y2hBc3NlcnRpb24gYXNzZXJ0Tm9F
dmVudERpc3BhdGNoOwotCi0gICAgICAgICAgICAvLyBGSVhNRTogVGhpcyBBUEkgc2hvdWxkIGJl
IHR1cm5lZCBhcm91bmQgc28gdGhhdCB3ZSBncm91bmQgQ2FjaGVkUGFnZSBpbnRvIHRoZSBQYWdl
LgotICAgICAgICAgICAgY2FjaGVkUGFnZS0+cmVzdG9yZSgqbV9mcmFtZS5wYWdlKCkpOwotICAg
ICAgICB9CisgICAgICAgIC8vIEZJWE1FOiBUaGlzIEFQSSBzaG91bGQgYmUgdHVybmVkIGFyb3Vu
ZCBzbyB0aGF0IHdlIGdyb3VuZCBDYWNoZWRQYWdlIGludG8gdGhlIFBhZ2UuCisgICAgICAgIGNh
Y2hlZFBhZ2UtPnJlc3RvcmUoKm1fZnJhbWUucGFnZSgpKTsKIAogICAgICAgICBkaXNwYXRjaERp
ZENvbW1pdExvYWQoaGFzSW5zZWN1cmVDb250ZW50KTsKIAotICAgICAgICBkaWRSZXN0b3JlRnJv
bUNhY2hlZFBhZ2UoKTsKLQogI2lmIFBMQVRGT1JNKElPUykKICAgICAgICAgbV9mcmFtZS5wYWdl
KCktPmNocm9tZSgpLnNldERpc3BhdGNoVmlld3BvcnREYXRhRGlkQ2hhbmdlU3VwcHJlc3NlZChm
YWxzZSk7CiAgICAgICAgIG1fZnJhbWUucGFnZSgpLT5jaHJvbWUoKS5kaXNwYXRjaFZpZXdwb3J0
UHJvcGVydGllc0RpZENoYW5nZShtX2ZyYW1lLnBhZ2UoKS0+dmlld3BvcnRBcmd1bWVudHMoKSk7
CkBAIC0yMTEyLDMxICsyMTAzLDYgQEAgdm9pZCBGcmFtZUxvYWRlcjo6d2lsbFJlc3RvcmVGcm9t
Q2FjaGVkUGFnZSgpCiAgICAgfQogfQogCi12b2lkIEZyYW1lTG9hZGVyOjpkaWRSZXN0b3JlRnJv
bUNhY2hlZFBhZ2UoKQotewotICAgIC8vIERpc3BhdGNoaW5nIEphdmFTY3JpcHQgZXZlbnRzIGNh
biBjYXVzZSBmcmFtZSBkZXN0cnVjdGlvbi4KLSAgICBhdXRvJiBtYWluRnJhbWUgPSBtX2ZyYW1l
LnBhZ2UoKS0+bWFpbkZyYW1lKCk7Ci0gICAgVmVjdG9yPFJlZjxGcmFtZT4+IGNoaWxkRnJhbWVz
OwotICAgIGZvciAoYXV0byogY2hpbGQgPSBtYWluRnJhbWUudHJlZSgpLnRyYXZlcnNlTmV4dElu
UG9zdE9yZGVyV2l0aFdyYXAodHJ1ZSk7IGNoaWxkOyBjaGlsZCA9IGNoaWxkLT50cmVlKCkudHJh
dmVyc2VOZXh0SW5Qb3N0T3JkZXJXaXRoV3JhcChmYWxzZSkpCi0gICAgICAgIGNoaWxkRnJhbWVz
LmFwcGVuZCgqY2hpbGQpOwotCi0gICAgZm9yIChhdXRvJiBjaGlsZCA6IGNoaWxkRnJhbWVzKSB7
Ci0gICAgICAgIGlmICghY2hpbGQtPnRyZWUoKS5pc0Rlc2NlbmRhbnRPZigmbWFpbkZyYW1lKSkK
LSAgICAgICAgICAgIGNvbnRpbnVlOwotICAgICAgICBhdXRvKiBkb2N1bWVudCA9IGNoaWxkLT5k
b2N1bWVudCgpOwotICAgICAgICBpZiAoIWRvY3VtZW50KQotICAgICAgICAgICAgY29udGludWU7
Ci0KLSAgICAgICAgLy8gRklYTUU6IFVwZGF0ZSBQYWdlIFZpc2liaWxpdHkgc3RhdGUgaGVyZS4K
LSAgICAgICAgLy8gaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTExNjc3
MAotICAgICAgICBkb2N1bWVudC0+ZW5xdWV1ZVBhZ2VzaG93RXZlbnQoUGFnZXNob3dFdmVudFBl
cnNpc3RlZCk7Ci0KLSAgICAgICAgYXV0byogaGlzdG9yeUl0ZW0gPSBjaGlsZC0+bG9hZGVyKCku
aGlzdG9yeSgpLmN1cnJlbnRJdGVtKCk7Ci0gICAgICAgIGlmIChoaXN0b3J5SXRlbSAmJiBoaXN0
b3J5SXRlbS0+c3RhdGVPYmplY3QoKSkKLSAgICAgICAgICAgIGRvY3VtZW50LT5lbnF1ZXVlUG9w
c3RhdGVFdmVudChoaXN0b3J5SXRlbS0+c3RhdGVPYmplY3QoKSk7Ci0gICAgfQotfQotCiB2b2lk
IEZyYW1lTG9hZGVyOjpvcGVuKENhY2hlZEZyYW1lQmFzZSYgY2FjaGVkRnJhbWUpCiB7CiAgICAg
bV9pc0NvbXBsZXRlID0gZmFsc2U7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIv
RnJhbWVMb2FkZXIuaCBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9GcmFtZUxvYWRlci5oCmluZGV4
IGZkMWJiMTUwMzk0ZWI4OTdhNGNjOWU0MGQ3ZjFmZWYyN2E4ZDVjNjcuLjdiNDdmOTQyY2FlM2Rh
ZGEwYjE5YmMwNTRlYzEzM2ZlOTRiOTk1YzIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xv
YWRlci9GcmFtZUxvYWRlci5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9GcmFtZUxvYWRl
ci5oCkBAIC0zNDcsNyArMzQ3LDYgQEAgcHJpdmF0ZToKIAogICAgIHZvaWQgY2xvc2VPbGREYXRh
U291cmNlcygpOwogICAgIHZvaWQgd2lsbFJlc3RvcmVGcm9tQ2FjaGVkUGFnZSgpOwotICAgIHZv
aWQgZGlkUmVzdG9yZUZyb21DYWNoZWRQYWdlKCk7CiAKICAgICBib29sIHNob3VsZFJlbG9hZFRv
SGFuZGxlVW5yZWFjaGFibGVVUkwoRG9jdW1lbnRMb2FkZXIqKTsKIAo=
</data>

          </attachment>
      

    </bug>

</bugzilla>