<?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>236077</bug_id>
          
          <creation_ts>2022-02-03 04:59:42 -0800</creation_ts>
          <short_desc>[LBSE] Handle RenderSVGShape in SVGRenderSupport::applyStrokeStyleToContext()</short_desc>
          <delta_ts>2022-02-05 15:43:18 -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>SVG</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>
          
          <blocked>90738</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Nikolas Zimmermann">zimmermann</reporter>
          <assigned_to name="Nikolas Zimmermann">zimmermann</assigned_to>
          <cc>changseok</cc>
    
    <cc>darin</cc>
    
    <cc>dino</cc>
    
    <cc>esprehn+autocc</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>fmalita</cc>
    
    <cc>glenn</cc>
    
    <cc>gyuyoung.kim</cc>
    
    <cc>kondapallykalyan</cc>
    
    <cc>pdr</cc>
    
    <cc>rbuis</cc>
    
    <cc>sabouhallawa</cc>
    
    <cc>schenney</cc>
    
    <cc>sergio</cc>
    
    <cc>webkit-bug-importer</cc>
    
    <cc>zimmermann</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1836879</commentid>
    <comment_count>0</comment_count>
    <who name="Nikolas Zimmermann">zimmermann</who>
    <bug_when>2022-02-03 04:59:42 -0800</bug_when>
    <thetext>[LBSE] Handle RenderSVGShape in SVGRenderSupport::applyStrokeStyleToContext()</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1836881</commentid>
    <comment_count>1</comment_count>
      <attachid>450763</attachid>
    <who name="Nikolas Zimmermann">zimmermann</who>
    <bug_when>2022-02-03 05:03:37 -0800</bug_when>
    <thetext>Created attachment 450763
Patch, v1</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1836888</commentid>
    <comment_count>2</comment_count>
      <attachid>450763</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2022-02-03 05:10:06 -0800</bug_when>
    <thetext>Comment on attachment 450763
Patch, v1

Checking in untested code is worrisome but I trust this will be tested once we switch on this new engine</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1837798</commentid>
    <comment_count>3</comment_count>
    <who name="Nikolas Zimmermann">zimmermann</who>
    <bug_when>2022-02-05 15:21:43 -0800</bug_when>
    <thetext>(In reply to Darin Adler from comment #2)
&gt; Comment on attachment 450763 [details]
&gt; Patch, v1
&gt; 
&gt; Checking in untested code is worrisome but I trust this will be tested once
&gt; we switch on this new engine

Thanks a lot Darin, it&apos;s highly appreciated!

I do hope things come in place soon that it makes sense to start running tests with LBSE enabled. When enough is upstreamed, so that first tests have a chance to pass we should talk about the best way to run LBSE enable builds/tests.

A possible solution is to deploy dedicated EWS workers that run with --layer-based-svg-engine -- would be easy to setup for Igalia folks for WPE/Gtk. Does that work for Apple too?

In the short-term feature, I plan to introduce a decision logic which selectively turns on LBSE if a given SVG document fragment adheres to certain criteria (e.g. no text/images in document, no clipping, etc.). This allows us to bring up LBSE in parallel to using legacy SVG as fallback and get test coverage early on -- simple documents would be rendered using LBSE, more complex ones with the legacy engine. This should hopefully address your concerns :-)

If you wonder about the current status of the work:

I will post a minimal patch series soon that will enable &lt;rect&gt; painting in LBSE. No container support yet, therefore only direct &lt;rect&gt; children of the outermost &lt;svg&gt; element can be painted -- a basic set of features to start with on purpose. Besides the lack of containers and other SVG primitives, there is no transform support yet: CSS/SVG transform integration with RenderLayer(Backing) is left out on purpose, as it can be introduced as separated patch series. 

After containers and (2D) transform support is in-place, we&apos;re only a few steps away before it finally makes sense to enable testing and before we can replace &apos;rely on trust&apos; by &apos;rely on test progressions&apos; :-)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1837806</commentid>
    <comment_count>4</comment_count>
    <who name="Nikolas Zimmermann">zimmermann</who>
    <bug_when>2022-02-05 15:42:51 -0800</bug_when>
    <thetext>Committed r289163 (246859@trunk): &lt;https://commits.webkit.org/246859@trunk&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1837807</commentid>
    <comment_count>5</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2022-02-05 15:43:18 -0800</bug_when>
    <thetext>&lt;rdar://problem/88531964&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>450763</attachid>
            <date>2022-02-03 05:03:37 -0800</date>
            <delta_ts>2022-02-05 04:46:44 -0800</delta_ts>
            <desc>Patch, v1</desc>
            <filename>bug-236077-20220203050336.patch</filename>
            <type>text/plain</type>
            <size>2320</size>
            <attacher name="Nikolas Zimmermann">zimmermann</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjg5MDQwCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZDIzYzMwNmQ2NzY4ZTM4
NDhkZTQzMTY1ZjVmM2I5ODI4ZDUxMWQ0NC4uNTgwNjdlMjZiYzE5M2M2Y2IzZTRjNjVlOTI3NzFh
NzYyYTgyMzY4MSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIyIEBACisyMDIyLTAyLTAzICBOaWtv
bGFzIFppbW1lcm1hbm4gIDxuemltbWVybWFubkBpZ2FsaWEuY29tPgorCisgICAgICAgIFtMQlNF
XSBIYW5kbGUgUmVuZGVyU1ZHU2hhcGUgaW4gU1ZHUmVuZGVyU3VwcG9ydDo6YXBwbHlTdHJva2VT
dHlsZVRvQ29udGV4dCgpCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVn
LmNnaT9pZD0yMzYwNzcKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKwor
ICAgICAgICBBY3RpdmF0ZSBwYXRoIGxlbmd0aCBjYWxjdWxhdGlvbiBmb3IgUmVuZGVyU1ZHU2hh
cGUgLS0gdGhpcyBiaXQKKyAgICAgICAgd2FzIG1pc3Npbmcgd2hlbiB0aGUgbGF5ZXItYXdhcmUg
UmVuZGVyU1ZHU2hhcGUgaW1wbGVtZW50YXRpb24gd2FzCisgICAgICAgIHVwc3RyZWFtZWQgaW4g
cjI4NzgzMi4KKworICAgICAgICBDdXJyZW50bHkgdGhlIGZ1bmN0aW9uYWxpdHkgaXMgbm90IG9i
c2VydmFibGUsIGFzIHdlIGRvbid0IGNyZWF0ZQorICAgICAgICBMQlNFIHJlbmRlcmVycyB5ZXQu
CisKKyAgICAgICAgQ292ZXJlZCBieSBleGlzdGluZyB0ZXN0cywgbm8gY2hhbmdlIGluIGJlaGF2
aW91ci4KKworICAgICAgICAqIHJlbmRlcmluZy9zdmcvU1ZHUmVuZGVyU3VwcG9ydC5jcHA6Cisg
ICAgICAgIChXZWJDb3JlOjpTVkdSZW5kZXJTdXBwb3J0OjphcHBseVN0cm9rZVN0eWxlVG9Db250
ZXh0KToKKwogMjAyMi0wMi0wMyAgQ2FybG9zIEdhcmNpYSBDYW1wb3MgIDxjZ2FyY2lhQGlnYWxp
YS5jb20+CiAKICAgICAgICAgVW5yZXZpZXdlZC4gRml4IEdUSyBtYWtlIGRpc3RjaGVjawpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N2Zy9TVkdSZW5kZXJTdXBwb3J0LmNw
cCBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdmcvU1ZHUmVuZGVyU3VwcG9ydC5jcHAKaW5k
ZXggNjBjMGIxZDQ5MDBhNmFjMGY4ZTlkODRkNTQwZDI1YWYyODFhMWVmOC4uMjA5ZDRkZjlkMDZk
YTUxOTgxYWVlNGE4ZTY1ZjIwNjA3ZTQ2YTM4OSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
cmVuZGVyaW5nL3N2Zy9TVkdSZW5kZXJTdXBwb3J0LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9y
ZW5kZXJpbmcvc3ZnL1NWR1JlbmRlclN1cHBvcnQuY3BwCkBAIC00Miw2ICs0Miw3IEBACiAjaW5j
bHVkZSAiUmVuZGVyU1ZHUmVzb3VyY2VNYXJrZXIuaCIKICNpbmNsdWRlICJSZW5kZXJTVkdSZXNv
dXJjZU1hc2tlci5oIgogI2luY2x1ZGUgIlJlbmRlclNWR1Jvb3QuaCIKKyNpbmNsdWRlICJSZW5k
ZXJTVkdTaGFwZS5oIgogI2luY2x1ZGUgIlJlbmRlclNWR1RleHQuaCIKICNpbmNsdWRlICJSZW5k
ZXJTVkdUcmFuc2Zvcm1hYmxlQ29udGFpbmVyLmgiCiAjaW5jbHVkZSAiUmVuZGVyU1ZHVmlld3Bv
cnRDb250YWluZXIuaCIKQEAgLTQ4Niw3ICs0ODcsMTAgQEAgdm9pZCBTVkdSZW5kZXJTdXBwb3J0
OjphcHBseVN0cm9rZVN0eWxlVG9Db250ZXh0KEdyYXBoaWNzQ29udGV4dCYgY29udGV4dCwgY29u
c3QKICAgICAgICAgICAgIGlmIChmbG9hdCBwYXRoTGVuZ3RoID0gZG93bmNhc3Q8U1ZHR2VvbWV0
cnlFbGVtZW50PihlbGVtZW50KS0+cGF0aExlbmd0aCgpKSB7CiAgICAgICAgICAgICAgICAgaWYg
KGlzPExlZ2FjeVJlbmRlclNWR1NoYXBlPihyZW5kZXJlcikpCiAgICAgICAgICAgICAgICAgICAg
IHNjYWxlRmFjdG9yID0gZG93bmNhc3Q8TGVnYWN5UmVuZGVyU1ZHU2hhcGU+KHJlbmRlcmVyKS5n
ZXRUb3RhbExlbmd0aCgpIC8gcGF0aExlbmd0aDsKLSAgICAgICAgICAgICAgICAvLyBGSVhNRTog
W0xCU0VdIFVwc3RyZWFtIFJlbmRlclNWR1NoYXBlCisjaWYgRU5BQkxFKExBWUVSX0JBU0VEX1NW
R19FTkdJTkUpCisgICAgICAgICAgICAgICAgZWxzZSBpZiAoaXM8UmVuZGVyU1ZHU2hhcGU+KHJl
bmRlcmVyKSkKKyAgICAgICAgICAgICAgICAgICAgc2NhbGVGYWN0b3IgPSBkb3duY2FzdDxSZW5k
ZXJTVkdTaGFwZT4ocmVuZGVyZXIpLmdldFRvdGFsTGVuZ3RoKCkgLyBwYXRoTGVuZ3RoOworI2Vu
ZGlmCiAgICAgICAgICAgICB9CiAgICAgICAgIH0KICAgICAgICAgCg==
</data>
<flag name="review"
          id="477264"
          type_id="1"
          status="+"
          setter="darin"
    />
    <flag name="commit-queue"
          id="477551"
          type_id="3"
          status="-"
          setter="ews-feeder"
    />
          </attachment>
      

    </bug>

</bugzilla>