<?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>285800</bug_id>
          
          <creation_ts>2025-01-11 03:06:06 -0800</creation_ts>
          <short_desc>[JSC] Gracefully handle stack overflow error from JS parser in class initializer syntax</short_desc>
          <delta_ts>2025-01-15 00:09:08 -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>JavaScriptCore</component>
          <version>WebKit Local 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>rhezashan</reporter>
          <assigned_to name="Yusuke Suzuki">ysuzuki</assigned_to>
          <cc>bfulgham</cc>
    
    <cc>webkit-bug-importer</cc>
    
    <cc>ysuzuki</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>2086572</commentid>
    <comment_count>0</comment_count>
    <who name="">rhezashan</who>
    <bug_when>2025-01-11 03:06:06 -0800</bug_when>
    <thetext>The following testcase triggers an assertion failure in debug builds of Webkit built from current HEAD and safari-7620-branch:

Tested on both Webkit linux release and Webkit macOS debug.

```
function f0() {
    const v3 = new BigUint64Array(54);
    v3.byteLength &lt;&lt;= f0;
    for (const v4 of v3) {
        for (let i7 = 0, i8 = 10; i7 &lt; i8; i7++, i8--) {
            try { f0(v4); } catch (e) {}
        }
    }
    const v21 = new Int8Array(1000);
    try { v21.values(); } catch (e) {}
    class C23 {
        g;
        static get h() {
            ~BigUint64Array;
            for (let v26 = 0; v26 &lt; 32; v26++) {
                v21[&quot;p&quot; + v26] = v26;
            }
            return this;
        }
        0;
        static 429 = 1000;
        static #d = 1000;
        536870887;
        536870912 = Int8Array;
    }
    const v30 = new Array(65535);
    function* f31() {
        let v32 = 10;
        const o38 = {
            next() {
                v32--;
                const v36 = v32 == 0;
                const o37 = {
                    &quot;done&quot;: v36,
                    &quot;value&quot;: v32,
                };
                return o37;
            },
        };
    }
    const v43 = new Int8Array(1000);
    v43.valueOf = 1793796166;
    try { v43.values(); } catch (e) {}
    class C45 {
        g;
        static get h() {
            ~BigUint64Array;
            for (let v48 = 0; v48 &lt; 32; v48++) {
                v43[&quot;p&quot; + v48] = v48;
            }
            return this;
        }
        0;
        static 429 = 1000;
        static #d = 1000;
        536870887;
        536870912 = Int8Array;
    }
    const v51 = new C45();
    [v51,Date];
    const v56 = f31.constructor.apply(null, v30);
    v56();
    v56();
    const v61 = new Int8Array(54);
    v61.valueOf = 1793796166;
    try { v61.values(); } catch (e) {}
}
const v66 = new Int8Array(1000);
try { v66.values(); } catch (e) {}
class C68 {
    g;
    static get h() {
        ~BigUint64Array;
        for (let v71 = 0; v71 &lt; 32; v71++) {
            v66[&quot;p&quot; + v71] = v71;
        }
        return this;
    }
    0;
    static 429 = 1000;
    static #d = 1000;
    536870887;
    536870912 = Int8Array;
}
new C68();
f0();
const v77 = &quot;p&quot; + 1000;
const v80 = new Int8Array(1000);
let v81;
try { v81 = v80.values(); } catch (e) {}
for (let i84 = 0, i85 = 10; i84 &lt; i85; i84++, i85--) {
    try { v81(v77); } catch (e) {}
}

```
run with `./jsc --useConcurrentJIT=false --thresholdForJITAfterWarmUp=10 --thresholdForOptimizeAfterWarmUp=100 ~/poc.js`

Here is a part of the backtrace:

```
jsc(24108,0x1f2bc0240) malloc: nano zone abandoned due to inability to reserve vm space.
ASSERTION FAILED: !hasError()
/Users/rheza/webkit_safari_branch/Source/JavaScriptCore/parser/Parser.cpp(3376) : typename TreeBuilder::SourceElements JSC::Parser&lt;JSC::Lexer&lt;unsigned char&gt;&gt;::parseClassFieldInitializerSourceElements(TreeBuilder &amp;, const FixedVector&lt;UnlinkedFunctionExecutable::ClassElementDefinition&gt; &amp;) [LexerType = JSC::Lexer&lt;unsigned char&gt;, TreeBuilder = JSC::ASTBuilder]
1   0x11d8e3724 JSC::ASTBuilder::SourceElements JSC::Parser&lt;JSC::Lexer&lt;unsigned char&gt;&gt;::parseClassFieldInitializerSourceElements&lt;JSC::ASTBuilder&gt;(JSC::ASTBuilder&amp;, WTF::FixedVector&lt;JSC::UnlinkedFunctionExecutable::ClassElementDefinition&gt; const&amp;)
2   0x11d8d645c JSC::Parser&lt;JSC::Lexer&lt;unsigned char&gt;&gt;::parseInner(JSC::Identifier const&amp;, JSC::ParsingContext, std::__1::optional&lt;int&gt;, WTF::FixedVector&lt;JSC::UnlinkedFunctionExecutable::ClassElementDefinition&gt; const*, WTF::HashMap&lt;WTF::RefPtr&lt;WTF::UniquedStringImpl, WTF::PackedPtrTraits&lt;WTF::UniquedStringImpl&gt;, WTF::DefaultRefDerefTraits&lt;WTF::UniquedStringImpl&gt;&gt;, JSC::PrivateNameEntry, JSC::IdentifierRepHash, WTF::HashTraits&lt;WTF::RefPtr&lt;WTF::UniquedStringImpl, WTF::RawPtrTraits&lt;WTF::UniquedStringImpl&gt;, WTF::DefaultRefDerefTraits&lt;WTF::UniquedStringImpl&gt;&gt;&gt;, JSC::PrivateNameEntryHashTraits, WTF::HashTableTraits&gt; const*)
3   0x11ef0314c std::__1::unique_ptr&lt;JSC::FunctionNode, std::__1::default_delete&lt;JSC::FunctionNode&gt;&gt; JSC::Parser&lt;JSC::Lexer&lt;unsigned char&gt;&gt;::parse&lt;JSC::FunctionNode&gt;(JSC::ParserError&amp;, JSC::Identifier const&amp;, JSC::ParsingContext, std::__1::optional&lt;int&gt;, WTF::HashMap&lt;WTF::RefPtr&lt;WTF::UniquedStringImpl, WTF::PackedPtrTraits&lt;WTF::UniquedStringImpl&gt;, WTF::DefaultRefDerefTraits&lt;WTF::UniquedStringImpl&gt;&gt;, JSC::PrivateNameEntry, JSC::IdentifierRepHash, WTF::HashTraits&lt;WTF::RefPtr&lt;WTF::UniquedStringImpl, WTF::RawPtrTraits&lt;WTF::UniquedStringImpl&gt;, WTF::DefaultRefDerefTraits&lt;WTF::UniquedStringImpl&gt;&gt;&gt;, JSC::PrivateNameEntryHashTraits, WTF::HashTableTraits&gt; const*, WTF::FixedVector&lt;JSC::UnlinkedFunctionExecutable::ClassElementDefinition&gt; const*)
4   0x11ef003a4 std::__1::unique_ptr&lt;JSC::FunctionNode, std::__1::default_delete&lt;JSC::FunctionNode&gt;&gt; JSC::parse&lt;JSC::FunctionNode&gt;(JSC::VM&amp;, JSC::SourceCode const&amp;, JSC::Identifier const&amp;, JSC::ImplementationVisibility, JSC::JSParserBuiltinMode, unsigned char, JSC::JSParserScriptMode, JSC::SourceParseMode, JSC::FunctionMode, JSC::SuperBinding, JSC::ParserError&amp;, JSC::ConstructorKind, JSC::DerivedContextType, JSC::EvalContextType, WTF::HashMap&lt;WTF::RefPtr&lt;WTF::UniquedStringImpl, WTF::PackedPtrTraits&lt;WTF::UniquedStringImpl&gt;, WTF::DefaultRefDerefTraits&lt;WTF::UniquedStringImpl&gt;&gt;, JSC::PrivateNameEntry, JSC::IdentifierRepHash, WTF::HashTraits&lt;WTF::RefPtr&lt;WTF::UniquedStringImpl, WTF::RawPtrTraits&lt;WTF::UniquedStringImpl&gt;, WTF::DefaultRefDerefTraits&lt;WTF::UniquedStringImpl&gt;&gt;&gt;, JSC::PrivateNameEntryHashTraits, WTF::HashTableTraits&gt; const*, WTF::FixedVector&lt;JSC::UnlinkedFunctionExecutable::ClassElementDefinition&gt; const*, bool)
5   0x11eef7abc JSC::generateUnlinkedFunctionCodeBlock(JSC::VM&amp;, JSC::UnlinkedFunctionExecutable*, JSC::SourceCode const&amp;, JSC::CodeSpecializationKind, WTF::OptionSet&lt;JSC::CodeGenerationMode&gt;, JSC::UnlinkedFunctionKind, JSC::ParserError&amp;, JSC::SourceParseMode)
6   0x11eef6e18 JSC::UnlinkedFunctionExecutable::unlinkedCodeBlockFor(JSC::VM&amp;, JSC::SourceCode const&amp;, JSC::CodeSpecializationKind, WTF::OptionSet&lt;JSC::CodeGenerationMode&gt;, JSC::ParserError&amp;, JSC::SourceParseMode)
7   0x121d4391c JSC::ScriptExecutable::newCodeBlockFor(JSC::CodeSpecializationKind, JSC::JSFunction*, JSC::JSScope*)
8   0x121d44a24 JSC::ScriptExecutable::prepareForExecutionImpl(JSC::VM&amp;, JSC::JSFunction*, JSC::JSScope*, JSC::CodeSpecializationKind, JSC::CodeBlock*&amp;)
9   0x11fc3adc4 void JSC::ScriptExecutable::prepareForExecution&lt;JSC::FunctionExecutable&gt;(JSC::VM&amp;, JSC::JSFunction*, JSC::JSScope*, JSC::CodeSpecializationKind, JSC::CodeBlock*&amp;)
10  0x120c07560 JSC::linkFor(JSC::VM&amp;, JSC::JSCell*, JSC::CallFrame*, JSC::CallLinkInfo*)
11  0x120c068b8 operationDefaultCall
12  0x132340020 11  ???                                 0x0000000132340020 0x0 + 5137236000
13  0x1323825ec 12  ???                                 0x00000001323825ec 0x0 + 5137507820
14  0x132388128 13  ???                                 0x0000000132388128 0x0 + 5137531176
15  0x132388128 14  ???                                 0x0000000132388128 0x0 + 5137531176
16  0x132388128 15  ???                                 0x0000000132388128 0x0 + 5137531176
17  0x132388128 16  ???                                 0x0000000132388128 0x0 + 5137531176
18  0x132388128 17  ???                                 0x0000000132388128 0x0 + 5137531176
19  0x132388128 18  ???                                 0x0000000132388128 0x0 + 5137531176
20  0x132388128 19  ???                                 0x0000000132388128 0x0 + 5137531176
21  0x132388128 20  ???                                 0x0000000132388128 0x0 + 5137531176
22  0x132388128 21  ???                                 0x0000000132388128 0x0 + 5137531176
23  0x132388128 22  ???                                 0x0000000132388128 0x0 + 5137531176
24  0x132388128 23  ???                                 0x0000000132388128 0x0 + 5137531176
25  0x132388128 24  ???                                 0x0000000132388128 0x0 + 5137531176
26  0x132388128 25  ???                                 0x0000000132388128 0x0 + 5137531176
27  0x132388128 26  ???                                 0x0000000132388128 0x0 + 5137531176
28  0x132388128 27  ???                                 0x0000000132388128 0x0 + 5137531176
29  0x132388128 28  ???                                 0x0000000132388128 0x0 + 5137531176
30  0x132388128 29  ???                                 0x0000000132388128 0x0 + 5137531176
31  0x132388128 30  ???                                 0x0000000132388128 0x0 + 5137531176
AddressSanitizer:DEADLYSIGNAL
=================================================================
==24108==ERROR: AddressSanitizer: TRAP on unknown address 0x00011d8b318c (pc 0x00011d8b318c bp 0x00016d30c6b0 sp 0x00016d30c650 T0)
SCARINESS: 10 (signal)
    #0 0x11d8b318c in WTFCrashWithInfo(int, char const*, char const*, int) (/Users/rheza/webkit_safari_branch/WebKitBuild/Debug/JavaScriptCore.framework/Versions/A/JavaScriptCore:arm64+0x2fbb18c)
    #1 0x11d8e3754 in JSC::ASTBuilder::SourceElements JSC::Parser&lt;JSC::Lexer&lt;unsigned char&gt;&gt;::parseClassFieldInitializerSourceElements&lt;JSC::ASTBuilder&gt;(JSC::ASTBuilder&amp;, WTF::FixedVector&lt;JSC::UnlinkedFunctionExecutable::ClassElementDefinition&gt; const&amp;) (/Users/rheza/webkit_safari_branch/WebKitBuild/Debug/JavaScriptCore.framework/Versions/A/JavaScriptCore:arm64+0x2feb754)
    #2 0x11d8d6458 in JSC::Parser&lt;JSC::Lexer&lt;unsigned char&gt;&gt;::parseInner(JSC::Identifier const&amp;, JSC::ParsingContext, std::__1::optional&lt;int&gt;, WTF::FixedVector&lt;JSC::UnlinkedFunctionExecutable::ClassElementDefinition&gt; const*, WTF::HashMap&lt;WTF::RefPtr&lt;WTF::UniquedStringImpl, WTF::PackedPtrTraits&lt;WTF::UniquedStringImpl&gt;, WTF::DefaultRefDerefTraits&lt;WTF::UniquedStringImpl&gt;&gt;, JSC::PrivateNameEntry, JSC::IdentifierRepHash, WTF::HashTraits&lt;WTF::RefPtr&lt;WTF::UniquedStringImpl, WTF::RawPtrTraits&lt;WTF::UniquedStringImpl&gt;, WTF::DefaultRefDerefTraits&lt;WTF::UniquedStringImpl&gt;&gt;&gt;, JSC::PrivateNameEntryHashTraits, WTF::HashTableTraits&gt; const*) (/Users/rheza/webkit_safari_branch/WebKitBuild/Debug/JavaScriptCore.framework/Versions/A/JavaScriptCore:arm64+0x2fde458)
    #3 0x11ef03148 in std::__1::unique_ptr&lt;JSC::FunctionNode, std::__1::default_delete&lt;JSC::FunctionNode&gt;&gt; JSC::Parser&lt;JSC::Lexer&lt;unsigned char&gt;&gt;::parse&lt;JSC::FunctionNode&gt;(JSC::ParserError&amp;, JSC::Identifier const&amp;, JSC::ParsingContext, std::__1::optional&lt;int&gt;, WTF::HashMap&lt;WTF::RefPtr&lt;WTF::UniquedStringImpl, WTF::PackedPtrTraits&lt;WTF::UniquedStringImpl&gt;, WTF::DefaultRefDerefTraits&lt;WTF::UniquedStringImpl&gt;&gt;, JSC::PrivateNameEntry, JSC::IdentifierRepHash, WTF::HashTraits&lt;WTF::RefPtr&lt;WTF::UniquedStringImpl, WTF::RawPtrTraits&lt;WTF::UniquedStringImpl&gt;, WTF::DefaultRefDerefTraits&lt;WTF::UniquedStringImpl&gt;&gt;&gt;, JSC::PrivateNameEntryHashTraits, WTF::HashTableTraits&gt; const*, WTF::FixedVector&lt;JSC::UnlinkedFunctionExecutable::ClassElementDefinition&gt; const*) (/Users/rheza/webkit_safari_branch/WebKitBuild/Debug/JavaScriptCore.framework/Versions/A/JavaScriptCore:arm64+0x460b148)
    #4 0x11ef003a0 in std::__1::unique_ptr&lt;JSC::FunctionNode, std::__1::default_delete&lt;JSC::FunctionNode&gt;&gt; JSC::parse&lt;JSC::FunctionNode&gt;(JSC::VM&amp;, JSC::SourceCode const&amp;, JSC::Identifier const&amp;, JSC::ImplementationVisibility, JSC::JSParserBuiltinMode, unsigned char, JSC::JSParserScriptMode, JSC::SourceParseMode, JSC::FunctionMode, JSC::SuperBinding, JSC::ParserError&amp;, JSC::ConstructorKind, JSC::DerivedContextType, JSC::EvalContextType, WTF::HashMap&lt;WTF::RefPtr&lt;WTF::UniquedStringImpl, WTF::PackedPtrTraits&lt;WTF::UniquedStringImpl&gt;, WTF::DefaultRefDerefTraits&lt;WTF::UniquedStringImpl&gt;&gt;, JSC::PrivateNameEntry, JSC::IdentifierRepHash, WTF::HashTraits&lt;WTF::RefPtr&lt;WTF::UniquedStringImpl, WTF::RawPtrTraits&lt;WTF::UniquedStringImpl&gt;, WTF::DefaultRefDerefTraits&lt;WTF::UniquedStringImpl&gt;&gt;&gt;, JSC::PrivateNameEntryHashTraits, WTF::HashTableTraits&gt; const*, WTF::FixedVector&lt;JSC::UnlinkedFunctionExecutable::ClassElementDefinition&gt; const*, bool) (/Users/rheza/webkit_safari_branch/WebKitBuild/Debug/JavaScriptCore.framework/Versions/A/JavaScriptCore:arm64+0x46083a0)
    #5 0x11eef7ab8 in JSC::generateUnlinkedFunctionCodeBlock(JSC::VM&amp;, JSC::UnlinkedFunctionExecutable*, JSC::SourceCode const&amp;, JSC::CodeSpecializationKind, WTF::OptionSet&lt;JSC::CodeGenerationMode&gt;, JSC::UnlinkedFunctionKind, JSC::ParserError&amp;, JSC::SourceParseMode) (/Users/rheza/webkit_safari_branch/WebKitBuild/Debug/JavaScriptCore.framework/Versions/A/JavaScriptCore:arm64+0x45ffab8)
    #6 0x11eef6e14 in JSC::UnlinkedFunctionExecutable::unlinkedCodeBlockFor(JSC::VM&amp;, JSC::SourceCode const&amp;, JSC::CodeSpecializationKind, WTF::OptionSet&lt;JSC::CodeGenerationMode&gt;, JSC::ParserError&amp;, JSC::SourceParseMode) (/Users/rheza/webkit_safari_branch/WebKitBuild/Debug/JavaScriptCore.framework/Versions/A/JavaScriptCore:arm64+0x45fee14)
    #7 0x121d43918 in JSC::ScriptExecutable::newCodeBlockFor(JSC::CodeSpecializationKind, JSC::JSFunction*, JSC::JSScope*) (/Users/rheza/webkit_safari_branch/WebKitBuild/Debug/JavaScriptCore.framework/Versions/A/JavaScriptCore:arm64+0x744b918)
    #8 0x121d44a20 in JSC::ScriptExecutable::prepareForExecutionImpl(JSC::VM&amp;, JSC::JSFunction*, JSC::JSScope*, JSC::CodeSpecializationKind, JSC::CodeBlock*&amp;) (/Users/rheza/webkit_safari_branch/WebKitBuild/Debug/JavaScriptCore.framework/Versions/A/JavaScriptCore:arm64+0x744ca20)
    #9 0x11fc3adc0 in void JSC::ScriptExecutable::prepareForExecution&lt;JSC::FunctionExecutable&gt;(JSC::VM&amp;, JSC::JSFunction*, JSC::JSScope*, JSC::CodeSpecializationKind, JSC::CodeBlock*&amp;) (/Users/rheza/webkit_safari_branch/WebKitBuild/Debug/JavaScriptCore.framework/Versions/A/JavaScriptCore:arm64+0x5342dc0)
    #10 0x120c0755c in JSC::linkFor(JSC::VM&amp;, JSC::JSCell*, JSC::CallFrame*, JSC::CallLinkInfo*) (/Users/rheza/webkit_safari_branch/WebKitBuild/Debug/JavaScriptCore.framework/Versions/A/JavaScriptCore:arm64+0x630f55c)
    #11 0x120c068b4 in operationDefaultCall (/Users/rheza/webkit_safari_branch/WebKitBuild/Debug/JavaScriptCore.framework/Versions/A/JavaScriptCore:arm64+0x630e8b4)
    #12 0x13234001c  (&lt;unknown module&gt;)
    #13 0x1323825e8  (&lt;unknown module&gt;)
    ...
    #254 0x132388124  (&lt;unknown module&gt;)

==24108==Register values:
 x[0] = 0x0000000000000d30   x[1] = 0x0000000126f6cb80   x[2] = 0x0000000126fb5be0   x[3] = 0x0000000000000c0c  
 x[4] = 0x0000000063000000   x[5] = 0x0000000000000000   x[6] = 0x000000016cfe4000   x[7] = 0x0000000000000001  
 x[8] = 0x0000000000000c0c   x[9] = 0x0000000000000000  x[10] = 0x000000016d7dfff8  x[11] = 0x000000700001ffff  
x[12] = 0x000000702da818b8  x[13] = 0xffffffffffffffff  x[14] = 0x0000000000000000  x[15] = 0x00007fffffffffff  
x[16] = 0x00000001892db16c  x[17] = 0x0000000103388738  x[18] = 0x0000000000000000  x[19] = 0x000062d0000927a8  
x[20] = 0x0000632000000800  x[21] = 0x000000016d313350  x[22] = 0x000000016d7df3b8  x[23] = 0x000000016d7df3b8  
x[24] = 0x0000000188f5a000  x[25] = 0x00006200000012d0  x[26] = 0x000061f00000a660  x[27] = 0xfffe000000000000  
x[28] = 0xfffe000000000002     fp = 0x000000016d30c6b0     lr = 0x000000011d8e3758     sp = 0x000000016d30c650  
AddressSanitizer can not provide additional info.
SUMMARY: AddressSanitizer: TRAP (/Users/rheza/webkit_safari_branch/WebKitBuild/Debug/JavaScriptCore.framework/Versions/A/JavaScriptCore:arm64+0x2fbb18c) in WTFCrashWithInfo(int, char const*, char const*, int)
==24108==ABORTING
```

the safari-7620 took more time to trigger the bug while the HEAD ~20 seconds
I&apos;m not sure if this assertion failure has security implications, so I&apos;m filing this as a security issue as a precaution.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>2086573</commentid>
    <comment_count>1</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2025-01-11 03:06:16 -0800</bug_when>
    <thetext>&lt;rdar://problem/142737633&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>2087345</commentid>
    <comment_count>2</comment_count>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2025-01-14 23:26:01 -0800</bug_when>
    <thetext>It is crash bug as we will go to the same error handling path.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>2087346</commentid>
    <comment_count>3</comment_count>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2025-01-14 23:27:25 -0800</bug_when>
    <thetext>Pull request: https://github.com/WebKit/WebKit/pull/39057</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>2087349</commentid>
    <comment_count>4</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2025-01-15 00:09:07 -0800</bug_when>
    <thetext>Committed 288919@main (4298267945e8): &lt;https://commits.webkit.org/288919@main&gt;

Reviewed commits have been landed. Closing PR #39057 and removing active labels.</thetext>
  </long_desc>
      
      

    </bug>

</bugzilla>