<?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>218856</bug_id>
          
          <creation_ts>2020-11-12 10:13:31 -0800</creation_ts>
          <short_desc>ASSERTION FAILED: isValidIdentifier(m_identifier) seen with TestWebKitAPI.GPUProcess.WebProcessTerminationAfterTooManyGPUProcessCrashes</short_desc>
          <delta_ts>2020-11-12 14:01:41 -0800</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>WebKit2</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          <see_also>https://bugs.webkit.org/show_bug.cgi?id=218811</see_also>
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Ryan Haddad">ryanhaddad</reporter>
          <assigned_to name="Chris Dumez">cdumez</assigned_to>
          <cc>cdumez</cc>
    
    <cc>darin</cc>
    
    <cc>eric.carlson</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>ggaren</cc>
    
    <cc>glenn</cc>
    
    <cc>jer.noble</cc>
    
    <cc>peng.liu6</cc>
    
    <cc>philipj</cc>
    
    <cc>sergio</cc>
    
    <cc>thorton</cc>
    
    <cc>webkit-bot-watchers-bugzilla</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1706914</commentid>
    <comment_count>0</comment_count>
    <who name="Ryan Haddad">ryanhaddad</who>
    <bug_when>2020-11-12 10:13:31 -0800</bug_when>
    <thetext>TestWebKitAPI.GPUProcess.WebProcessTerminationAfterTooManyGPUProcessCrashes
        ASSERTION FAILED: isValidIdentifier(m_identifier)
        /Volumes/Data/slave/catalina-debug/build/WebKitBuild/Debug/usr/local/include/wtf/ObjectIdentifier.h(69) : void WTF::ObjectIdentifier&lt;WebKit::RemoteAudioDestinationIdentifierType&gt;::encode(Encoder &amp;) const [T = WebKit::RemoteAudioDestinationIdentifierType, Encoder = IPC::Encoder]
        1   0x7cf3830c9 WTFCrash
        2   0x7a000322b WTFCrashWithInfo(int, char const*, char const*, int)
        3   0x7a07e1742 void WTF::ObjectIdentifier&lt;WebKit::RemoteAudioDestinationIdentifierType&gt;::encode&lt;IPC::Encoder&gt;(IPC::Encoder&amp;) const
        4   0x7a07e16bd IPC::ArgumentCoder&lt;WTF::ObjectIdentifier&lt;WebKit::RemoteAudioDestinationIdentifierType&gt; &gt;::encode(IPC::Encoder&amp;, WTF::ObjectIdentifier&lt;WebKit::RemoteAudioDestinationIdentifierType&gt; const&amp;)
        5   0x7a07e1680 void IPC::Encoder::encode&lt;WTF::ObjectIdentifier&lt;WebKit::RemoteAudioDestinationIdentifierType&gt; const&amp;, (void*)0&gt;(WTF::ObjectIdentifier&lt;WebKit::RemoteAudioDestinationIdentifierType&gt; const&amp;)
        6   0x7a07c262d IPC::Encoder&amp; IPC::Encoder::operator&lt;&lt;&lt;WTF::ObjectIdentifier&lt;WebKit::RemoteAudioDestinationIdentifierType&gt; const&amp;, (void*)0&gt;(WTF::ObjectIdentifier&lt;WebKit::RemoteAudioDestinationIdentifierType&gt; const&amp;)
        7   0x7a17ce470 IPC::TupleEncoder&lt;4ul, WTF::ObjectIdentifier&lt;WebKit::RemoteAudioDestinationIdentifierType&gt; const&amp;, WebKit::SharedMemory::IPCHandle const&amp;, WebCore::CAAudioStreamDescription const&amp;, unsigned long long&gt;::encode(IPC::Encoder&amp;, std::__1::tuple&lt;WTF::ObjectIdentifier&lt;WebKit::RemoteAudioDestinationIdentifierType&gt; const&amp;, WebKit::SharedMemory::IPCHandle const&amp;, WebCore::CAAudioStreamDescription const&amp;, unsigned long long&gt; const&amp;)
        8   0x7a17ce41d IPC::ArgumentCoder&lt;std::__1::tuple&lt;WTF::ObjectIdentifier&lt;WebKit::RemoteAudioDestinationIdentifierType&gt; const&amp;, WebKit::SharedMemory::IPCHandle const&amp;, WebCore::CAAudioStreamDescription const&amp;, unsigned long long&gt; &gt;::encode(IPC::Encoder&amp;, std::__1::tuple&lt;WTF::ObjectIdentifier&lt;WebKit::RemoteAudioDestinationIdentifierType&gt; const&amp;, WebKit::SharedMemory::IPCHandle const&amp;, WebCore::CAAudioStreamDescription const&amp;, unsigned long long&gt; const&amp;)
        9   0x7a17ce3e0 void IPC::Encoder::encode&lt;std::__1::tuple&lt;WTF::ObjectIdentifier&lt;WebKit::RemoteAudioDestinationIdentifierType&gt; const&amp;, WebKit::SharedMemory::IPCHandle const&amp;, WebCore::CAAudioStreamDescription const&amp;, unsigned long long&gt; const&amp;, (void*)0&gt;(std::__1::tuple&lt;WTF::ObjectIdentifier&lt;WebKit::RemoteAudioDestinationIdentifierType&gt; const&amp;, WebKit::SharedMemory::IPCHandle const&amp;, WebCore::CAAudioStreamDescription const&amp;, unsigned long long&gt; const&amp;)
        10  0x7a17873cb bool IPC::Connection::send&lt;Messages::RemoteAudioDestinationManager::AudioSamplesStorageChanged&gt;(Messages::RemoteAudioDestinationManager::AudioSamplesStorageChanged&amp;&amp;, unsigned long long, WTF::OptionSet&lt;IPC::SendOption&gt;)
        11  0x7a1787326 WebKit::RemoteAudioDestinationProxy::storageChanged(WebKit::SharedMemory*)
        12  0x7a0f5d31a WebKit::SharedRingBufferStorage::setStorage(WTF::RefPtr&lt;WebKit::SharedMemory, WTF::RawPtrTraits&lt;WebKit::SharedMemory&gt;, WTF::DefaultRefDerefTraits&lt;WebKit::SharedMemory&gt; &gt;&amp;&amp;)
        13  0x7a0f5d448 WebKit::SharedRingBufferStorage::deallocate()
        14  0x7b2826375 WebCore::CARingBuffer::deallocate()
        15  0x7b28265bf WebCore::CARingBuffer::allocate(WebCore::CAAudioStreamDescription const&amp;, unsigned long)
        16  0x7a1785d5f WebKit::RemoteAudioDestinationProxy::connectToGPUProcess()
        17  0x7a17874c7 WebKit::RemoteAudioDestinationProxy::gpuProcessConnectionDidClose(WebKit::GPUProcessConnection&amp;)
        18  0x7a175d53e WebKit::GPUProcessConnection::didClose(IPC::Connection&amp;)
        19  0x7a0098077 IPC::Connection::connectionDidClose()::$_7::operator()()
        20  0x7a0097f6e WTF::Detail::CallableWrapper&lt;IPC::Connection::connectionDidClose()::$_7, void&gt;::call()
        21  0x7cf3ae562 WTF::Function&lt;void ()&gt;::operator()() const
        22  0x7cf42df05 WTF::RunLoop::performWork()
        23  0x7cf432591 WTF::RunLoop::performWork(void*)
        24  0x7fff387bad52 __CFRUNLOOP_IS_CALLING_OUT_TO_A_SOURCE0_PERFORM_FUNCTION__
        25  0x7fff387bacf1 __CFRunLoopDoSource0
        26  0x7fff387bab0b __CFRunLoopDoSources0
        27  0x7fff387b983a __CFRunLoopRun
        28  0x7fff387b8e3e CFRunLoopRunSpecific
        29  0x7fff3ae541c8 -[NSRunLoop(NSRunLoop) runMode:beforeDate:]
        30  0x7fff3af06c6f -[NSRunLoop(NSRunLoop) run]
        31  0x7fff72a734ea _xpc_objc_main.cold.4
        LEAK: 1 WebProcessPool
        LEAK: 1 WebPageProxy
        
        /Volumes/Data/slave/catalina-debug/build/Tools/TestWebKitAPI/Tests/WebKitCocoa/GPUProcess.mm:158
        Expected equality of these values:
          webViewPID
            Which is: 53596
          [webView _webProcessIdentifier]
            Which is: 53602


https://build.webkit.org/builders/Apple-Catalina-Debug-WK2-Tests/builds/7712/steps/run-api-tests/logs/stdio</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1706915</commentid>
    <comment_count>1</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2020-11-12 10:13:45 -0800</bug_when>
    <thetext>&lt;rdar://problem/71331809&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1706916</commentid>
    <comment_count>2</comment_count>
    <who name="Ryan Haddad">ryanhaddad</who>
    <bug_when>2020-11-12 10:19:23 -0800</bug_when>
    <thetext>The test has been crashing on Catalina and iOS debug bots since it was added in https://trac.webkit.org/changeset/269703/webkit

https://results.webkit.org/?suite=api-tests&amp;test=TestWebKitAPI.GPUProcess.WebProcessTerminationAfterTooManyGPUProcessCrashes</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1706927</commentid>
    <comment_count>3</comment_count>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2020-11-12 10:59:57 -0800</bug_when>
    <thetext>Will investigate shortly.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1706953</commentid>
    <comment_count>4</comment_count>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2020-11-12 11:44:06 -0800</bug_when>
    <thetext>(In reply to Chris Dumez from comment #3)
&gt; Will investigate shortly.

It does not reproduce on my macOS Debug build. Will try an IOS Debug build.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1706954</commentid>
    <comment_count>5</comment_count>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2020-11-12 11:45:06 -0800</bug_when>
    <thetext>From the crash, it is likely RemoteAudioDestinationProxy::m_destinationID is not a valid identifier. m_destinationID is supposed to get initialized in RemoteAudioDestinationProxy::connectToGPUProcess(), which gets called in the RemoteAudioDestinationProxy constructor though.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1706959</commentid>
    <comment_count>6</comment_count>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2020-11-12 11:54:29 -0800</bug_when>
    <thetext>(In reply to Chris Dumez from comment #5)
&gt; From the crash, it is likely RemoteAudioDestinationProxy::m_destinationID is
&gt; not a valid identifier. m_destinationID is supposed to get initialized in
&gt; RemoteAudioDestinationProxy::connectToGPUProcess(), which gets called in the
&gt; RemoteAudioDestinationProxy constructor though.

Ok, I can reproduce with iOS Debug simulator. This should make this a lot easier to figure out.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1706980</commentid>
    <comment_count>7</comment_count>
      <attachid>413967</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2020-11-12 12:47:06 -0800</bug_when>
    <thetext>Created attachment 413967
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1706996</commentid>
    <comment_count>8</comment_count>
      <attachid>413967</attachid>
    <who name="Peng Liu">peng.liu6</who>
    <bug_when>2020-11-12 13:26:08 -0800</bug_when>
    <thetext>Comment on attachment 413967
Patch

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

&gt; Source/WebKit/WebProcess/GPU/media/RemoteAudioDestinationProxy.cpp:88
&gt;      connection.connection().addThreadMessageReceiver(Messages::RemoteAudioDestinationProxy::messageReceiverName(), this, destinationID.toUInt64());

Just curious, should we do this if `didSucceed` is false?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1706997</commentid>
    <comment_count>9</comment_count>
      <attachid>413967</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2020-11-12 13:27:37 -0800</bug_when>
    <thetext>Comment on attachment 413967
Patch

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

&gt;&gt; Source/WebKit/WebProcess/GPU/media/RemoteAudioDestinationProxy.cpp:88
&gt;&gt;      connection.connection().addThreadMessageReceiver(Messages::RemoteAudioDestinationProxy::messageReceiverName(), this, destinationID.toUInt64());
&gt; 
&gt; Just curious, should we do this if `didSucceed` is false?

You&apos;re right. it is probably better not to since destinationID is 0. It does not hurt but it does not make sense to register with a bad ID.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1706998</commentid>
    <comment_count>10</comment_count>
      <attachid>413972</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2020-11-12 13:28:58 -0800</bug_when>
    <thetext>Created attachment 413972
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1707003</commentid>
    <comment_count>11</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2020-11-12 14:01:40 -0800</bug_when>
    <thetext>Committed r269749: &lt;https://trac.webkit.org/changeset/269749&gt;

All reviewed patches have been landed. Closing bug and clearing flags on attachment 413972.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>413967</attachid>
            <date>2020-11-12 12:47:06 -0800</date>
            <delta_ts>2020-11-12 13:28:57 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-218856-20201112124705.patch</filename>
            <type>text/plain</type>
            <size>3497</size>
            <attacher name="Chris Dumez">cdumez</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjY5NzMxCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCmluZGV4IGNkY2ZmZjIxYTUzYjM2OGY3
N2Y2N2QxOGFlNDExZTAwYTcwNmM3MTguLjVlMDZlYWVlNTZhYWQ4ZjFkYTQzN2M3Y2M2OTRmYmFj
Y2UyOGFiYzMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJj
ZS9XZWJLaXQvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjcgQEAKKzIwMjAtMTEtMTIgIENocmlzIER1
bWV6ICA8Y2R1bWV6QGFwcGxlLmNvbT4KKworICAgICAgICBBU1NFUlRJT04gRkFJTEVEOiBpc1Zh
bGlkSWRlbnRpZmllcihtX2lkZW50aWZpZXIpIHNlZW4gd2l0aCBUZXN0V2ViS2l0QVBJLkdQVVBy
b2Nlc3MuV2ViUHJvY2Vzc1Rlcm1pbmF0aW9uQWZ0ZXJUb29NYW55R1BVUHJvY2Vzc0NyYXNoZXMK
KyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIxODg1Ngor
ICAgICAgICA8cmRhcjovL3Byb2JsZW0vNzEzMzE4MDk+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkg
Tk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgVGhlIEFQSSB0ZXN0IGlzIHJlcGVhdGVkbHkga2ls
bGluZyB0aGUgR1BVIHByb2Nlc3MuIEFzIGEgcmVzdWx0LCBpdCBpcyBwb3NzaWJsZSBmb3IgdGhl
CisgICAgICAgIEdQVVByb2Nlc3MgdG8gY3Jhc2ggd2hpbGUgUmVtb3RlQXVkaW9EZXN0aW5hdGlv
blByb3h5Ojpjb25uZWN0VG9HUFVQcm9jZXNzKCkgaXMgaW4gdGhlCisgICAgICAgIG1pZGRsZSBv
ZiBpdHMgUmVtb3RlQXVkaW9EZXN0aW5hdGlvbk1hbmFnZXI6OkNyZWF0ZUF1ZGlvRGVzdGluYXRp
b24oKSBzeW5jaHJvbm91cyBJUEMuCisgICAgICAgIFRoZSBmdW5jdGlvbiB3b3VsZCBmYWlsIHRv
IGNoZWNrIGlmIHRoZSBJUEMgd2FzIHN1Y2Nlc3NmdWwgYW5kIHByb2NlZWQgd2l0aCBhbiBpbnZh
bGlkCisgICAgICAgIGRlc3RpbmF0aW9uSUQgaW4gc3VjaCBjYXNlcywgY2F1c2luZyB0aGUgY3Jh
c2guCisKKyAgICAgICAgV2Ugbm93IGNoZWNrIGlmIHRoZSBzZW5kU3luYygpIHdhcyBzdWNjZXNz
ZnVsLiBJZiBpdCB3YXNuJ3Qgd2Ugbm93IGxvZyBhbiBlcnJvciBhbmQKKyAgICAgICAgcmV0dXJu
IGVhcmx5LiBSZW1vdGVBdWRpb0Rlc3RpbmF0aW9uTWFuYWdlcjo6Z3B1UHJvY2Vzc0Nvbm5lY3Rp
b25EaWRDbG9zZSgpIHdpbGwgZ2V0CisgICAgICAgIGNhbGxlZCBsYXRlciBvbiB0byBub3RpZnkg
dXMgdGhhdCB0aGUgR1BVIFByb2Nlc3MgY3Jhc2hlZCBhbmQgaXQgd2lsbCBjYWxsCisgICAgICAg
IGNvbm5lY3RUb0dQVVByb2Nlc3MoKSBhZ2Fpbi4KKworICAgICAgICBObyBuZXcgdGVzdHMsIGNv
dmVyZWQgYnkgZXhpc3RpbmcgQVBJIHRlc3QgdGhhdCBpcyBmbGFraWx5IGNyYXNoaW5nLgorCisg
ICAgICAgICogV2ViUHJvY2Vzcy9HUFUvbWVkaWEvUmVtb3RlQXVkaW9EZXN0aW5hdGlvblByb3h5
LmNwcDoKKyAgICAgICAgKFdlYktpdDo6UmVtb3RlQXVkaW9EZXN0aW5hdGlvblByb3h5Ojpjb25u
ZWN0VG9HUFVQcm9jZXNzKToKKwogMjAyMC0xMS0xMiAgQ2hyaXMgRHVtZXogIDxjZHVtZXpAYXBw
bGUuY29tPgogCiAgICAgICAgIFtHUFVQcm9jZXNzXSBBZGQgYmFzaWMgR1BVUHJvY2VzcyBjcmFz
aCBoYW5kbGluZyBmb3IgbWVkaWEgcGxheWJhY2sKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQv
V2ViUHJvY2Vzcy9HUFUvbWVkaWEvUmVtb3RlQXVkaW9EZXN0aW5hdGlvblByb3h5LmNwcCBiL1Nv
dXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9HUFUvbWVkaWEvUmVtb3RlQXVkaW9EZXN0aW5hdGlvblBy
b3h5LmNwcAppbmRleCA2MTIwMzJiM2U2ZTY5ZTJjOGU4MzZjM2U5OGEwMWU2MmQxMzhhMWI0Li5h
ZDAxZjczNDU4MzIxMWJjNjc4MWI5OTgzMWVkMzZmNmE4ZmQ2NDZmIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViS2l0L1dlYlByb2Nlc3MvR1BVL21lZGlhL1JlbW90ZUF1ZGlvRGVzdGluYXRpb25Qcm94
eS5jcHAKKysrIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL0dQVS9tZWRpYS9SZW1vdGVBdWRp
b0Rlc3RpbmF0aW9uUHJveHkuY3BwCkBAIC0yOSw2ICsyOSw3IEBACiAjaWYgRU5BQkxFKEdQVV9Q
Uk9DRVNTKSAmJiBFTkFCTEUoV0VCX0FVRElPKQogCiAjaW5jbHVkZSAiR1BVQ29ubmVjdGlvblRv
V2ViUHJvY2Vzcy5oIgorI2luY2x1ZGUgIkxvZ2dpbmcuaCIKICNpbmNsdWRlICJSZW1vdGVBdWRp
b0Rlc3RpbmF0aW9uTWFuYWdlck1lc3NhZ2VzLmgiCiAjaW5jbHVkZSAiUmVtb3RlQXVkaW9EZXN0
aW5hdGlvblByb3h5TWVzc2FnZXMuaCIKICNpbmNsdWRlICJXZWJQcm9jZXNzLmgiCkBAIC04MSwx
MSArODIsMTcgQEAgdm9pZCBSZW1vdGVBdWRpb0Rlc3RpbmF0aW9uUHJveHk6OmNvbm5lY3RUb0dQ
VVByb2Nlc3MoKQogCiAgICAgYXV0byYgY29ubmVjdGlvbiA9IFdlYlByb2Nlc3M6OnNpbmdsZXRv
bigpLmVuc3VyZUdQVVByb2Nlc3NDb25uZWN0aW9uKCk7CiAgICAgY29ubmVjdGlvbi5hZGRDbGll
bnQoKnRoaXMpOwotICAgIGNvbm5lY3Rpb24uY29ubmVjdGlvbigpLnNlbmRTeW5jKAorICAgIGJv
b2wgZGlkU3VjY2VlZCA9IGNvbm5lY3Rpb24uY29ubmVjdGlvbigpLnNlbmRTeW5jKAogICAgICAg
ICBNZXNzYWdlczo6UmVtb3RlQXVkaW9EZXN0aW5hdGlvbk1hbmFnZXI6OkNyZWF0ZUF1ZGlvRGVz
dGluYXRpb24obV9pbnB1dERldmljZUlkLCBtX251bWJlck9mSW5wdXRDaGFubmVscywgbnVtYmVy
T2ZPdXRwdXRDaGFubmVscygpLCBzYW1wbGVSYXRlKCksIGhhcmR3YXJlU2FtcGxlUmF0ZSgpKSwK
ICAgICAgICAgTWVzc2FnZXM6OlJlbW90ZUF1ZGlvRGVzdGluYXRpb25NYW5hZ2VyOjpDcmVhdGVB
dWRpb0Rlc3RpbmF0aW9uOjpSZXBseShkZXN0aW5hdGlvbklEKSwgMCk7CiAgICAgY29ubmVjdGlv
bi5jb25uZWN0aW9uKCkuYWRkVGhyZWFkTWVzc2FnZVJlY2VpdmVyKE1lc3NhZ2VzOjpSZW1vdGVB
dWRpb0Rlc3RpbmF0aW9uUHJveHk6Om1lc3NhZ2VSZWNlaXZlck5hbWUoKSwgdGhpcywgZGVzdGlu
YXRpb25JRC50b1VJbnQ2NCgpKTsKIAorICAgIGlmICghZGlkU3VjY2VlZCkgeworICAgICAgICAv
LyBUaGUgR1BVUHJvY2VzcyBsaWtlbHkgY3Jhc2hlZCBkdXJpbmcgdGhpcyBzeW5jaHJvbm91cyBJ
UEMuIGdwdVByb2Nlc3NDb25uZWN0aW9uRGlkQ2xvc2UoKSB3aWxsIGdldCBjYWxsZWQgdG8gcmVj
b25uZWN0IHRvIHRoZSBHUFVQcm9jZXNzLgorICAgICAgICBSRUxFQVNFX0xPR19FUlJPUihNZWRp
YSwgIlJlbW90ZUF1ZGlvRGVzdGluYXRpb25Qcm94eTo6Y29ubmVjdFRvR1BVUHJvY2VzczogRmFp
bGVkIHRvIHNlbmQgUmVtb3RlQXVkaW9EZXN0aW5hdGlvbk1hbmFnZXI6OkNyZWF0ZUF1ZGlvRGVz
dGluYXRpb24oKSBJUEMgKEdQVSBwcm9jZXNzIGxpa2VseSBjcmFzaGVkKSIpOworICAgICAgICBy
ZXR1cm47CisgICAgfQorCiAgICAgbV9kZXN0aW5hdGlvbklEID0gZGVzdGluYXRpb25JRDsKIAog
I2lmIFBMQVRGT1JNKENPQ09BKQo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>413972</attachid>
            <date>2020-11-12 13:28:58 -0800</date>
            <delta_ts>2020-11-12 14:01:40 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-218856-20201112132858.patch</filename>
            <type>text/plain</type>
            <size>3673</size>
            <attacher name="Chris Dumez">cdumez</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjY5NzQ3CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCmluZGV4IGYzOWYxMDFiMDljZGQ2NGE0
YjNlNTJmNGU5MjgzZWViMjdmOWNlMjguLjRlYmRjYWUxZjgxNGJhNDFiYzY2ZjM0NDU0ZGVlZTM5
YTc4YTZkYTkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJj
ZS9XZWJLaXQvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjcgQEAKKzIwMjAtMTEtMTIgIENocmlzIER1
bWV6ICA8Y2R1bWV6QGFwcGxlLmNvbT4KKworICAgICAgICBBU1NFUlRJT04gRkFJTEVEOiBpc1Zh
bGlkSWRlbnRpZmllcihtX2lkZW50aWZpZXIpIHNlZW4gd2l0aCBUZXN0V2ViS2l0QVBJLkdQVVBy
b2Nlc3MuV2ViUHJvY2Vzc1Rlcm1pbmF0aW9uQWZ0ZXJUb29NYW55R1BVUHJvY2Vzc0NyYXNoZXMK
KyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIxODg1Ngor
ICAgICAgICA8cmRhcjovL3Byb2JsZW0vNzEzMzE4MDk+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkg
VGltIEhvcnRvbi4KKworICAgICAgICBUaGUgQVBJIHRlc3QgaXMgcmVwZWF0ZWRseSBraWxsaW5n
IHRoZSBHUFUgcHJvY2Vzcy4gQXMgYSByZXN1bHQsIGl0IGlzIHBvc3NpYmxlIGZvciB0aGUKKyAg
ICAgICAgR1BVUHJvY2VzcyB0byBjcmFzaCB3aGlsZSBSZW1vdGVBdWRpb0Rlc3RpbmF0aW9uUHJv
eHk6OmNvbm5lY3RUb0dQVVByb2Nlc3MoKSBpcyBpbiB0aGUKKyAgICAgICAgbWlkZGxlIG9mIGl0
cyBSZW1vdGVBdWRpb0Rlc3RpbmF0aW9uTWFuYWdlcjo6Q3JlYXRlQXVkaW9EZXN0aW5hdGlvbigp
IHN5bmNocm9ub3VzIElQQy4KKyAgICAgICAgVGhlIGZ1bmN0aW9uIHdvdWxkIGZhaWwgdG8gY2hl
Y2sgaWYgdGhlIElQQyB3YXMgc3VjY2Vzc2Z1bCBhbmQgcHJvY2VlZCB3aXRoIGFuIGludmFsaWQK
KyAgICAgICAgZGVzdGluYXRpb25JRCBpbiBzdWNoIGNhc2VzLCBjYXVzaW5nIHRoZSBjcmFzaC4K
KworICAgICAgICBXZSBub3cgY2hlY2sgaWYgdGhlIHNlbmRTeW5jKCkgd2FzIHN1Y2Nlc3NmdWwu
IElmIGl0IHdhc24ndCB3ZSBub3cgbG9nIGFuIGVycm9yIGFuZAorICAgICAgICByZXR1cm4gZWFy
bHkuIFJlbW90ZUF1ZGlvRGVzdGluYXRpb25NYW5hZ2VyOjpncHVQcm9jZXNzQ29ubmVjdGlvbkRp
ZENsb3NlKCkgd2lsbCBnZXQKKyAgICAgICAgY2FsbGVkIGxhdGVyIG9uIHRvIG5vdGlmeSB1cyB0
aGF0IHRoZSBHUFUgUHJvY2VzcyBjcmFzaGVkIGFuZCBpdCB3aWxsIGNhbGwKKyAgICAgICAgY29u
bmVjdFRvR1BVUHJvY2VzcygpIGFnYWluLgorCisgICAgICAgIE5vIG5ldyB0ZXN0cywgY292ZXJl
ZCBieSBleGlzdGluZyBBUEkgdGVzdCB0aGF0IGlzIGZsYWtpbHkgY3Jhc2hpbmcuCisKKyAgICAg
ICAgKiBXZWJQcm9jZXNzL0dQVS9tZWRpYS9SZW1vdGVBdWRpb0Rlc3RpbmF0aW9uUHJveHkuY3Bw
OgorICAgICAgICAoV2ViS2l0OjpSZW1vdGVBdWRpb0Rlc3RpbmF0aW9uUHJveHk6OmNvbm5lY3RU
b0dQVVByb2Nlc3MpOgorCiAyMDIwLTExLTEyICBZb3Vlbm4gRmFibGV0ICA8eW91ZW5uQGFwcGxl
LmNvbT4KIAogICAgICAgICBXZWJQcm9jZXNzIHNob3VsZCBwcm9jZXNzIFdlYlJUQyBjb2RlY3Mg
SVBDIG1lc3NhZ2VzIGZyb20gdGhlIEdQVSBQcm9jZXNzIGluIGEgYmFja2dyb3VuZCB0aHJlYWQK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9HUFUvbWVkaWEvUmVtb3RlQXVk
aW9EZXN0aW5hdGlvblByb3h5LmNwcCBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9HUFUvbWVk
aWEvUmVtb3RlQXVkaW9EZXN0aW5hdGlvblByb3h5LmNwcAppbmRleCA2MTIwMzJiM2U2ZTY5ZTJj
OGU4MzZjM2U5OGEwMWU2MmQxMzhhMWI0Li45NWM4MzZlNjk1MDQxZDk3ZDI1OTAzNmZkNzNkZmY1
YzQ2YjhmZjkxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvR1BVL21lZGlh
L1JlbW90ZUF1ZGlvRGVzdGluYXRpb25Qcm94eS5jcHAKKysrIGIvU291cmNlL1dlYktpdC9XZWJQ
cm9jZXNzL0dQVS9tZWRpYS9SZW1vdGVBdWRpb0Rlc3RpbmF0aW9uUHJveHkuY3BwCkBAIC0yOSw2
ICsyOSw3IEBACiAjaWYgRU5BQkxFKEdQVV9QUk9DRVNTKSAmJiBFTkFCTEUoV0VCX0FVRElPKQog
CiAjaW5jbHVkZSAiR1BVQ29ubmVjdGlvblRvV2ViUHJvY2Vzcy5oIgorI2luY2x1ZGUgIkxvZ2dp
bmcuaCIKICNpbmNsdWRlICJSZW1vdGVBdWRpb0Rlc3RpbmF0aW9uTWFuYWdlck1lc3NhZ2VzLmgi
CiAjaW5jbHVkZSAiUmVtb3RlQXVkaW9EZXN0aW5hdGlvblByb3h5TWVzc2FnZXMuaCIKICNpbmNs
dWRlICJXZWJQcm9jZXNzLmgiCkBAIC04MSwxMSArODIsMTcgQEAgdm9pZCBSZW1vdGVBdWRpb0Rl
c3RpbmF0aW9uUHJveHk6OmNvbm5lY3RUb0dQVVByb2Nlc3MoKQogCiAgICAgYXV0byYgY29ubmVj
dGlvbiA9IFdlYlByb2Nlc3M6OnNpbmdsZXRvbigpLmVuc3VyZUdQVVByb2Nlc3NDb25uZWN0aW9u
KCk7CiAgICAgY29ubmVjdGlvbi5hZGRDbGllbnQoKnRoaXMpOwotICAgIGNvbm5lY3Rpb24uY29u
bmVjdGlvbigpLnNlbmRTeW5jKAorICAgIGJvb2wgZGlkU3VjY2VlZCA9IGNvbm5lY3Rpb24uY29u
bmVjdGlvbigpLnNlbmRTeW5jKAogICAgICAgICBNZXNzYWdlczo6UmVtb3RlQXVkaW9EZXN0aW5h
dGlvbk1hbmFnZXI6OkNyZWF0ZUF1ZGlvRGVzdGluYXRpb24obV9pbnB1dERldmljZUlkLCBtX251
bWJlck9mSW5wdXRDaGFubmVscywgbnVtYmVyT2ZPdXRwdXRDaGFubmVscygpLCBzYW1wbGVSYXRl
KCksIGhhcmR3YXJlU2FtcGxlUmF0ZSgpKSwKICAgICAgICAgTWVzc2FnZXM6OlJlbW90ZUF1ZGlv
RGVzdGluYXRpb25NYW5hZ2VyOjpDcmVhdGVBdWRpb0Rlc3RpbmF0aW9uOjpSZXBseShkZXN0aW5h
dGlvbklEKSwgMCk7Ci0gICAgY29ubmVjdGlvbi5jb25uZWN0aW9uKCkuYWRkVGhyZWFkTWVzc2Fn
ZVJlY2VpdmVyKE1lc3NhZ2VzOjpSZW1vdGVBdWRpb0Rlc3RpbmF0aW9uUHJveHk6Om1lc3NhZ2VS
ZWNlaXZlck5hbWUoKSwgdGhpcywgZGVzdGluYXRpb25JRC50b1VJbnQ2NCgpKTsKIAorICAgIGlm
ICghZGlkU3VjY2VlZCkgeworICAgICAgICAvLyBUaGUgR1BVUHJvY2VzcyBsaWtlbHkgY3Jhc2hl
ZCBkdXJpbmcgdGhpcyBzeW5jaHJvbm91cyBJUEMuIGdwdVByb2Nlc3NDb25uZWN0aW9uRGlkQ2xv
c2UoKSB3aWxsIGdldCBjYWxsZWQgdG8gcmVjb25uZWN0IHRvIHRoZSBHUFVQcm9jZXNzLgorICAg
ICAgICBSRUxFQVNFX0xPR19FUlJPUihNZWRpYSwgIlJlbW90ZUF1ZGlvRGVzdGluYXRpb25Qcm94
eTo6Y29ubmVjdFRvR1BVUHJvY2VzczogRmFpbGVkIHRvIHNlbmQgUmVtb3RlQXVkaW9EZXN0aW5h
dGlvbk1hbmFnZXI6OkNyZWF0ZUF1ZGlvRGVzdGluYXRpb24oKSBJUEMgKEdQVSBwcm9jZXNzIGxp
a2VseSBjcmFzaGVkKSIpOworICAgICAgICByZXR1cm47CisgICAgfQorCisgICAgY29ubmVjdGlv
bi5jb25uZWN0aW9uKCkuYWRkVGhyZWFkTWVzc2FnZVJlY2VpdmVyKE1lc3NhZ2VzOjpSZW1vdGVB
dWRpb0Rlc3RpbmF0aW9uUHJveHk6Om1lc3NhZ2VSZWNlaXZlck5hbWUoKSwgdGhpcywgZGVzdGlu
YXRpb25JRC50b1VJbnQ2NCgpKTsKICAgICBtX2Rlc3RpbmF0aW9uSUQgPSBkZXN0aW5hdGlvbklE
OwogCiAjaWYgUExBVEZPUk0oQ09DT0EpCg==
</data>

          </attachment>
      

    </bug>

</bugzilla>