<?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>223788</bug_id>
          
          <creation_ts>2021-03-26 02:31:43 -0700</creation_ts>
          <short_desc>ASSERTION FAILED: !m_needExceptionCheck in RTCPeerConnection::CertificateParameters WebCore::convertDictionary&lt;WebCore::RTCPeerConnection::CertificateParameters&gt;</short_desc>
          <delta_ts>2021-04-13 03:26:30 -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>Bindings</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="Ryosuke Niwa">rniwa</reporter>
          <assigned_to name="Frédéric Wang Nélar">fred.wang</assigned_to>
          <cc>bfulgham</cc>
    
    <cc>cdumez</cc>
    
    <cc>cgarcia</cc>
    
    <cc>darin</cc>
    
    <cc>ews-feeder</cc>
    
    <cc>fred.wang</cc>
    
    <cc>gpoo</cc>
    
    <cc>mark.lam</cc>
    
    <cc>product-security</cc>
    
    <cc>rbuis</cc>
    
    <cc>sam</cc>
    
    <cc>svillar</cc>
    
    <cc>ticaiolima</cc>
    
    <cc>webkit-bug-importer</cc>
    
    <cc>youennf</cc>
    
    <cc>ysuzuki</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1744116</commentid>
    <comment_count>0</comment_count>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2021-03-26 02:31:43 -0700</bug_when>
    <thetext>e.g.

ERROR: Unchecked JS exception:
    This scope can throw a JS exception: toNumberSlowCase @ ./runtime/JSCJSValue.cpp:60
        (ExceptionScope::m_recursionDepth was 8)
    But the exception was unchecked as of this scope: convert @ /Volumes/Data/safari-4/OpenSource/Source/WebCore/bindings/js/JSDOMConvertNumbers.h:347
        (ExceptionScope::m_recursionDepth was 7)

Unchecked exception detected at:
    1   0x47a9eaa1e JSC::VM::verifyExceptionCheckNeedIsSatisfied(unsigned int, JSC::ExceptionEventLocation&amp;)
    2   0x47a9c4e38 JSC::ThrowScope::throwException(JSC::JSGlobalObject*, JSC::JSValue)
    3   0x47a713cad JSC::throwException(JSC::JSGlobalObject*, JSC::ThrowScope&amp;, JSC::JSValue)
    4   0x47a676674 JSC::throwTypeError(JSC::JSGlobalObject*, JSC::ThrowScope&amp;, WTF::String const&amp;)
    5   0x47a676800 JSC::throwTypeError(JSC::JSGlobalObject*, JSC::ThrowScope&amp;, WTF::ASCIILiteral)
    6   0x45afaf05c WebCore::throwNonFiniteTypeError(JSC::JSGlobalObject&amp;, JSC::ThrowScope&amp;)
    7   0x458ccea18 WebCore::Converter&lt;WebCore::IDLDouble&gt;::convert(JSC::JSGlobalObject&amp;, JSC::JSValue)
    8   0x458c44085 WebCore::Converter&lt;WebCore::IDLDouble&gt;::ReturnType WebCore::convert&lt;WebCore::IDLDouble&gt;(JSC::JSGlobalObject&amp;, JSC::JSValue)
    9   0x459877dfa WebCore::RTCPeerConnection::CertificateParameters WebCore::convertDictionary&lt;WebCore::RTCPeerConnection::CertificateParameters&gt;(JSC::JSGlobalObject&amp;, JSC::JSValue)
    10  0x45a8e798e WebCore::certificateTypeFromAlgorithmIdentifier(JSC::JSGlobalObject&amp;, WTF::Variant&lt;JSC::Strong&lt;JSC::JSObject, (JSC::ShouldStrongDestructorGrabLock)0&gt;, WTF::String&gt;&amp;&amp;)
    11  0x45a8e7746 WebCore::RTCPeerConnection::generateCertificate(JSC::JSGlobalObject&amp;, WTF::Variant&lt;JSC::Strong&lt;JSC::JSObject, (JSC::ShouldStrongDestructorGrabLock)0&gt;, WTF::String&gt;&amp;&amp;, WebCore::DOMPromiseDeferred&lt;WebCore::IDLInterface&lt;WebCore::RTCCertificate&gt; &gt;&amp;&amp;)
    12  0x4598a08e2 WebCore::jsRTCPeerConnectionConstructorFunction_generateCertificateBody(JSC::JSGlobalObject*, JSC::CallFrame*, WTF::Ref&lt;WebCore::DeferredPromise, WTF::RawPtrTraits&lt;WebCore::DeferredPromise&gt; &gt;&amp;&amp;)
    13  0x4598a0cd4 long long WebCore::IDLOperationReturningPromise&lt;WebCore::JSRTCPeerConnection&gt;::callStatic&lt;&amp;(WebCore::jsRTCPeerConnectionConstructorFunction_generateCertificateBody(JSC::JSGlobalObject*, JSC::CallFrame*, WTF::Ref&lt;WebCore::DeferredPromise, WTF::RawPtrTraits&lt;WebCore::DeferredPromise&gt; &gt;&amp;&amp;)), (WebCore::CastedThisErrorBehavior)2&gt;(JSC::JSGlobalObject&amp;, JSC::CallFrame&amp;, char const*)::&apos;lambda&apos;(JSC::JSGlobalObject&amp;, JSC::CallFrame&amp;, WTF::Ref&lt;WebCore::DeferredPromise, WTF::RawPtrTraits&lt;WebCore::DeferredPromise&gt; &gt;&amp;&amp;)::operator()(JSC::JSGlobalObject&amp;, JSC::CallFrame&amp;, WTF::Ref&lt;WebCore::DeferredPromise, WTF::RawPtrTraits&lt;WebCore::DeferredPromise&gt; &gt;&amp;&amp;) const
    14  0x4598a0afb JSC::JSValue WebCore::callPromiseFunction&lt;long long WebCore::IDLOperationReturningPromise&lt;WebCore::JSRTCPeerConnection&gt;::callStatic&lt;&amp;(WebCore::jsRTCPeerConnectionConstructorFunction_generateCertificateBody(JSC::JSGlobalObject*, JSC::CallFrame*, WTF::Ref&lt;WebCore::DeferredPromise, WTF::RawPtrTraits&lt;WebCore::DeferredPromise&gt; &gt;&amp;&amp;)), (WebCore::CastedThisErrorBehavior)2&gt;(JSC::JSGlobalObject&amp;, JSC::CallFrame&amp;, char const*)::&apos;lambda&apos;(JSC::JSGlobalObject&amp;, JSC::CallFrame&amp;, WTF::Ref&lt;WebCore::DeferredPromise, WTF::RawPtrTraits&lt;WebCore::DeferredPromise&gt; &gt;&amp;&amp;)&gt;(JSC::JSGlobalObject&amp;, JSC::CallFrame&amp;, &amp;(WebCore::jsRTCPeerConnectionConstructorFunction_generateCertificateBody(JSC::JSGlobalObject*, JSC::CallFrame*, WTF::Ref&lt;WebCore::DeferredPromise, WTF::RawPtrTraits&lt;WebCore::DeferredPromise&gt; &gt;&amp;&amp;)))
    15  0x4598a06b1 long long WebCore::IDLOperationReturningPromise&lt;WebCore::JSRTCPeerConnection&gt;::callStatic&lt;&amp;(WebCore::jsRTCPeerConnectionConstructorFunction_generateCertificateBody(JSC::JSGlobalObject*, JSC::CallFrame*, WTF::Ref&lt;WebCore::DeferredPromise, WTF::RawPtrTraits&lt;WebCore::DeferredPromise&gt; &gt;&amp;&amp;)), (WebCore::CastedThisErrorBehavior)2&gt;(JSC::JSGlobalObject&amp;, JSC::CallFrame&amp;, char const*)
    16  0x4598a0684 WebCore::jsRTCPeerConnectionConstructorFunction_generateCertificate(JSC::JSGlobalObject*, JSC::CallFrame*)
    17  0x30122f8011d8
    18  0x4793d21ef llint_entry
    19  0x4793b0250 vmEntryToJavaScript
    20  0x47a26bb2b JSC::JITCode::execute(JSC::VM*, JSC::ProtoCallFrame*)
    21  0x47a26b088 JSC::Interpreter::executeProgram(JSC::SourceCode const&amp;, JSC::JSGlobalObject*, JSC::JSObject*)
    22  0x47a648847 JSC::evaluate(JSC::JSGlobalObject*, JSC::SourceCode const&amp;, JSC::JSValue, WTF::NakedPtr&lt;JSC::Exception&gt;&amp;)
    23  0x47a64899a JSC::profiledEvaluate(JSC::JSGlobalObject*, JSC::ProfilingReason, JSC::SourceCode const&amp;, JSC::JSValue, WTF::NakedPtr&lt;JSC::Exception&gt;&amp;)
    24  0x45b04d84c WebCore::JSExecState::profiledEvaluate(JSC::JSGlobalObject*, JSC::ProfilingReason, JSC::SourceCode const&amp;, JSC::JSValue, WTF::NakedPtr&lt;JSC::Exception&gt;&amp;)
    25  0x45b04d42e WebCore::ScriptController::evaluateInWorld(WebCore::ScriptSourceCode const&amp;, WebCore::DOMWrapperWorld&amp;)
    26  0x45b04d259 WebCore::ScriptController::evaluateInWorldIgnoringException(WebCore::ScriptSourceCode const&amp;, WebCore::DOMWrapperWorld&amp;)
    27  0x45b04db55 WebCore::ScriptController::evaluateIgnoringException(WebCore::ScriptSourceCode const&amp;)
    28  0x45b79e7e6 WebCore::ScriptElement::executeClassicScript(WebCore::ScriptSourceCode const&amp;)
    29  0x45b79c7fb WebCore::ScriptElement::prepareScript(WTF::TextPosition const&amp;, WebCore::ScriptElement::LegacyTypeSupport)
    30  0x45bd2edb6 WebCore::HTMLScriptRunner::runScript(WebCore::ScriptElement&amp;, WTF::TextPosition const&amp;)
    31  0x45bd2ebb7 WebCore::HTMLScriptRunner::execute(WTF::Ref&lt;WebCore::ScriptElement, WTF::RawPtrTraits&lt;WebCore::ScriptElement&gt; &gt;&amp;&amp;, WTF::TextPosition const&amp;)
    32  0x45bd0d401 WebCore::HTMLDocumentParser::runScriptsForPausedTreeBuilder()
    33  0x45bd0d885 WebCore::HTMLDocumentParser::pumpTokenizerLoop(WebCore::HTMLDocumentParser::SynchronousMode, bool, WebCore::PumpSession&amp;)
    34  0x45bd0cbff WebCore::HTMLDocumentParser::pumpTokenizer(WebCore::HTMLDocumentParser::SynchronousMode)
    35  0x45bd0c396 WebCore::HTMLDocumentParser::pumpTokenizerIfPossible(WebCore::HTMLDocumentParser::SynchronousMode)
    36  0x45bd0e634 WebCore::HTMLDocumentParser::append(WTF::RefPtr&lt;WTF::StringImpl, WTF::RawPtrTraits&lt;WTF::StringImpl&gt;, WTF::DefaultRefDerefTraits&lt;WTF::StringImpl&gt; &gt;&amp;&amp;)
    37  0x45b5a5d56 WebCore::DecodedDataDocumentParser::flush(WebCore::DocumentWriter&amp;)
    38  0x45c19b5fe WebCore::DocumentWriter::end()
    39  0x45c14da24 WebCore::DocumentLoader::finishedLoading()
    40  0x45c14d3c1 WebCore::DocumentLoader::notifyFinished(WebCore::CachedResource&amp;, WebCore::NetworkLoadMetrics const&amp;)
    41  0x45c2d008a WebCore::CachedResource::checkNotify(WebCore::NetworkLoadMetrics const&amp;)
    42  0x45c2cbb7c WebCore::CachedResource::finishLoading(WebCore::SharedBuffer*, WebCore::NetworkLoadMetrics const&amp;)
    43  0x45c2cd0fc WebCore::CachedRawResource::finishLoading(WebCore::SharedBuffer*, WebCore::NetworkLoadMetrics const&amp;)
    44  0x45c2534a4 WebCore::SubresourceLoader::didFinishLoading(WebCore::NetworkLoadMetrics const&amp;)
    45  0x449ceed5a WebKit::WebResourceLoader::didFinishResourceLoad(WebCore::NetworkLoadMetrics const&amp;)
    46  0x44a2d3cc0 void IPC::callMemberFunctionImpl&lt;WebKit::WebResourceLoader, void (WebKit::WebResourceLoader::*)(WebCore::NetworkLoadMetrics const&amp;), std::__1::tuple&lt;WebCore::NetworkLoadMetrics&gt;, 0ul&gt;(WebKit::WebResourceLoader*, void (WebKit::WebResourceLoader::*)(WebCore::NetworkLoadMetrics const&amp;), std::__1::tuple&lt;WebCore::NetworkLoadMetrics&gt;&amp;&amp;, std::__1::integer_sequence&lt;unsigned long, 0ul&gt;)
    47  0x44a2d3c10 void IPC::callMemberFunction&lt;WebKit::WebResourceLoader, void (WebKit::WebResourceLoader::*)(WebCore::NetworkLoadMetrics const&amp;), std::__1::tuple&lt;WebCore::NetworkLoadMetrics&gt;, std::__1::integer_sequence&lt;unsigned long, 0ul&gt; &gt;(std::__1::tuple&lt;WebCore::NetworkLoadMetrics&gt;&amp;&amp;, WebKit::WebResourceLoader*, void (WebKit::WebResourceLoader::*)(WebCore::NetworkLoadMetrics const&amp;))
    48  0x44a2d19be void IPC::handleMessage&lt;Messages::WebResourceLoader::DidFinishResourceLoad, WebKit::WebResourceLoader, void (WebKit::WebResourceLoader::*)(WebCore::NetworkLoadMetrics const&amp;)&gt;(IPC::Decoder&amp;, WebKit::WebResourceLoader*, void (WebKit::WebResourceLoader::*)(WebCore::NetworkLoadMetrics const&amp;))
    49  0x44a2d132e WebKit::WebResourceLoader::didReceiveWebResourceLoaderMessage(IPC::Connection&amp;, IPC::Decoder&amp;)
    50  0x449caff50 WebKit::NetworkProcessConnection::didReceiveMessage(IPC::Connection&amp;, IPC::Decoder&amp;)
    51  0x448085904 IPC::Connection::dispatchMessage(IPC::Decoder&amp;)
    52  0x4480860cc IPC::Connection::dispatchMessage(std::__1::unique_ptr&lt;IPC::Decoder, std::__1::default_delete&lt;IPC::Decoder&gt; &gt;)
    53  0x4480866f0 IPC::Connection::dispatchOneIncomingMessage()

ASSERTION FAILED: !m_needExceptionCheck
./runtime/VM.cpp(1418) : void JSC::VM::verifyExceptionCheckNeedIsSatisfied(unsigned int, JSC::ExceptionEventLocation &amp;)
1   0x478de4cc9 WTFCrash
2   0x47a57d2db WTFCrashWithInfo(int, char const*, char const*, int)
3   0x47a9eab4e JSC::VM::verifyExceptionCheckNeedIsSatisfied(unsigned int, JSC::ExceptionEventLocation&amp;)
4   0x47a9c4e38 JSC::ThrowScope::throwException(JSC::JSGlobalObject*, JSC::JSValue)
5   0x47a713cad JSC::throwException(JSC::JSGlobalObject*, JSC::ThrowScope&amp;, JSC::JSValue)
6   0x47a676674 JSC::throwTypeError(JSC::JSGlobalObject*, JSC::ThrowScope&amp;, WTF::String const&amp;)
7   0x47a676800 JSC::throwTypeError(JSC::JSGlobalObject*, JSC::ThrowScope&amp;, WTF::ASCIILiteral)
8   0x45afaf05c WebCore::throwNonFiniteTypeError(JSC::JSGlobalObject&amp;, JSC::ThrowScope&amp;)
9   0x458ccea18 WebCore::Converter&lt;WebCore::IDLDouble&gt;::convert(JSC::JSGlobalObject&amp;, JSC::JSValue)
10  0x458c44085 WebCore::Converter&lt;WebCore::IDLDouble&gt;::ReturnType WebCore::convert&lt;WebCore::IDLDouble&gt;(JSC::JSGlobalObject&amp;, JSC::JSValue)
11  0x459877dfa WebCore::RTCPeerConnection::CertificateParameters WebCore::convertDictionary&lt;WebCore::RTCPeerConnection::CertificateParameters&gt;(JSC::JSGlobalObject&amp;, JSC::JSValue)
12  0x45a8e798e WebCore::certificateTypeFromAlgorithmIdentifier(JSC::JSGlobalObject&amp;, WTF::Variant&lt;JSC::Strong&lt;JSC::JSObject, (JSC::ShouldStrongDestructorGrabLock)0&gt;, WTF::String&gt;&amp;&amp;)
13  0x45a8e7746 WebCore::RTCPeerConnection::generateCertificate(JSC::JSGlobalObject&amp;, WTF::Variant&lt;JSC::Strong&lt;JSC::JSObject, (JSC::ShouldStrongDestructorGrabLock)0&gt;, WTF::String&gt;&amp;&amp;, WebCore::DOMPromiseDeferred&lt;WebCore::IDLInterface&lt;WebCore::RTCCertificate&gt; &gt;&amp;&amp;)
14  0x4598a08e2 WebCore::jsRTCPeerConnectionConstructorFunction_generateCertificateBody(JSC::JSGlobalObject*, JSC::CallFrame*, WTF::Ref&lt;WebCore::DeferredPromise, WTF::RawPtrTraits&lt;WebCore::DeferredPromise&gt; &gt;&amp;&amp;)
15  0x4598a0cd4 long long WebCore::IDLOperationReturningPromise&lt;WebCore::JSRTCPeerConnection&gt;::callStatic&lt;&amp;(WebCore::jsRTCPeerConnectionConstructorFunction_generateCertificateBody(JSC::JSGlobalObject*, JSC::CallFrame*, WTF::Ref&lt;WebCore::DeferredPromise, WTF::RawPtrTraits&lt;WebCore::DeferredPromise&gt; &gt;&amp;&amp;)), (WebCore::CastedThisErrorBehavior)2&gt;(JSC::JSGlobalObject&amp;, JSC::CallFrame&amp;, char const*)::&apos;lambda&apos;(JSC::JSGlobalObject&amp;, JSC::CallFrame&amp;, WTF::Ref&lt;WebCore::DeferredPromise, WTF::RawPtrTraits&lt;WebCore::DeferredPromise&gt; &gt;&amp;&amp;)::operator()(JSC::JSGlobalObject&amp;, JSC::CallFrame&amp;, WTF::Ref&lt;WebCore::DeferredPromise, WTF::RawPtrTraits&lt;WebCore::DeferredPromise&gt; &gt;&amp;&amp;) const
16  0x4598a0afb JSC::JSValue WebCore::callPromiseFunction&lt;long long WebCore::IDLOperationReturningPromise&lt;WebCore::JSRTCPeerConnection&gt;::callStatic&lt;&amp;(WebCore::jsRTCPeerConnectionConstructorFunction_generateCertificateBody(JSC::JSGlobalObject*, JSC::CallFrame*, WTF::Ref&lt;WebCore::DeferredPromise, WTF::RawPtrTraits&lt;WebCore::DeferredPromise&gt; &gt;&amp;&amp;)), (WebCore::CastedThisErrorBehavior)2&gt;(JSC::JSGlobalObject&amp;, JSC::CallFrame&amp;, char const*)::&apos;lambda&apos;(JSC::JSGlobalObject&amp;, JSC::CallFrame&amp;, WTF::Ref&lt;WebCore::DeferredPromise, WTF::RawPtrTraits&lt;WebCore::DeferredPromise&gt; &gt;&amp;&amp;)&gt;(JSC::JSGlobalObject&amp;, JSC::CallFrame&amp;, &amp;(WebCore::jsRTCPeerConnectionConstructorFunction_generateCertificateBody(JSC::JSGlobalObject*, JSC::CallFrame*, WTF::Ref&lt;WebCore::DeferredPromise, WTF::RawPtrTraits&lt;WebCore::DeferredPromise&gt; &gt;&amp;&amp;)))
17  0x4598a06b1 long long WebCore::IDLOperationReturningPromise&lt;WebCore::JSRTCPeerConnection&gt;::callStatic&lt;&amp;(WebCore::jsRTCPeerConnectionConstructorFunction_generateCertificateBody(JSC::JSGlobalObject*, JSC::CallFrame*, WTF::Ref&lt;WebCore::DeferredPromise, WTF::RawPtrTraits&lt;WebCore::DeferredPromise&gt; &gt;&amp;&amp;)), (WebCore::CastedThisErrorBehavior)2&gt;(JSC::JSGlobalObject&amp;, JSC::CallFrame&amp;, char const*)
18  0x4598a0684 WebCore::jsRTCPeerConnectionConstructorFunction_generateCertificate(JSC::JSGlobalObject*, JSC::CallFrame*)
19  0x30122f8011d8
20  0x4793d21ef llint_entry
21  0x4793b0250 vmEntryToJavaScript
22  0x47a26bb2b JSC::JITCode::execute(JSC::VM*, JSC::ProtoCallFrame*)
23  0x47a26b088 JSC::Interpreter::executeProgram(JSC::SourceCode const&amp;, JSC::JSGlobalObject*, JSC::JSObject*)
24  0x47a648847 JSC::evaluate(JSC::JSGlobalObject*, JSC::SourceCode const&amp;, JSC::JSValue, WTF::NakedPtr&lt;JSC::Exception&gt;&amp;)
25  0x47a64899a JSC::profiledEvaluate(JSC::JSGlobalObject*, JSC::ProfilingReason, JSC::SourceCode const&amp;, JSC::JSValue, WTF::NakedPtr&lt;JSC::Exception&gt;&amp;)
26  0x45b04d84c WebCore::JSExecState::profiledEvaluate(JSC::JSGlobalObject*, JSC::ProfilingReason, JSC::SourceCode const&amp;, JSC::JSValue, WTF::NakedPtr&lt;JSC::Exception&gt;&amp;)
27  0x45b04d42e WebCore::ScriptController::evaluateInWorld(WebCore::ScriptSourceCode const&amp;, WebCore::DOMWrapperWorld&amp;)
28  0x45b04d259 WebCore::ScriptController::evaluateInWorldIgnoringException(WebCore::ScriptSourceCode const&amp;, WebCore::DOMWrapperWorld&amp;)
29  0x45b04db55 WebCore::ScriptController::evaluateIgnoringException(WebCore::ScriptSourceCode const&amp;)
30  0x45b79e7e6 WebCore::ScriptElement::executeClassicScript(WebCore::ScriptSourceCode const&amp;)
31  0x45b79c7fb WebCore::ScriptElement::prepareScript(WTF::TextPosition const&amp;, WebCore::ScriptElement::LegacyTypeSupport)

&lt;rdar://68912746&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1744117</commentid>
    <comment_count>1</comment_count>
      <attachid>424335</attachid>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2021-03-26 02:32:21 -0700</bug_when>
    <thetext>Created attachment 424335
Test

&lt;script&gt;
  let handler = {
    get: Object
  };
  let p = new Proxy({}, handler);
  RTCPeerConnection.generateCertificate(p);
&lt;/script&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1744118</commentid>
    <comment_count>2</comment_count>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2021-03-26 02:33:31 -0700</bug_when>
    <thetext>Reproduced this with debug build of WebKitTestRunner at r273504.

Note that you need to specify __XPC_JSC_validateExceptionChecks=1 on macOS or enable JSC&apos;s validateExceptionChecks option in other ports to reproduce this.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1744228</commentid>
    <comment_count>3</comment_count>
    <who name="Darin Adler">darin</who>
    <bug_when>2021-03-26 10:19:05 -0700</bug_when>
    <thetext>Is fixing this as simple as using RELEASE_AND_RETURN instead of return in the function in JSConvertNumber.h? Or do we need RETURN_IF_EXCEPTION?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1744483</commentid>
    <comment_count>4</comment_count>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2021-03-27 03:53:25 -0700</bug_when>
    <thetext>(In reply to Darin Adler from comment #3)
&gt; Is fixing this as simple as using RELEASE_AND_RETURN instead of return in
&gt; the function in JSConvertNumber.h? Or do we need RETURN_IF_EXCEPTION?

I think what we need is RETURN_IF_EXCEPTION. The issue appears to be that we&apos;re throwing an expiation without first checking if there had been any exception.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1749207</commentid>
    <comment_count>5</comment_count>
      <attachid>425741</attachid>
    <who name="Frédéric Wang Nélar">fred.wang</who>
    <bug_when>2021-04-12 06:54:41 -0700</bug_when>
    <thetext>Created attachment 425741
Patch

(In reply to Ryosuke Niwa from comment #4)
&gt; (In reply to Darin Adler from comment #3)
&gt; &gt; Is fixing this as simple as using RELEASE_AND_RETURN instead of return in
&gt; &gt; the function in JSConvertNumber.h? Or do we need RETURN_IF_EXCEPTION?
&gt; 
&gt; I think what we need is RETURN_IF_EXCEPTION. The issue appears to be that
&gt; we&apos;re throwing an expiation without first checking if there had been any
&gt; exception.

Using RETURN_IF_EXCEPTION seems to work... but should we instead propagate the exception, similar to logic in JSDOMConvertBase.h? That would also be more consistent to how IDLUnrestrictedFloat/IDLUnrestrictedDouble&apos;s convert behave when toNumber throws an exception. Or maybe we should catch exception in the unrestricted versions too?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1749289</commentid>
    <comment_count>6</comment_count>
    <who name="Darin Adler">darin</who>
    <bug_when>2021-04-12 11:14:43 -0700</bug_when>
    <thetext>(In reply to Frédéric Wang (:fredw) from comment #5)
&gt; Using RETURN_IF_EXCEPTION seems to work... but should we instead propagate
&gt; the exception

HEre’s my understanding:

RETURN_IF_EXCEPTION does propagate an exception. It does not &quot;catch&quot; an exception.

The function named propagateException converts DOM exceptions into JavaScript exceptions, and is not needed or involved when we propagate JavaScript exceptions from one level to the next.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1749549</commentid>
    <comment_count>7</comment_count>
    <who name="Frédéric Wang Nélar">fred.wang</who>
    <bug_when>2021-04-12 23:17:15 -0700</bug_when>
    <thetext>OK, then the patch looks correct to me as it then.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1749550</commentid>
    <comment_count>8</comment_count>
      <attachid>425741</attachid>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2021-04-12 23:20:12 -0700</bug_when>
    <thetext>Comment on attachment 425741
Patch

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

&gt; Source/WebCore/ChangeLog:8
&gt; +        No new tests.

Wait, why no new tests?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1749551</commentid>
    <comment_count>9</comment_count>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2021-04-12 23:21:21 -0700</bug_when>
    <thetext>Note that you can put the following line in the first line of a test to enable this check in WebKitTestRunner:
&lt;!DOCTYPE html&gt;&lt;!-- webkit-test-runner [ jscOptions=--validateExceptionChecks=true ] --&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1749555</commentid>
    <comment_count>10</comment_count>
      <attachid>425741</attachid>
    <who name="Frédéric Wang Nélar">fred.wang</who>
    <bug_when>2021-04-12 23:26:32 -0700</bug_when>
    <thetext>Comment on attachment 425741
Patch

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

&gt;&gt; Source/WebCore/ChangeLog:8
&gt;&gt; +        No new tests.
&gt; 
&gt; Wait, why no new tests?

So for this an the other JSC bugs, I&apos;m not sure when &quot;not handling exception failure&quot; is a security or not. And yes, adding the test is easy otherwise.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1749557</commentid>
    <comment_count>11</comment_count>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2021-04-12 23:29:29 -0700</bug_when>
    <thetext>(In reply to Frédéric Wang (:fredw) from comment #10)
&gt; Comment on attachment 425741 [details]
&gt; Patch
&gt; 
&gt; View in context:
&gt; https://bugs.webkit.org/attachment.cgi?id=425741&amp;action=review
&gt; 
&gt; &gt;&gt; Source/WebCore/ChangeLog:8
&gt; &gt;&gt; +        No new tests.
&gt; &gt; 
&gt; &gt; Wait, why no new tests?
&gt; 
&gt; So for this an the other JSC bugs, I&apos;m not sure when &quot;not handling exception
&gt; failure&quot; is a security or not. And yes, adding the test is easy otherwise.

Yusuke says this isn&apos;t a security bug so we should add a test.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1749560</commentid>
    <comment_count>12</comment_count>
      <attachid>425741</attachid>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2021-04-12 23:40:05 -0700</bug_when>
    <thetext>Comment on attachment 425741
Patch

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

&gt; Source/WebCore/bindings/js/JSDOMConvertNumbers.h:297
&gt; +        RETURN_IF_EXCEPTION(scope, 0.0);
&gt;          if (UNLIKELY(!std::isfinite(number)))
&gt;              throwNonFiniteTypeError(lexicalGlobalObject, scope);
&gt;          return static_cast&lt;float&gt;(number);

If we returned, then the upper scope will catch the exception anyway. If we call `throwNonFiniteTypeError` while we have an exception, the exception will be overridden. While this is not right semantics, this is not a security issue.

&gt; Source/WebCore/bindings/js/JSDOMConvertNumbers.h:353
&gt; +        RETURN_IF_EXCEPTION(scope, 0.0);
&gt;          if (UNLIKELY(!std::isfinite(number)))
&gt;              throwNonFiniteTypeError(lexicalGlobalObject, scope);
&gt;          return number;

Ditto.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1749564</commentid>
    <comment_count>13</comment_count>
      <attachid>425840</attachid>
    <who name="Frédéric Wang Nélar">fred.wang</who>
    <bug_when>2021-04-12 23:58:20 -0700</bug_when>
    <thetext>Created attachment 425840
Patch for landing</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1749598</commentid>
    <comment_count>14</comment_count>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2021-04-13 01:58:05 -0700</bug_when>
    <thetext>Oh you probably need to skip the test on Windows since there is no WebRTC support there.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1749616</commentid>
    <comment_count>15</comment_count>
      <attachid>425851</attachid>
    <who name="Frédéric Wang Nélar">fred.wang</who>
    <bug_when>2021-04-13 02:41:59 -0700</bug_when>
    <thetext>Created attachment 425851
Patch for landing</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1749631</commentid>
    <comment_count>16</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2021-04-13 03:26:26 -0700</bug_when>
    <thetext>Committed r275877 (236442@main): &lt;https://commits.webkit.org/236442@main&gt;

All reviewed patches have been landed. Closing bug and clearing flags on attachment 425851.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="0"
              isprivate="0"
          >
            <attachid>424335</attachid>
            <date>2021-03-26 02:32:21 -0700</date>
            <delta_ts>2021-03-26 02:32:21 -0700</delta_ts>
            <desc>Test</desc>
            <filename>repro_393.html</filename>
            <type>text/html</type>
            <size>136</size>
            <attacher name="Ryosuke Niwa">rniwa</attacher>
            
              <data encoding="base64">PHNjcmlwdD4KICBsZXQgaGFuZGxlciA9IHsKICAgIGdldDogT2JqZWN0CiAgfTsKICBsZXQgcCA9
IG5ldyBQcm94eSh7fSwgaGFuZGxlcik7CiAgUlRDUGVlckNvbm5lY3Rpb24uZ2VuZXJhdGVDZXJ0
aWZpY2F0ZShwKTsKPC9zY3JpcHQ+Cg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>425741</attachid>
            <date>2021-04-12 06:54:41 -0700</date>
            <delta_ts>2021-04-12 23:58:20 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>0001-Bug-223788-ASSERTION-FAILED-m_needExceptionCheck-in-.patch</filename>
            <type>text/plain</type>
            <size>2474</size>
            <attacher name="Frédéric Wang Nélar">fred.wang</attacher>
            
              <data encoding="base64">RnJvbSBjMjRlMTEzZGZkYTRiZGM1MjdiZjg5MzBhY2MzYjEwYTk4MmRkMDJmIE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiA9P1VURi04P3E/RnI9QzM9QTlkPUMzPUE5cmljPTIwV2FuZz89
IDxmd2FuZ0BpZ2FsaWEuY29tPgpEYXRlOiBNb24sIDEyIEFwciAyMDIxIDE1OjA2OjU1ICswMjAw
ClN1YmplY3Q6IFtQQVRDSF0gQnVnIDIyMzc4OCAtIEFTU0VSVElPTiBGQUlMRUQ6ICFtX25lZWRF
eGNlcHRpb25DaGVjayBpbgogUlRDUGVlckNvbm5lY3Rpb246OkNlcnRpZmljYXRlUGFyYW1ldGVy
cwogV2ViQ29yZTo6Y29udmVydERpY3Rpb25hcnk8V2ViQ29yZTo6UlRDUGVlckNvbm5lY3Rpb246
OkNlcnRpZmljYXRlUGFyYW1ldGVycz4KCi0tLQogU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nICAg
ICAgICAgICAgICAgICAgICAgICAgIHwgMTMgKysrKysrKysrKysrKwogU291cmNlL1dlYkNvcmUv
YmluZGluZ3MvanMvSlNET01Db252ZXJ0TnVtYmVycy5oIHwgIDIgKysKIDIgZmlsZXMgY2hhbmdl
ZCwgMTUgaW5zZXJ0aW9ucygrKQoKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxv
ZyBiL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwppbmRleCA4YWI5OGZhZTAwLi5hNzNlMWJjNWE5
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYkNv
cmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTYgQEAKKzIwMjEtMDQtMTIgIEZyw6lkw6lyaWMgV2Fu
ZyAgPGZ3YW5nQGlnYWxpYS5jb20+CisKKyAgICAgICAgQVNTRVJUSU9OIEZBSUxFRDogIW1fbmVl
ZEV4Y2VwdGlvbkNoZWNrIGluIFJUQ1BlZXJDb25uZWN0aW9uOjpDZXJ0aWZpY2F0ZVBhcmFtZXRl
cnMKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIyMzc4
OAorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIE5vIG5l
dyB0ZXN0cy4KKworICAgICAgICAqIGJpbmRpbmdzL2pzL0pTRE9NQ29udmVydE51bWJlcnMuaDoK
KyAgICAgICAgKFdlYkNvcmU6OkNvbnZlcnRlcjxJRExGbG9hdD46OmNvbnZlcnQpOiBDYXRjaCBw
b3RlbnRpYWwgZXhjZXB0aW9ucyB0aHJvd24gYnkgdG9OdW1iZXIuCisgICAgICAgIChXZWJDb3Jl
OjpDb252ZXJ0ZXI8SURMRG91YmxlPjo6Y29udmVydCk6IERpdHRvLgorCiAyMDIxLTA0LTEyICBB
ZHJpYW4gUGVyZXogZGUgQ2FzdHJvICA8YXBlcmV6QGlnYWxpYS5jb20+CiAKICAgICAgICAgW1dQ
RV1bR1RLXSBVc2UgZ19vYmplY3Rfbm90aWZ5X2J5X3BzcGVjKCkgd2hlbmV2ZXIgcG9zc2libGUK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTRE9NQ29udmVydE51bWJl
cnMuaCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTRE9NQ29udmVydE51bWJlcnMuaApp
bmRleCAwZjQ3ZDMzYjFiLi5jMDZlZGJjMDRjIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9i
aW5kaW5ncy9qcy9KU0RPTUNvbnZlcnROdW1iZXJzLmgKKysrIGIvU291cmNlL1dlYkNvcmUvYmlu
ZGluZ3MvanMvSlNET01Db252ZXJ0TnVtYmVycy5oCkBAIC0yOTEsNiArMjkxLDcgQEAgdGVtcGxh
dGU8PiBzdHJ1Y3QgQ29udmVydGVyPElETEZsb2F0PiA6IERlZmF1bHRDb252ZXJ0ZXI8SURMRmxv
YXQ+IHsKICAgICAgICAgSlNDOjpWTSYgdm0gPSBKU0M6OmdldFZNKCZsZXhpY2FsR2xvYmFsT2Jq
ZWN0KTsKICAgICAgICAgYXV0byBzY29wZSA9IERFQ0xBUkVfVEhST1dfU0NPUEUodm0pOwogICAg
ICAgICBkb3VibGUgbnVtYmVyID0gdmFsdWUudG9OdW1iZXIoJmxleGljYWxHbG9iYWxPYmplY3Qp
OworICAgICAgICBSRVRVUk5fSUZfRVhDRVBUSU9OKHNjb3BlLCAwLjApOwogICAgICAgICBpZiAo
VU5MSUtFTFkoIXN0ZDo6aXNmaW5pdGUobnVtYmVyKSkpCiAgICAgICAgICAgICB0aHJvd05vbkZp
bml0ZVR5cGVFcnJvcihsZXhpY2FsR2xvYmFsT2JqZWN0LCBzY29wZSk7CiAgICAgICAgIHJldHVy
biBzdGF0aWNfY2FzdDxmbG9hdD4obnVtYmVyKTsKQEAgLTM0Niw2ICszNDcsNyBAQCB0ZW1wbGF0
ZTw+IHN0cnVjdCBDb252ZXJ0ZXI8SURMRG91YmxlPiA6IERlZmF1bHRDb252ZXJ0ZXI8SURMRG91
YmxlPiB7CiAgICAgICAgIEpTQzo6Vk0mIHZtID0gSlNDOjpnZXRWTSgmbGV4aWNhbEdsb2JhbE9i
amVjdCk7CiAgICAgICAgIGF1dG8gc2NvcGUgPSBERUNMQVJFX1RIUk9XX1NDT1BFKHZtKTsKICAg
ICAgICAgZG91YmxlIG51bWJlciA9IHZhbHVlLnRvTnVtYmVyKCZsZXhpY2FsR2xvYmFsT2JqZWN0
KTsKKyAgICAgICAgUkVUVVJOX0lGX0VYQ0VQVElPTihzY29wZSwgMC4wKTsKICAgICAgICAgaWYg
KFVOTElLRUxZKCFzdGQ6OmlzZmluaXRlKG51bWJlcikpKQogICAgICAgICAgICAgdGhyb3dOb25G
aW5pdGVUeXBlRXJyb3IobGV4aWNhbEdsb2JhbE9iamVjdCwgc2NvcGUpOwogICAgICAgICByZXR1
cm4gbnVtYmVyOwotLSAKMi4yNS4xCgo=
</data>
<flag name="review"
          id="445787"
          type_id="1"
          status="+"
          setter="rniwa"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>425840</attachid>
            <date>2021-04-12 23:58:20 -0700</date>
            <delta_ts>2021-04-13 02:41:59 -0700</delta_ts>
            <desc>Patch for landing</desc>
            <filename>0001-Bug-223788-ASSERTION-FAILED-m_needExceptionCheck-in-.patch</filename>
            <type>text/plain</type>
            <size>4890</size>
            <attacher name="Frédéric Wang Nélar">fred.wang</attacher>
            
              <data encoding="base64">RnJvbSBlMGE5MTUxMWU2MjlhZDI2MDcyZDFmYWI0OTVlNGUwOTNhYzMyYzg1IE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiA9P1VURi04P3E/RnI9QzM9QTlkPUMzPUE5cmljPTIwV2FuZz89
IDxmd2FuZ0BpZ2FsaWEuY29tPgpEYXRlOiBNb24sIDEyIEFwciAyMDIxIDE1OjA2OjU1ICswMjAw
ClN1YmplY3Q6IFtQQVRDSF0gQnVnIDIyMzc4OCAtIEFTU0VSVElPTiBGQUlMRUQ6ICFtX25lZWRF
eGNlcHRpb25DaGVjayBpbgogUlRDUGVlckNvbm5lY3Rpb246OkNlcnRpZmljYXRlUGFyYW1ldGVy
cwogV2ViQ29yZTo6Y29udmVydERpY3Rpb25hcnk8V2ViQ29yZTo6UlRDUGVlckNvbm5lY3Rpb246
OkNlcnRpZmljYXRlUGFyYW1ldGVycz4KCi0tLQogTGF5b3V0VGVzdHMvQ2hhbmdlTG9nICAgICAg
ICAgICAgICAgICAgICAgICAgICAgfCAxMiArKysrKysrKysrKysKIC4uLmNlcHRpb24tY2hlY2st
aW4tY29udmVydE51bWJlcnMtZXhwZWN0ZWQudHh0IHwgIDQgKysrKwogLi4uc3NpbmctZXhjZXB0
aW9uLWNoZWNrLWluLWNvbnZlcnROdW1iZXJzLmh0bWwgfCAxNyArKysrKysrKysrKysrKysrKwog
U291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nICAgICAgICAgICAgICAgICAgICAgICAgfCAxMyArKysr
KysrKysrKysrCiAuLi4vV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0RPTUNvbnZlcnROdW1iZXJzLmgg
ICB8ICAyICsrCiA1IGZpbGVzIGNoYW5nZWQsIDQ4IGluc2VydGlvbnMoKykKIGNyZWF0ZSBtb2Rl
IDEwMDY0NCBMYXlvdXRUZXN0cy9qcy9kb20vbWlzc2luZy1leGNlcHRpb24tY2hlY2staW4tY29u
dmVydE51bWJlcnMtZXhwZWN0ZWQudHh0CiBjcmVhdGUgbW9kZSAxMDA2NDQgTGF5b3V0VGVzdHMv
anMvZG9tL21pc3NpbmctZXhjZXB0aW9uLWNoZWNrLWluLWNvbnZlcnROdW1iZXJzLmh0bWwKCmRp
ZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cK
aW5kZXggYTQ5MTMzNTFhZC4uYTJiNTFkNGI2YiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvQ2hh
bmdlTG9nCisrKyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE1IEBACisyMDIx
LTA0LTEyICBGcsOpZMOpcmljIFdhbmcgIDxmd2FuZ0BpZ2FsaWEuY29tPgorCisgICAgICAgIEJ1
ZyAyMjM3ODggLSBBU1NFUlRJT04gRkFJTEVEOiAhbV9uZWVkRXhjZXB0aW9uQ2hlY2sgaW4gUlRD
UGVlckNvbm5lY3Rpb246OkNlcnRpZmljYXRlUGFyYW1ldGVycyBXZWJDb3JlOjpjb252ZXJ0RGlj
dGlvbmFyeTxXZWJDb3JlOjpSVENQZWVyQ29ubmVjdGlvbjo6Q2VydGlmaWNhdGVQYXJhbWV0ZXJz
PgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjIzNzg4
CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgUnlvc3VrZSBOaXdhLgorCisgICAgICAgIEFkZCByZWdy
ZXNzaW9uIHRlc3QuCisKKyAgICAgICAgKiBqcy9kb20vbWlzc2luZy1leGNlcHRpb24tY2hlY2st
aW4tY29udmVydE51bWJlcnMtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBqcy9kb20v
bWlzc2luZy1leGNlcHRpb24tY2hlY2staW4tY29udmVydE51bWJlcnMuaHRtbDogQWRkZWQuCisK
IDIwMjEtMDQtMTEgIENhbWVyb24gTWNDb3JtYWNrICA8aGV5Y2FtQGFwcGxlLmNvbT4KIAogICAg
ICAgICBGaXggaW5pdGlhbCBob3Jpem9udGFsIHNjcm9sbGJhciBwb3NpdGlvbiB3aGVuIHZlcnRp
Y2FsIHNjcm9sbGJhciBpcyBvbiB0aGUgbGVmdC4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2pz
L2RvbS9taXNzaW5nLWV4Y2VwdGlvbi1jaGVjay1pbi1jb252ZXJ0TnVtYmVycy1leHBlY3RlZC50
eHQgYi9MYXlvdXRUZXN0cy9qcy9kb20vbWlzc2luZy1leGNlcHRpb24tY2hlY2staW4tY29udmVy
dE51bWJlcnMtZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAw
MDAuLjQzZTVlZWVkYmYKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9qcy9kb20vbWlz
c2luZy1leGNlcHRpb24tY2hlY2staW4tY29udmVydE51bWJlcnMtZXhwZWN0ZWQudHh0CkBAIC0w
LDAgKzEsNCBAQAorUEFTUyBzdWNjZXNzZnVsbHlQYXJzZWQgaXMgdHJ1ZQorCitURVNUIENPTVBM
RVRFCisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2pzL2RvbS9taXNzaW5nLWV4Y2VwdGlvbi1j
aGVjay1pbi1jb252ZXJ0TnVtYmVycy5odG1sIGIvTGF5b3V0VGVzdHMvanMvZG9tL21pc3Npbmct
ZXhjZXB0aW9uLWNoZWNrLWluLWNvbnZlcnROdW1iZXJzLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2
NDQKaW5kZXggMDAwMDAwMDAwMC4uMmY4MzQyNWFkNQotLS0gL2Rldi9udWxsCisrKyBiL0xheW91
dFRlc3RzL2pzL2RvbS9taXNzaW5nLWV4Y2VwdGlvbi1jaGVjay1pbi1jb252ZXJ0TnVtYmVycy5o
dG1sCkBAIC0wLDAgKzEsMTcgQEAKKzwhRE9DVFlQRSBodG1sPjwhLS0gd2Via2l0LXRlc3QtcnVu
bmVyIFsganNjT3B0aW9ucz0tLXZhbGlkYXRlRXhjZXB0aW9uQ2hlY2tzPXRydWUgXSAtLT4KKzxo
dG1sPgorPGhlYWQ+Cis8c2NyaXB0IHNyYz0iLi4vLi4vcmVzb3VyY2VzL2pzLXRlc3QtcHJlLmpz
Ij48L3NjcmlwdD4KKzwvaGVhZD4KKzxib2R5PgorPHNjcmlwdD4KKyAgbGV0IGhhbmRsZXIgPSB7
CisgICAgZ2V0OiBPYmplY3QKKyAgfTsKKyAgbGV0IHAgPSBuZXcgUHJveHkoe30sIGhhbmRsZXIp
OworICBSVENQZWVyQ29ubmVjdGlvbi5nZW5lcmF0ZUNlcnRpZmljYXRlKHApOworPC9zY3JpcHQ+
Cis8c2NyaXB0IHNyYz0iLi4vLi4vcmVzb3VyY2VzL2pzLXRlc3QtcG9zdC5qcyI+PC9zY3JpcHQ+
Cis8L2JvZHk+Cis8L2h0bWw+CisKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxv
ZyBiL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwppbmRleCA4YWI5OGZhZTAwLi4zYTQyNjI4NTc0
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYkNv
cmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTYgQEAKKzIwMjEtMDQtMTIgIEZyw6lkw6lyaWMgV2Fu
ZyAgPGZ3YW5nQGlnYWxpYS5jb20+CisKKyAgICAgICAgQnVnIDIyMzc4OCAtIEFTU0VSVElPTiBG
QUlMRUQ6ICFtX25lZWRFeGNlcHRpb25DaGVjayBpbiBSVENQZWVyQ29ubmVjdGlvbjo6Q2VydGlm
aWNhdGVQYXJhbWV0ZXJzIFdlYkNvcmU6OmNvbnZlcnREaWN0aW9uYXJ5PFdlYkNvcmU6OlJUQ1Bl
ZXJDb25uZWN0aW9uOjpDZXJ0aWZpY2F0ZVBhcmFtZXRlcnM+CisgICAgICAgIGh0dHBzOi8vYnVn
cy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMjM3ODgKKworICAgICAgICBSZXZpZXdlZCBi
eSBSeW9zdWtlIE5pd2EuCisKKyAgICAgICAgVGVzdDoganMvZG9tL21pc3NpbmctZXhjZXB0aW9u
LWNoZWNrLWluLWNvbnZlcnROdW1iZXJzLmh0bWwKKworICAgICAgICAqIGJpbmRpbmdzL2pzL0pT
RE9NQ29udmVydE51bWJlcnMuaDoKKyAgICAgICAgKFdlYkNvcmU6OkNvbnZlcnRlcjxJRExGbG9h
dD46OmNvbnZlcnQpOiBIYW5kbGUgcG90ZW50aWFsIGV4Y2VwdGlvbnMgdGhyb3duIGJ5IHRvTnVt
YmVyLgorICAgICAgICAoV2ViQ29yZTo6Q29udmVydGVyPElETERvdWJsZT46OmNvbnZlcnQpOiBE
aXR0by4KKwogMjAyMS0wNC0xMiAgQWRyaWFuIFBlcmV6IGRlIENhc3RybyAgPGFwZXJlekBpZ2Fs
aWEuY29tPgogCiAgICAgICAgIFtXUEVdW0dUS10gVXNlIGdfb2JqZWN0X25vdGlmeV9ieV9wc3Bl
YygpIHdoZW5ldmVyIHBvc3NpYmxlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5n
cy9qcy9KU0RPTUNvbnZlcnROdW1iZXJzLmggYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9K
U0RPTUNvbnZlcnROdW1iZXJzLmgKaW5kZXggMGY0N2QzM2IxYi4uYzA2ZWRiYzA0YyAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNET01Db252ZXJ0TnVtYmVycy5oCisr
KyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTRE9NQ29udmVydE51bWJlcnMuaApAQCAt
MjkxLDYgKzI5MSw3IEBAIHRlbXBsYXRlPD4gc3RydWN0IENvbnZlcnRlcjxJRExGbG9hdD4gOiBE
ZWZhdWx0Q29udmVydGVyPElETEZsb2F0PiB7CiAgICAgICAgIEpTQzo6Vk0mIHZtID0gSlNDOjpn
ZXRWTSgmbGV4aWNhbEdsb2JhbE9iamVjdCk7CiAgICAgICAgIGF1dG8gc2NvcGUgPSBERUNMQVJF
X1RIUk9XX1NDT1BFKHZtKTsKICAgICAgICAgZG91YmxlIG51bWJlciA9IHZhbHVlLnRvTnVtYmVy
KCZsZXhpY2FsR2xvYmFsT2JqZWN0KTsKKyAgICAgICAgUkVUVVJOX0lGX0VYQ0VQVElPTihzY29w
ZSwgMC4wKTsKICAgICAgICAgaWYgKFVOTElLRUxZKCFzdGQ6OmlzZmluaXRlKG51bWJlcikpKQog
ICAgICAgICAgICAgdGhyb3dOb25GaW5pdGVUeXBlRXJyb3IobGV4aWNhbEdsb2JhbE9iamVjdCwg
c2NvcGUpOwogICAgICAgICByZXR1cm4gc3RhdGljX2Nhc3Q8ZmxvYXQ+KG51bWJlcik7CkBAIC0z
NDYsNiArMzQ3LDcgQEAgdGVtcGxhdGU8PiBzdHJ1Y3QgQ29udmVydGVyPElETERvdWJsZT4gOiBE
ZWZhdWx0Q29udmVydGVyPElETERvdWJsZT4gewogICAgICAgICBKU0M6OlZNJiB2bSA9IEpTQzo6
Z2V0Vk0oJmxleGljYWxHbG9iYWxPYmplY3QpOwogICAgICAgICBhdXRvIHNjb3BlID0gREVDTEFS
RV9USFJPV19TQ09QRSh2bSk7CiAgICAgICAgIGRvdWJsZSBudW1iZXIgPSB2YWx1ZS50b051bWJl
cigmbGV4aWNhbEdsb2JhbE9iamVjdCk7CisgICAgICAgIFJFVFVSTl9JRl9FWENFUFRJT04oc2Nv
cGUsIDAuMCk7CiAgICAgICAgIGlmIChVTkxJS0VMWSghc3RkOjppc2Zpbml0ZShudW1iZXIpKSkK
ICAgICAgICAgICAgIHRocm93Tm9uRmluaXRlVHlwZUVycm9yKGxleGljYWxHbG9iYWxPYmplY3Qs
IHNjb3BlKTsKICAgICAgICAgcmV0dXJuIG51bWJlcjsKLS0gCjIuMjUuMQoK
</data>
<flag name="commit-queue"
          id="445923"
          type_id="3"
          status="-"
          setter="ews-feeder"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>425851</attachid>
            <date>2021-04-13 02:41:59 -0700</date>
            <delta_ts>2021-04-13 03:26:28 -0700</delta_ts>
            <desc>Patch for landing</desc>
            <filename>0001-Bug-223788-ASSERTION-FAILED-m_needExceptionCheck-in-.patch</filename>
            <type>text/plain</type>
            <size>5401</size>
            <attacher name="Frédéric Wang Nélar">fred.wang</attacher>
            
              <data encoding="base64">RnJvbSBjYzE0MTZhZmE3MjBkNTg3ZWQ3ZjI5NTFlOTYzYzBiZDVmZDc0Mjk3IE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiA9P1VURi04P3E/RnI9QzM9QTlkPUMzPUE5cmljPTIwV2FuZz89
IDxmd2FuZ0BpZ2FsaWEuY29tPgpEYXRlOiBNb24sIDEyIEFwciAyMDIxIDE1OjA2OjU1ICswMjAw
ClN1YmplY3Q6IFtQQVRDSF0gQnVnIDIyMzc4OCAtIEFTU0VSVElPTiBGQUlMRUQ6ICFtX25lZWRF
eGNlcHRpb25DaGVjayBpbgogUlRDUGVlckNvbm5lY3Rpb246OkNlcnRpZmljYXRlUGFyYW1ldGVy
cwogV2ViQ29yZTo6Y29udmVydERpY3Rpb25hcnk8V2ViQ29yZTo6UlRDUGVlckNvbm5lY3Rpb246
OkNlcnRpZmljYXRlUGFyYW1ldGVycz4KCi0tLQogTGF5b3V0VGVzdHMvQ2hhbmdlTG9nICAgICAg
ICAgICAgICAgICAgICAgICAgICAgfCAxMyArKysrKysrKysrKysrCiAuLi5jZXB0aW9uLWNoZWNr
LWluLWNvbnZlcnROdW1iZXJzLWV4cGVjdGVkLnR4dCB8ICA0ICsrKysKIC4uLnNzaW5nLWV4Y2Vw
dGlvbi1jaGVjay1pbi1jb252ZXJ0TnVtYmVycy5odG1sIHwgMTcgKysrKysrKysrKysrKysrKysK
IExheW91dFRlc3RzL3BsYXRmb3JtL3dpbi9UZXN0RXhwZWN0YXRpb25zICAgICAgIHwgIDEgKwog
U291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nICAgICAgICAgICAgICAgICAgICAgICAgfCAxMyArKysr
KysrKysrKysrCiAuLi4vV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0RPTUNvbnZlcnROdW1iZXJzLmgg
ICB8ICAyICsrCiA2IGZpbGVzIGNoYW5nZWQsIDUwIGluc2VydGlvbnMoKykKIGNyZWF0ZSBtb2Rl
IDEwMDY0NCBMYXlvdXRUZXN0cy9qcy9kb20vbWlzc2luZy1leGNlcHRpb24tY2hlY2staW4tY29u
dmVydE51bWJlcnMtZXhwZWN0ZWQudHh0CiBjcmVhdGUgbW9kZSAxMDA2NDQgTGF5b3V0VGVzdHMv
anMvZG9tL21pc3NpbmctZXhjZXB0aW9uLWNoZWNrLWluLWNvbnZlcnROdW1iZXJzLmh0bWwKCmRp
ZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cK
aW5kZXggYTQ5MTMzNTFhZC4uODc5MTBmMjhmOCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvQ2hh
bmdlTG9nCisrKyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE2IEBACisyMDIx
LTA0LTEzICBGcsOpZMOpcmljIFdhbmcgIDxmd2FuZ0BpZ2FsaWEuY29tPgorCisgICAgICAgIEFT
U0VSVElPTiBGQUlMRUQ6ICFtX25lZWRFeGNlcHRpb25DaGVjayBpbiBSVENQZWVyQ29ubmVjdGlv
bjo6Q2VydGlmaWNhdGVQYXJhbWV0ZXJzCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3Jn
L3Nob3dfYnVnLmNnaT9pZD0yMjM3ODgKKworICAgICAgICBSZXZpZXdlZCBieSBSeW9zdWtlIE5p
d2EuCisKKyAgICAgICAgQWRkIHJlZ3Jlc3Npb24gdGVzdC4KKworICAgICAgICAqIGpzL2RvbS9t
aXNzaW5nLWV4Y2VwdGlvbi1jaGVjay1pbi1jb252ZXJ0TnVtYmVycy1leHBlY3RlZC50eHQ6IEFk
ZGVkLgorICAgICAgICAqIGpzL2RvbS9taXNzaW5nLWV4Y2VwdGlvbi1jaGVjay1pbi1jb252ZXJ0
TnVtYmVycy5odG1sOiBBZGRlZC4KKyAgICAgICAgKiBwbGF0Zm9ybS93aW4vVGVzdEV4cGVjdGF0
aW9uczogU2tpcCB0ZXN0IG9uIHdpbmRvd3Mgc2luY2UgdGhlcmUgaXMgbm8gV2ViUlRDIHN1cHBv
cnQuCisKIDIwMjEtMDQtMTEgIENhbWVyb24gTWNDb3JtYWNrICA8aGV5Y2FtQGFwcGxlLmNvbT4K
IAogICAgICAgICBGaXggaW5pdGlhbCBob3Jpem9udGFsIHNjcm9sbGJhciBwb3NpdGlvbiB3aGVu
IHZlcnRpY2FsIHNjcm9sbGJhciBpcyBvbiB0aGUgbGVmdC4KZGlmZiAtLWdpdCBhL0xheW91dFRl
c3RzL2pzL2RvbS9taXNzaW5nLWV4Y2VwdGlvbi1jaGVjay1pbi1jb252ZXJ0TnVtYmVycy1leHBl
Y3RlZC50eHQgYi9MYXlvdXRUZXN0cy9qcy9kb20vbWlzc2luZy1leGNlcHRpb24tY2hlY2staW4t
Y29udmVydE51bWJlcnMtZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAw
MDAwMDAwMDAuLjQzZTVlZWVkYmYKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9qcy9k
b20vbWlzc2luZy1leGNlcHRpb24tY2hlY2staW4tY29udmVydE51bWJlcnMtZXhwZWN0ZWQudHh0
CkBAIC0wLDAgKzEsNCBAQAorUEFTUyBzdWNjZXNzZnVsbHlQYXJzZWQgaXMgdHJ1ZQorCitURVNU
IENPTVBMRVRFCisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2pzL2RvbS9taXNzaW5nLWV4Y2Vw
dGlvbi1jaGVjay1pbi1jb252ZXJ0TnVtYmVycy5odG1sIGIvTGF5b3V0VGVzdHMvanMvZG9tL21p
c3NpbmctZXhjZXB0aW9uLWNoZWNrLWluLWNvbnZlcnROdW1iZXJzLmh0bWwKbmV3IGZpbGUgbW9k
ZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMC4uMmY4MzQyNWFkNQotLS0gL2Rldi9udWxsCisrKyBi
L0xheW91dFRlc3RzL2pzL2RvbS9taXNzaW5nLWV4Y2VwdGlvbi1jaGVjay1pbi1jb252ZXJ0TnVt
YmVycy5odG1sCkBAIC0wLDAgKzEsMTcgQEAKKzwhRE9DVFlQRSBodG1sPjwhLS0gd2Via2l0LXRl
c3QtcnVubmVyIFsganNjT3B0aW9ucz0tLXZhbGlkYXRlRXhjZXB0aW9uQ2hlY2tzPXRydWUgXSAt
LT4KKzxodG1sPgorPGhlYWQ+Cis8c2NyaXB0IHNyYz0iLi4vLi4vcmVzb3VyY2VzL2pzLXRlc3Qt
cHJlLmpzIj48L3NjcmlwdD4KKzwvaGVhZD4KKzxib2R5PgorPHNjcmlwdD4KKyAgbGV0IGhhbmRs
ZXIgPSB7CisgICAgZ2V0OiBPYmplY3QKKyAgfTsKKyAgbGV0IHAgPSBuZXcgUHJveHkoe30sIGhh
bmRsZXIpOworICBSVENQZWVyQ29ubmVjdGlvbi5nZW5lcmF0ZUNlcnRpZmljYXRlKHApOworPC9z
Y3JpcHQ+Cis8c2NyaXB0IHNyYz0iLi4vLi4vcmVzb3VyY2VzL2pzLXRlc3QtcG9zdC5qcyI+PC9z
Y3JpcHQ+Cis8L2JvZHk+Cis8L2h0bWw+CisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3BsYXRm
b3JtL3dpbi9UZXN0RXhwZWN0YXRpb25zIGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vd2luL1Rlc3RF
eHBlY3RhdGlvbnMKaW5kZXggNjY3YzhkMjIwOS4uYzZjY2VjMzFiYyAxMDA2NDQKLS0tIGEvTGF5
b3V0VGVzdHMvcGxhdGZvcm0vd2luL1Rlc3RFeHBlY3RhdGlvbnMKKysrIGIvTGF5b3V0VGVzdHMv
cGxhdGZvcm0vd2luL1Rlc3RFeHBlY3RhdGlvbnMKQEAgLTM2NjUsNiArMzY2NSw3IEBAIGltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2VicnRjIFsgU2tpcCBdCiB3ZWJydGMgWyBTa2lw
IF0KIGh0dHAvdGVzdHMvd2VicnRjIFsgU2tpcCBdCiBodHRwL3dwdC93ZWJydGMgWyBTa2lwIF0K
K2pzL2RvbS9taXNzaW5nLWV4Y2VwdGlvbi1jaGVjay1pbi1jb252ZXJ0TnVtYmVycy5odG1sIFsg
U2tpcCBdCiAKICMgUmVzb3VyY2UgVGltaW5nIE1ldHJpY3Mgbm90IGF2YWlsYWJsZS4KIGh0dHAv
d3B0L3Jlc291cmNlLXRpbWluZy9ydC1uZXh0SG9wUHJvdG9jb2wuaHRtbCBbIFNraXAgXQpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdl
TG9nCmluZGV4IDhhYjk4ZmFlMDAuLjViMmVjNDhlZTQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL0NoYW5nZUxvZworKysgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKQEAgLTEsMyArMSwx
NiBAQAorMjAyMS0wNC0xMyAgRnLDqWTDqXJpYyBXYW5nICA8ZndhbmdAaWdhbGlhLmNvbT4KKwor
ICAgICAgICBBU1NFUlRJT04gRkFJTEVEOiAhbV9uZWVkRXhjZXB0aW9uQ2hlY2sgaW4gUlRDUGVl
ckNvbm5lY3Rpb246OkNlcnRpZmljYXRlUGFyYW1ldGVycworICAgICAgICBodHRwczovL2J1Z3Mu
d2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjIzNzg4CisKKyAgICAgICAgUmV2aWV3ZWQgYnkg
Unlvc3VrZSBOaXdhLgorCisgICAgICAgIFRlc3Q6IGpzL2RvbS9taXNzaW5nLWV4Y2VwdGlvbi1j
aGVjay1pbi1jb252ZXJ0TnVtYmVycy5odG1sCisKKyAgICAgICAgKiBiaW5kaW5ncy9qcy9KU0RP
TUNvbnZlcnROdW1iZXJzLmg6CisgICAgICAgIChXZWJDb3JlOjpDb252ZXJ0ZXI8SURMRmxvYXQ+
Ojpjb252ZXJ0KTogSGFuZGxlIHBvdGVudGlhbCBleGNlcHRpb25zIHRocm93biBieSB0b051bWJl
ci4KKyAgICAgICAgKFdlYkNvcmU6OkNvbnZlcnRlcjxJRExEb3VibGU+Ojpjb252ZXJ0KTogRGl0
dG8uCisKIDIwMjEtMDQtMTIgIEFkcmlhbiBQZXJleiBkZSBDYXN0cm8gIDxhcGVyZXpAaWdhbGlh
LmNvbT4KIAogICAgICAgICBbV1BFXVtHVEtdIFVzZSBnX29iamVjdF9ub3RpZnlfYnlfcHNwZWMo
KSB3aGVuZXZlciBwb3NzaWJsZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mv
anMvSlNET01Db252ZXJ0TnVtYmVycy5oIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNE
T01Db252ZXJ0TnVtYmVycy5oCmluZGV4IDBmNDdkMzNiMWIuLmMwNmVkYmMwNGMgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTRE9NQ29udmVydE51bWJlcnMuaAorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0RPTUNvbnZlcnROdW1iZXJzLmgKQEAgLTI5
MSw2ICsyOTEsNyBAQCB0ZW1wbGF0ZTw+IHN0cnVjdCBDb252ZXJ0ZXI8SURMRmxvYXQ+IDogRGVm
YXVsdENvbnZlcnRlcjxJRExGbG9hdD4gewogICAgICAgICBKU0M6OlZNJiB2bSA9IEpTQzo6Z2V0
Vk0oJmxleGljYWxHbG9iYWxPYmplY3QpOwogICAgICAgICBhdXRvIHNjb3BlID0gREVDTEFSRV9U
SFJPV19TQ09QRSh2bSk7CiAgICAgICAgIGRvdWJsZSBudW1iZXIgPSB2YWx1ZS50b051bWJlcigm
bGV4aWNhbEdsb2JhbE9iamVjdCk7CisgICAgICAgIFJFVFVSTl9JRl9FWENFUFRJT04oc2NvcGUs
IDAuMCk7CiAgICAgICAgIGlmIChVTkxJS0VMWSghc3RkOjppc2Zpbml0ZShudW1iZXIpKSkKICAg
ICAgICAgICAgIHRocm93Tm9uRmluaXRlVHlwZUVycm9yKGxleGljYWxHbG9iYWxPYmplY3QsIHNj
b3BlKTsKICAgICAgICAgcmV0dXJuIHN0YXRpY19jYXN0PGZsb2F0PihudW1iZXIpOwpAQCAtMzQ2
LDYgKzM0Nyw3IEBAIHRlbXBsYXRlPD4gc3RydWN0IENvbnZlcnRlcjxJRExEb3VibGU+IDogRGVm
YXVsdENvbnZlcnRlcjxJRExEb3VibGU+IHsKICAgICAgICAgSlNDOjpWTSYgdm0gPSBKU0M6Omdl
dFZNKCZsZXhpY2FsR2xvYmFsT2JqZWN0KTsKICAgICAgICAgYXV0byBzY29wZSA9IERFQ0xBUkVf
VEhST1dfU0NPUEUodm0pOwogICAgICAgICBkb3VibGUgbnVtYmVyID0gdmFsdWUudG9OdW1iZXIo
JmxleGljYWxHbG9iYWxPYmplY3QpOworICAgICAgICBSRVRVUk5fSUZfRVhDRVBUSU9OKHNjb3Bl
LCAwLjApOwogICAgICAgICBpZiAoVU5MSUtFTFkoIXN0ZDo6aXNmaW5pdGUobnVtYmVyKSkpCiAg
ICAgICAgICAgICB0aHJvd05vbkZpbml0ZVR5cGVFcnJvcihsZXhpY2FsR2xvYmFsT2JqZWN0LCBz
Y29wZSk7CiAgICAgICAgIHJldHVybiBudW1iZXI7Ci0tIAoyLjI1LjEKCg==
</data>

          </attachment>
      

    </bug>

</bugzilla>