<?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>304808</bug_id>
          
          <creation_ts>2025-12-31 09:46:29 -0800</creation_ts>
          <short_desc>`counter-*` properties computed value serialization depends on HashMap iteration order</short_desc>
          <delta_ts>2026-01-04 13:45:12 -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>CSS</component>
          <version>Safari 18</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="Sam Weinig">sam</reporter>
          <assigned_to name="Sam Weinig">sam</assigned_to>
          <cc>koivisto</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>2168721</commentid>
    <comment_count>0</comment_count>
    <who name="Sam Weinig">sam</who>
    <bug_when>2025-12-31 09:46:29 -0800</bug_when>
    <thetext>The computed value serialization of the `counter-*` properties is constructed by iterating a HashMap, which leads to random (or at least as random as the hash function is) output orderings.

Like with all other properties, the list should probably be ordered matching the specified order.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>2168722</commentid>
    <comment_count>1</comment_count>
      <attachid>477883</attachid>
    <who name="Sam Weinig">sam</who>
    <bug_when>2025-12-31 09:51:14 -0800</bug_when>
    <thetext>Created attachment 477883
Test case</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>2168730</commentid>
    <comment_count>2</comment_count>
    <who name="Sam Weinig">sam</who>
    <bug_when>2025-12-31 12:22:06 -0800</bug_when>
    <thetext>Pull request: https://github.com/WebKit/WebKit/pull/55970</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>2169145</commentid>
    <comment_count>3</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2026-01-04 13:44:48 -0800</bug_when>
    <thetext>Committed 305086@main (dcaee9e83acc): &lt;https://commits.webkit.org/305086@main&gt;

Reviewed commits have been landed. Closing PR #55970 and removing active labels.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>2169147</commentid>
    <comment_count>4</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2026-01-04 13:45:12 -0800</bug_when>
    <thetext>&lt;rdar://problem/167518994&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="0"
              isprivate="0"
          >
            <attachid>477883</attachid>
            <date>2025-12-31 09:51:14 -0800</date>
            <delta_ts>2025-12-31 09:51:14 -0800</delta_ts>
            <desc>Test case</desc>
            <filename>counter-order.html</filename>
            <type>text/html</type>
            <size>554</size>
            <attacher name="Sam Weinig">sam</attacher>
            
              <data encoding="base64">PCFET0NUWVBFIGh0bWw+CjxodG1sPgo8aGVhZD4KICA8c3R5bGU+CiAgICAjY29uc29sZSB7CiAg
ICAgIHdpZHRoOiA1MDBweDsKICAgIH0KICA8L3N0eWxlPgo8L2hlYWQ+Cjxib2R5PgogIDxkaXYg
aWQ9InRhcmdldCIgc3R5bGU9ImNvdW50ZXItcmVzZXQ6IGEgMSBiIDIgYyAzIGQgNCBlIDUiPjwv
ZGl2PgogIDxwcmUgaWQ9ImNvbnNvbGUiPjwvcHJlPgogIDxzY3JpcHQ+CiAgICBjb25zdCB0YXJn
ZXQgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgndGFyZ2V0Jyk7CiAgICBjb25zdCBjb25zb2xl
ID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ2NvbnNvbGUnKTsKCiAgICBjb25zb2xlLnRleHRD
b250ZW50ID0gYGNvdW50ZXItcmVzZXQgKHNwZWNpZmllZCk6ICR7dGFyZ2V0LnN0eWxlWydjb3Vu
dGVyLXJlc2V0J119XG5gCiAgICAgICAgICAgICAgICAgICAgICAgICsgYGNvdW50ZXItcmVzZXQg
KGNvbXB1dGVkKTogICR7d2luZG93LmdldENvbXB1dGVkU3R5bGUodGFyZ2V0KVsnY291bnRlci1y
ZXNldCddfVxuYDsKCiAgPC9zY3JpcHQ+CjwvYm9keT4KPC9odG1sPgo=
</data>

          </attachment>
      

    </bug>

</bugzilla>