<?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>263341</bug_id>
          
          <creation_ts>2023-10-18 15:14:33 -0700</creation_ts>
          <short_desc>Deeply nested SVG patterns can take minutes to invalidate the target element</short_desc>
          <delta_ts>2023-10-18 17:21:40 -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>SVG</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>DUPLICATE</resolution>
          <dup_id>263349</dup_id>
          
          <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="Said Abou-Hallawa">sabouhallawa</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>sabouhallawa</cc>
    
    <cc>webkit-bug-importer</cc>
    
    <cc>zimmermann</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1985980</commentid>
    <comment_count>0</comment_count>
      <attachid>468267</attachid>
    <who name="Said Abou-Hallawa">sabouhallawa</who>
    <bug_when>2023-10-18 15:14:33 -0700</bug_when>
    <thetext>Created attachment 468267
test case (will hang for 3-4 minutes)

Open the attached test case.

Result: WebKit takes 3-4 minutes to show the page.
Expected: The page is updated in reasonable time.

NOTE: This test page uses a deeply nested pattern to fill an ellipse. When a &lt;rect&gt; is added to the deepest nested pattern, it causes 10^9 invalidation. This is due to pattern rect elements nesting relationship.

NOTE: This can be fixed by marking the invalidated renderers as visited so they can be skipped if they are revisited.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1985984</commentid>
    <comment_count>1</comment_count>
    <who name="Said Abou-Hallawa">sabouhallawa</who>
    <bug_when>2023-10-18 15:16:52 -0700</bug_when>
    <thetext>*** Bug 263280 has been marked as a duplicate of this bug. ***</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1986014</commentid>
    <comment_count>2</comment_count>
    <who name="Said Abou-Hallawa">sabouhallawa</who>
    <bug_when>2023-10-18 17:11:38 -0700</bug_when>
    <thetext>rdar://116532387</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1986019</commentid>
    <comment_count>3</comment_count>
    <who name="Said Abou-Hallawa">sabouhallawa</who>
    <bug_when>2023-10-18 17:21:40 -0700</bug_when>
    <thetext>I could not create the PR using this bug. So I created bug 263349.

*** This bug has been marked as a duplicate of bug 263349 ***</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="0"
              isprivate="0"
          >
            <attachid>468267</attachid>
            <date>2023-10-18 15:14:33 -0700</date>
            <delta_ts>2023-10-18 15:14:33 -0700</delta_ts>
            <desc>test case (will hang for 3-4 minutes)</desc>
            <filename>pattern-nested-reference.html</filename>
            <type>text/html</type>
            <size>2165</size>
            <attacher name="Said Abou-Hallawa">sabouhallawa</attacher>
            
              <data encoding="base64">PGJvZHk+CiAgICA8c3ZnIGlkPSJzdmciIHdpZHRoPSI2MDBweCIgaGVpZ2h0PSI0MDBweCI+CiAg
ICAgICAgPGVsbGlwc2UgY3g9IjMwMCIgY3k9IjIwMCIgcng9IjI1MCIgcnk9IjE1MCIgZmlsbD0i
dXJsKCN6KSIgc3Ryb2tlPSJibGFjayIgc3Ryb2tlLXdpZHRoPSIyIiAvPgogICAgPC9zdmc+CiAg
ICA8c2NyaXB0PgogICAgICAgIGZ1bmN0aW9uIGNyZWF0ZVBhdHRlcm4ocGFyZW50LCBpZCwgZmls
bFVSTCwgY29sb3JzKSB7CiAgICAgICAgICAgIHZhciBwYXR0ZXJuID0gZG9jdW1lbnQuY3JlYXRl
RWxlbWVudE5TKCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIsICJwYXR0ZXJuIik7CiAgICAg
ICAgICAgIHBhcmVudC5hcHBlbmRDaGlsZChwYXR0ZXJuKTsKCiAgICAgICAgICAgIHBhdHRlcm4u
c2V0QXR0cmlidXRlKCJpZCIsIGlkKTsKICAgICAgICAgICAgcGF0dGVybi5zZXRBdHRyaWJ1dGUo
IngiLCAiMTAiKTsKICAgICAgICAgICAgcGF0dGVybi5zZXRBdHRyaWJ1dGUoInkiLCAiMTAiKTsK
ICAgICAgICAgICAgcGF0dGVybi5zZXRBdHRyaWJ1dGUoIndpZHRoIiwgIjEwMCIpOwogICAgICAg
ICAgICBwYXR0ZXJuLnNldEF0dHJpYnV0ZSgiaGVpZ2h0IiwgIjEwMCIpOwogICAgICAgICAgICBw
YXR0ZXJuLnNldEF0dHJpYnV0ZSgicGF0dGVyblVuaXRzIiwgInVzZXJTcGFjZU9uVXNlIik7Cgog
ICAgICAgICAgICBmb3IgKGkgaW4gY29sb3JzKSB7CiAgICAgICAgICAgICAgICB2YXIgcmVjdCA9
IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnROUygiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciLCAi
cmVjdCIpOwogICAgICAgICAgICAgICAgcGF0dGVybi5hcHBlbmRDaGlsZChyZWN0KTsKCiAgICAg
ICAgICAgICAgICByZWN0LnNldEF0dHJpYnV0ZSgieCIsIGkpOwogICAgICAgICAgICAgICAgcmVj
dC5zZXRBdHRyaWJ1dGUoInkiLCBpKTsKICAgICAgICAgICAgICAgIHJlY3Quc2V0QXR0cmlidXRl
KCJ3aWR0aCIsICIxMDAiKTsKICAgICAgICAgICAgICAgIHJlY3Quc2V0QXR0cmlidXRlKCJoZWln
aHQiLCAiMTAwIik7CiAgICAgICAgICAgICAgICByZWN0LnNldEF0dHJpYnV0ZSgiZmlsbCIsIGZp
bGxVUkwpOwogICAgICAgICAgICAgICAgcmVjdC5zZXRBdHRyaWJ1dGUoInN0cm9rZSIsIGNvbG9y
c1tpXSk7CiAgICAgICAgICAgIH0KICAgICAgICB9CgogICAgICAgIGZ1bmN0aW9uIHNldHVwUGF0
dGVybnMoKSB7CiAgICAgICAgICAgIHZhciBzdmcgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgi
c3ZnIik7CgogICAgICAgICAgICBjb25zdCBjb2xvcnMgPSBbCiAgICAgICAgICAgICAgICAiZ3Jl
ZW4iLAogICAgICAgICAgICAgICAgImJyb3duIiwKICAgICAgICAgICAgICAgICJwaW5rIiwKICAg
ICAgICAgICAgICAgICJncmV5IiwKICAgICAgICAgICAgICAgICJjeWFuIiwKICAgICAgICAgICAg
ICAgICJncmVlbiIsCiAgICAgICAgICAgICAgICAiYnJvd24iLAogICAgICAgICAgICAgICAgInBp
bmsiLAogICAgICAgICAgICAgICAgImdyZXkiLAogICAgICAgICAgICAgICAgImN5YW4iCiAgICAg
ICAgICAgIF07CgogICAgICAgICAgICBjcmVhdGVQYXR0ZXJuKHN2ZywgInoiLCAidXJsKCNpKSIs
IGNvbG9ycyk7CiAgICAgICAgICAgIGNyZWF0ZVBhdHRlcm4oc3ZnLCAiaSIsICJ1cmwoI2gpIiwg
Y29sb3JzKTsKICAgICAgICAgICAgY3JlYXRlUGF0dGVybihzdmcsICJoIiwgInVybCgjZykiLCBj
b2xvcnMpOwogICAgICAgICAgICBjcmVhdGVQYXR0ZXJuKHN2ZywgImciLCAidXJsKCNmKSIsIGNv
bG9ycyk7CiAgICAgICAgICAgIGNyZWF0ZVBhdHRlcm4oc3ZnLCAiZiIsICJ1cmwoI2UpIiwgY29s
b3JzKTsKICAgICAgICAgICAgY3JlYXRlUGF0dGVybihzdmcsICJlIiwgInVybCgjZCkiLCBjb2xv
cnMpOwogICAgICAgICAgICBjcmVhdGVQYXR0ZXJuKHN2ZywgImQiLCAidXJsKCNjKSIsIGNvbG9y
cyk7CiAgICAgICAgICAgIGNyZWF0ZVBhdHRlcm4oc3ZnLCAiYyIsICJ1cmwoI2IpIiwgY29sb3Jz
KTsKICAgICAgICAgICAgY3JlYXRlUGF0dGVybihzdmcsICJiIiwgInVybCgjYSkiLCBjb2xvcnMp
OwogICAgICAgICAgICBjcmVhdGVQYXR0ZXJuKHN2ZywgImEiLCAibm9uZSIsIGNvbG9ycyk7CiAg
ICAgICAgfQoKICAgICAgICBzZXR1cFBhdHRlcm5zKCk7CiAgICA8L3NjcmlwdD4KPC9ib2R5Pgo=
</data>

          </attachment>
      

    </bug>

</bugzilla>