<?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>236193</bug_id>
          
          <creation_ts>2022-02-05 16:28:42 -0800</creation_ts>
          <short_desc>[LBSE] Implement SVG2 rules to establish a stacking context</short_desc>
          <delta_ts>2022-02-21 11:17:30 -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>
    
    <blocked>236194</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Nikolas Zimmermann">zimmermann</reporter>
          <assigned_to name="Nikolas Zimmermann">zimmermann</assigned_to>
          <cc>rbuis</cc>
    
    <cc>sabouhallawa</cc>
    
    <cc>simon.fraser</cc>
    
    <cc>webkit-bug-importer</cc>
    
    <cc>zimmermann</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1837823</commentid>
    <comment_count>0</comment_count>
    <who name="Nikolas Zimmermann">zimmermann</who>
    <bug_when>2022-02-05 16:28:42 -0800</bug_when>
    <thetext>Prepare RenderLayer/RenderLayerBacking for RenderSVGModelObject support:

Follow the rules specified in https://www.w3.org/TR/SVG2/render.html#RenderingOrder, when to create a stacking context. This is necessary to enforce layer creation.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1837872</commentid>
    <comment_count>1</comment_count>
      <attachid>451034</attachid>
    <who name="Nikolas Zimmermann">zimmermann</who>
    <bug_when>2022-02-06 03:14:40 -0800</bug_when>
    <thetext>Created attachment 451034
Patch, v1</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1840741</commentid>
    <comment_count>2</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2022-02-12 16:29:36 -0800</bug_when>
    <thetext>&lt;rdar://problem/88860916&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1841218</commentid>
    <comment_count>3</comment_count>
      <attachid>451034</attachid>
    <who name="Rob Buis">rbuis</who>
    <bug_when>2022-02-14 05:26:56 -0800</bug_when>
    <thetext>Comment on attachment 451034
Patch, v1

Does this mean we get same behaviour for SVG 1.1? Are the SVG 2 rules for this just what was already happening in SVG1.1 or are there differences?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1842787</commentid>
    <comment_count>4</comment_count>
    <who name="Nikolas Zimmermann">zimmermann</who>
    <bug_when>2022-02-17 02:14:52 -0800</bug_when>
    <thetext>(In reply to Rob Buis from comment #3)
&gt; Comment on attachment 451034 [details]
&gt; Patch, v1
&gt; 
&gt; Does this mean we get same behaviour for SVG 1.1? Are the SVG 2 rules for
&gt; this just what was already happening in SVG1.1 or are there differences?

Thanks for asking, unfortunately I&apos;ll have to expand a bit on that to give a proper answer: Neither SVG 1.1, nor SVG 1.1 Second Edition define/use the term &quot;stacking context&quot; -- however it is an essential concept at the core of CSS, used throughout many CSS specifications. Specifying CSS masks or clipping operations result in the creation of a &quot;stacking context&quot;.

SVG 1.1 on the other hand, when defining clipping/masking operations talks about &quot;offscreen RGBA images&quot;, initialized to &apos;transparent black&apos; where e.g. the &lt;mask&gt; content is painted to and a set of rules how to &quot;blend&quot; those transparent offscreen images to final accumulated buffer representing the whole document.
SVG 1.1 group opacity description: https://www.w3.org/TR/SVG11/masking.html#ObjectAndGroupOpacityProperties)
SVG 1.1 masking: https://www.w3.org/TR/SVG11/masking.html#Masking

So how does SVG2 improve the situation? SVG2 defines that SVG elements establish stacking contexts, re-using the definitions from CSS. The whole rendering model for SVG was re-written in accordance with both SVG 1.1 SE (with minor differences only in previously un-spec&apos;ed territory) and CSS Compositing and Blending https://www.w3.org/TR/compositing-1/ (Nikos from Canon was behind the SVG integration parts in 2012).
This naturally defines how CSS/SVG interoperate, in terms of stacking context, mix-blend mode support. It also describes under which circumstances 3D transformations are flattened for SVG content, etc. bridging the gap between SVG/CSS worlds.
Now back to SVG clipping/masking: SVG2 no longer talks about offscreen RGBA images, but directly redirects to CSS Masking Module Level 1: &quot;Both, clipping and masking, are specified in the module CSS Masking [css-masking-1].&quot;

From https://www.w3.org/TR/css-masking-1/#the-clip-path:
&quot;A computed value of other than none results in the creation of a stacking context [CSS21] the same way that CSS opacity [CSS3COLOR] does for values other than 1.&quot;.

Tada, a stacking context is created for masks within SVG elements :-)
The whole concepts of SVG2 were properly integrated within the CSS cousins, merged and defined in interoperable ways.

SVG 1.1 was it&apos;s own animal, SVG2 is a first-class citizen in CSS world -- that was and is the original motivation for the whole LBSE work: the same unification that was done in the specs, applied to WebKit.

I could go on for all the other criteria in that list, but you&apos;ll get the picture :-)
Exciting no, how all the terminology changed? :-) And how the spec efforts really now paint a coherent picture of HTML5/SVG2 integration -- only stuff we could dream of when you began the initial &apos;CDF&apos; support in 2004 :-)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1842803</commentid>
    <comment_count>5</comment_count>
      <attachid>452343</attachid>
    <who name="Nikolas Zimmermann">zimmermann</who>
    <bug_when>2022-02-17 03:23:23 -0800</bug_when>
    <thetext>Created attachment 452343
Patch, v2</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1842804</commentid>
    <comment_count>6</comment_count>
    <who name="Nikolas Zimmermann">zimmermann</who>
    <bug_when>2022-02-17 03:25:09 -0800</bug_when>
    <thetext>I&apos;ve removed the non-ASCII quotes from the comments and expanded the ChangeLog a bit, based on your question and my answer here on the ticket.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1844288</commentid>
    <comment_count>7</comment_count>
    <who name="Nikolas Zimmermann">zimmermann</who>
    <bug_when>2022-02-21 11:15:49 -0800</bug_when>
    <thetext>Committed r290254 (?): &lt;https://commits.webkit.org/r290254&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1844289</commentid>
    <comment_count>8</comment_count>
    <who name="Nikolas Zimmermann">zimmermann</who>
    <bug_when>2022-02-21 11:17:30 -0800</bug_when>
    <thetext>Thanks Rob!</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>451034</attachid>
            <date>2022-02-06 03:14:40 -0800</date>
            <delta_ts>2022-02-17 03:23:19 -0800</delta_ts>
            <desc>Patch, v1</desc>
            <filename>bug-236193-20220206031439.patch</filename>
            <type>text/plain</type>
            <size>4823</size>
            <attacher name="Nikolas Zimmermann">zimmermann</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjg5MTY1CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggOGNhZjNlOTIwYTY3NTgw
Njg5ZDI0MzY4Y2EzMjFkN2U3ZTI2YjczMC4uZTUzMjIyYmI5MDg3ZmQwZDQ5OWU2MTAyNzI5YTRl
MjFhNmFmYzUwNCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE4IEBACisyMDIyLTAyLTA2ICBOaWtv
bGFzIFppbW1lcm1hbm4gIDxuemltbWVybWFubkBpZ2FsaWEuY29tPgorCisgICAgICAgIFtMQlNF
XSBJbXBsZW1lbnQgU1ZHMiBydWxlcyB0byBlc3RhYmxpc2ggYSBzdGFja2luZyBjb250ZXh0Cisg
ICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMzYxOTMKKwor
ICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBGb2xsb3cgdGhl
IHJ1bGVzIHNwZWNpZmllZCBpbiBodHRwczovL3d3dy53My5vcmcvVFIvU1ZHMi9yZW5kZXIuaHRt
bCNSZW5kZXJpbmdPcmRlciwKKyAgICAgICAgd2hlbiB0byBjcmVhdGUgYSBzdGFja2luZyBjb250
ZXh0LiBUaGlzIGlzIG5lY2Vzc2FyeSB0byBlbmZvcmNlIGxheWVyIGNyZWF0aW9uLgorCisgICAg
ICAgIENvdmVyZWQgYnkgZXhpc3RpbmcgdGVzdHMsIG5vIGNoYW5nZSBpbiBiZWhhdmlvdXIuCisK
KyAgICAgICAgKiBzdHlsZS9TdHlsZUFkanVzdGVyLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlN0
eWxlOjpBZGp1c3Rlcjo6YWRqdXN0U1ZHRWxlbWVudFN0eWxlKToKKwogMjAyMi0wMi0wMyAgTmlr
b2xhcyBaaW1tZXJtYW5uICA8bnppbW1lcm1hbm5AaWdhbGlhLmNvbT4KIAogICAgICAgICBbTEJT
RV0gSGFuZGxlIFJlbmRlclNWR1NoYXBlIGluIFNWR1JlbmRlclN1cHBvcnQ6OmFwcGx5U3Ryb2tl
U3R5bGVUb0NvbnRleHQoKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvc3R5bGUvU3R5bGVB
ZGp1c3Rlci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9zdHlsZS9TdHlsZUFkanVzdGVyLmNwcAppbmRl
eCBlNjgxMTU3MzVlOWM2OWFjMjRlNmI0NDU1MTQ3YjQ2MWJjNTRhZWZiLi41MGQ2YTY3OGVkOTIy
N2RiMzZlNWJiOGQ2NzliZjVhYTYxMjFjYWQxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9z
dHlsZS9TdHlsZUFkanVzdGVyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9zdHlsZS9TdHlsZUFk
anVzdGVyLmNwcApAQCAtOSw3ICs5LDcgQEAKICAqIENvcHlyaWdodCAoYykgMjAxMSwgQ29kZSBB
dXJvcmEgRm9ydW0uIEFsbCByaWdodHMgcmVzZXJ2ZWQuCiAgKiBDb3B5cmlnaHQgKEMpIFJlc2Vh
cmNoIEluIE1vdGlvbiBMaW1pdGVkIDIwMTEuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCiAgKiBDb3B5
cmlnaHQgKEMpIDIwMTIsIDIwMTMgR29vZ2xlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KLSAq
IENvcHlyaWdodCAoQykgMjAxNCBJZ2FsaWEgUy5MLgorICogQ29weXJpZ2h0IChDKSAyMDE0LCAy
MDIwLCAyMDIyIElnYWxpYSBTLkwuCiAgKgogICogVGhpcyBsaWJyYXJ5IGlzIGZyZWUgc29mdHdh
cmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vcgogICogbW9kaWZ5IGl0IHVuZGVyIHRo
ZSB0ZXJtcyBvZiB0aGUgR05VIExpYnJhcnkgR2VuZXJhbCBQdWJsaWMKQEAgLTYzMiw3ICs2MzIs
NDUgQEAgdm9pZCBBZGp1c3Rlcjo6YWRqdXN0U1ZHRWxlbWVudFN0eWxlKFJlbmRlclN0eWxlJiBz
dHlsZSwgY29uc3QgU1ZHRWxlbWVudCYgc3ZnRWwKICAgICBpZiAoIWlzUG9zaXRpb25pbmdBbGxv
d2VkKQogICAgICAgICBzdHlsZS5zZXRQb3NpdGlvbihSZW5kZXJTdHlsZTo6aW5pdGlhbFBvc2l0
aW9uKCkpOwogCi0gICAgLy8gTGVnYWN5UmVuZGVyU1ZHUm9vdCBoYW5kbGVzIHpvb21pbmcgZm9y
IHRoZSB3aG9sZSBTVkcgc3VidHJlZSwgc28gZm9yZWlnbk9iamVjdCBjb250ZW50IHNob3VsZAor
I2lmIEVOQUJMRShMQVlFUl9CQVNFRF9TVkdfRU5HSU5FKQorICAgIC8vIFNWRzI6IEEgbmV3IHN0
YWNraW5nIGNvbnRleHQgbXVzdCBiZSBlc3RhYmxpc2hlZCBhdCBhbiBTVkcgZWxlbWVudCBmb3Ig
aXRzIGRlc2NlbmRhbnRzIGlmOgorICAgIC8vIC0gaXQgaXMgdGhlIHJvb3QgZWxlbWVudAorICAg
IC8vIC0gdGhlIOKAmHotaW5kZXjigJkgcHJvcGVydHkgYXBwbGllcyB0byB0aGUgZWxlbWVudCBh
bmQgaXRzIGNvbXB1dGVkIHZhbHVlIGlzIGFuIGludGVnZXIKKyAgICAvLyAtIHRoZSBlbGVtZW50
IGlzIGFuIG91dGVybW9zdCBzdmcgZWxlbWVudCwgb3IgYSDigJhmb3JlaWduT2JqZWN04oCZLCDi
gJhpbWFnZeKAmSwg4oCYbWFya2Vy4oCZLCDigJhtYXNr4oCZLCDigJhwYXR0ZXJu4oCZLCDigJhz
eW1ib2zigJkgb3Ig4oCYdXNl4oCZIGVsZW1lbnQKKyAgICAvLyAtIHRoZSBlbGVtZW50IGlzIGFu
IGlubmVyIOKAmHN2Z+KAmSBlbGVtZW50IGFuZCB0aGUgY29tcHV0ZWQgdmFsdWUgb2YgaXRzIOKA
mG92ZXJmbG934oCZIHByb3BlcnR5IGlzIGEgdmFsdWUgb3RoZXIgdGhhbiB2aXNpYmxlCisgICAg
Ly8gLSB0aGUgZWxlbWVudCBpcyBzdWJqZWN0IHRvIGV4cGxpY2l0IGNsaXBwaW5nOgorICAgIC8v
ICAgLSB0aGUg4oCYY2xpcOKAmSBwcm9wZXJ0eSBhcHBsaWVzIHRvIHRoZSBlbGVtZW50IGFuZCBp
dCBoYXMgYSBjb21wdXRlZCB2YWx1ZSBvdGhlciB0aGFuIGF1dG8KKyAgICAvLyAgIC0gdGhlIOKA
mGNsaXAtcGF0aOKAmSBwcm9wZXJ0eSBhcHBsaWVzIHRvIHRoZSBlbGVtZW50IGFuZCBpdCBoYXMg
YSBjb21wdXRlZCB2YWx1ZSBvdGhlciB0aGFuIG5vbmUKKyAgICAvLyAtIHRoZSDigJhtYXNr4oCZ
IHByb3BlcnR5IGFwcGxpZXMgdG8gdGhlIGVsZW1lbnQgYW5kIGl0IGhhcyBhIGNvbXB1dGVkIHZh
bHVlIG90aGVyIHRoYW4gbm9uZQorICAgIC8vIC0gdGhlIOKAmGZpbHRlcuKAmSBwcm9wZXJ0eSBh
cHBsaWVzIHRvIHRoZSBlbGVtZW50IGFuZCBpdCBoYXMgYSBjb21wdXRlZCB2YWx1ZSBvdGhlciB0
aGFuIG5vbmUKKyAgICAvLyAtIGEgcHJvcGVydHkgZGVmaW5lZCBpbiBhbm90aGVyIHNwZWNpZmlj
YXRpb24gaXMgYXBwbGllZCBhbmQgdGhhdCBwcm9wZXJ0eSBpcyBkZWZpbmVkIHRvIGVzdGFibGlz
aCBhIHN0YWNraW5nIGNvbnRleHQgaW4gU1ZHCisgICAgLy8KKyAgICAvLyBTb21lIG9mIHRoZSBy
dWxlcyBhYm92ZSB3ZXJlIGFscmVhZHkgZW5mb3JjZWQgaW4gU3R5bGVSZXNvbHZlcjo6YWRqdXN0
UmVuZGVyU3R5bGUoKSAtIGZvciB0aG9zZSBjYXNlcyBhc3NlcnRpb25zIHdlcmUgYWRkZWQuCisg
ICAgaWYgKHN2Z0VsZW1lbnQuZG9jdW1lbnQoKS5zZXR0aW5ncygpLmxheWVyQmFzZWRTVkdFbmdp
bmVFbmFibGVkKCkgJiYgc3R5bGUuaGFzQXV0b1VzZWRaSW5kZXgoKSkgeworICAgICAgICAvLyBh
ZGp1c3RSZW5kZXJTdHlsZSgpIGhhcyBhbHJlYWR5IGFzc2lnbmVkIGEgei1pbmRleCBvZiAwIGlm
IGNsaXAgLyBmaWx0ZXIgaXMgcHJlc2VudCBvciB0aGUgZWxlbWVudCBpcyB0aGUgcm9vdCBlbGVt
ZW50LgorICAgICAgICBBU1NFUlQoIXN0eWxlLmhhc0NsaXAoKSk7CisgICAgICAgIEFTU0VSVCgh
c3R5bGUuY2xpcFBhdGgoKSk7CisgICAgICAgIEFTU0VSVCghc3R5bGUuaGFzRmlsdGVyKCkpOwor
ICAgICAgICBBU1NFUlQoIXN2Z0VsZW1lbnQuaXNPdXRlcm1vc3RTVkdTVkdFbGVtZW50KCkpOwor
CisgICAgICAgIGF1dG8gaXNJbm5lclNWR0VsZW1lbnQgPSBbXSAoY29uc3QgU1ZHRWxlbWVudCYg
c3ZnRWxlbWVudCkgLT4gYm9vbCB7CisgICAgICAgICAgICByZXR1cm4gc3ZnRWxlbWVudC5oYXNU
YWdOYW1lKFNWR05hbWVzOjpzdmdUYWcpICYmIHN2Z0VsZW1lbnQucGFyZW50Tm9kZSgpICYmIGlz
PFNWR0VsZW1lbnQ+KHN2Z0VsZW1lbnQucGFyZW50Tm9kZSgpKTsKKyAgICAgICAgfTsKKworICAg
ICAgICBpZiAoc3ZnRWxlbWVudC5oYXNUYWdOYW1lKFNWR05hbWVzOjpmb3JlaWduT2JqZWN0VGFn
KQorICAgICAgICAgICAgfHwgc3ZnRWxlbWVudC5oYXNUYWdOYW1lKFNWR05hbWVzOjppbWFnZVRh
ZykKKyAgICAgICAgICAgIHx8IHN2Z0VsZW1lbnQuaGFzVGFnTmFtZShTVkdOYW1lczo6bWFya2Vy
VGFnKQorICAgICAgICAgICAgfHwgc3ZnRWxlbWVudC5oYXNUYWdOYW1lKFNWR05hbWVzOjptYXNr
VGFnKQorICAgICAgICAgICAgfHwgc3ZnRWxlbWVudC5oYXNUYWdOYW1lKFNWR05hbWVzOjpwYXR0
ZXJuVGFnKQorICAgICAgICAgICAgfHwgc3ZnRWxlbWVudC5oYXNUYWdOYW1lKFNWR05hbWVzOjpz
eW1ib2xUYWcpCisgICAgICAgICAgICB8fCBzdmdFbGVtZW50Lmhhc1RhZ05hbWUoU1ZHTmFtZXM6
OnVzZVRhZykKKyAgICAgICAgICAgIHx8IChpc0lubmVyU1ZHRWxlbWVudChzdmdFbGVtZW50KSAm
JiAoc3R5bGUub3ZlcmZsb3dYKCkgIT0gT3ZlcmZsb3c6OlZpc2libGUgfHwgc3R5bGUub3ZlcmZs
b3dZKCkgIT0gT3ZlcmZsb3c6OlZpc2libGUpKQorICAgICAgICAgICAgfHwgc3R5bGUuaGFzUG9z
aXRpb25lZE1hc2soKSkKKyAgICAgICAgc3R5bGUuc2V0VXNlZFpJbmRleCgwKTsKKyAgICB9Cisj
ZW5kaWYKKworICAgIC8vIChMZWdhY3kpUmVuZGVyU1ZHUm9vdCBoYW5kbGVzIHpvb21pbmcgZm9y
IHRoZSB3aG9sZSBTVkcgc3VidHJlZSwgc28gZm9yZWlnbk9iamVjdCBjb250ZW50IHNob3VsZAog
ICAgIC8vIG5vdCBiZSBzY2FsZWQgYWdhaW4uCiAgICAgaWYgKHN2Z0VsZW1lbnQuaGFzVGFnTmFt
ZShTVkdOYW1lczo6Zm9yZWlnbk9iamVjdFRhZykpCiAgICAgICAgIHN0eWxlLnNldEVmZmVjdGl2
ZVpvb20oUmVuZGVyU3R5bGU6OmluaXRpYWxab29tKCkpOwo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>452343</attachid>
            <date>2022-02-17 03:23:23 -0800</date>
            <delta_ts>2022-02-21 05:24:16 -0800</delta_ts>
            <desc>Patch, v2</desc>
            <filename>bug-236193-20220217032322.patch</filename>
            <type>text/plain</type>
            <size>5438</size>
            <attacher name="Nikolas Zimmermann">zimmermann</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjkwMDA4CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMjcwOTQxNDQzOGM2ZDgw
YTc1NjI4MTZhNGY1MzNkMTI1NTU3YzhkMC4uZTE3MWFjZTFkOTUyNWRhNDA3ODAyNzE3OWQ2Y2Zj
YWZjNzdkOGM0OCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI3IEBACisyMDIyLTAyLTE3ICBOaWtv
bGFzIFppbW1lcm1hbm4gIDxuemltbWVybWFubkBpZ2FsaWEuY29tPgorCisgICAgICAgIFtMQlNF
XSBJbXBsZW1lbnQgU1ZHMiBydWxlcyB0byBlc3RhYmxpc2ggYSBzdGFja2luZyBjb250ZXh0Cisg
ICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMzYxOTMKKwor
ICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBGb2xsb3cgdGhl
IHJ1bGVzIHNwZWNpZmllZCBpbiBodHRwczovL3d3dy53My5vcmcvVFIvU1ZHMi9yZW5kZXIuaHRt
bCNSZW5kZXJpbmdPcmRlciwKKyAgICAgICAgd2hlbiB0byBjcmVhdGUgYSBzdGFja2luZyBjb250
ZXh0LiBUaGlzIGlzIG5lY2Vzc2FyeSB0byBlbmZvcmNlIGxheWVyIGNyZWF0aW9uLgorCisgICAg
ICAgIFVubGlrZSBTVkcgMS4xLCBTVkcyIGRlZmluZXMgaXRzIHdob2xlIHJlbmRlcmluZyBtb2Rl
bCwgYXMgd2VsbCBhcyBwYWludGluZyBvcGVyYXRpb25zCisgICAgICAgIHN1Y2ggYXMgbWFza2lu
Zy9jbGlwcGluZyBhcm91bmQgdGhlICdzdGFja2luZy1jb250ZXh0JyB0ZXJtIHRoYXQgc3RlbXMg
ZnJvbSBDU1MuCisgICAgICAgIFRoZSBkZWZpbml0aW9uIGlzIGJhY2t3YXJkcyBjb21wYXRpYmxl
IHdpdGggU1ZHIDEuMSwgZXhjZXB0IGZvciB1bi1zcGVjJ2VkIHRlcnJpdG9yeQorICAgICAgICBt
aXNzaW5nIGZyb20gU1ZHIDEuMSwgdGhhdCdzIG5vdyBzcGVjaWZpZWQgZm9yIFNWRzIgKGUuZy4g
PGZvcmVpZ25PYmplY3Q+ICsgc3RhY2tpbmcgY29udGV4dCkuCisKKyAgICAgICAgTEJTRSBoYW5k
bGVzIGNsaXBwaW5nIC8gbWFza2luZyAvIGV0Yy4gdmlhIFJlbmRlckxheWVyLCB3aGljaCBpcyBh
bHNvIHJlc3BvbnNiaWxlIGZvcgorICAgICAgICBmb3Igc3RhY2tpbmctY29udGV4dCBtYW5hZ21l
bnQuIFRoZXJlZm9yZSB3ZSBuZWVkIHRvIGZvbGxvdyB0aGUgZXhpc3RpbmcgcnVsZXMgdG8gZW5m
b3JjZQorICAgICAgICBhIHN0YWNraW5nIGNvbnRleHQgLyBSZW5kZXJMYXllciBjcmVhdGlvbiBp
biBTdHlsZUFkanVzdGVyLCBieSBlbmZvcmNpbmcgYSBub24tYXV0byAndXNlZCB6LWluZGV4Jy4K
KworICAgICAgICBDb3ZlcmVkIGJ5IGV4aXN0aW5nIHRlc3RzLCBubyBjaGFuZ2UgaW4gYmVoYXZp
b3VyLgorCisgICAgICAgICogc3R5bGUvU3R5bGVBZGp1c3Rlci5jcHA6CisgICAgICAgIChXZWJD
b3JlOjpTdHlsZTo6QWRqdXN0ZXI6OmFkanVzdFNWR0VsZW1lbnRTdHlsZSk6CisKIDIwMjItMDIt
MTcgIE5pa29sYXMgWmltbWVybWFubiAgPG56aW1tZXJtYW5uQGlnYWxpYS5jb20+CiAKICAgICAg
ICAgW0xCU0VdIEFwcGx5IFNWRyBzcGVjaWZpYyBjaGFuZ2VzIHRvIFJlbmRlckxheWVyIHBhaW50
aW5nCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9zdHlsZS9TdHlsZUFkanVzdGVyLmNwcCBi
L1NvdXJjZS9XZWJDb3JlL3N0eWxlL1N0eWxlQWRqdXN0ZXIuY3BwCmluZGV4IGU2ODExNTczNWU5
YzY5YWMyNGU2YjQ0NTUxNDdiNDYxYmM1NGFlZmIuLjA3MDMwZDdmODcxZjNjNTQ3YTRlMjZkZmNl
YWRlNWQxMzAyOWUyNWIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3N0eWxlL1N0eWxlQWRq
dXN0ZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3N0eWxlL1N0eWxlQWRqdXN0ZXIuY3BwCkBA
IC05LDcgKzksNyBAQAogICogQ29weXJpZ2h0IChjKSAyMDExLCBDb2RlIEF1cm9yYSBGb3J1bS4g
QWxsIHJpZ2h0cyByZXNlcnZlZC4KICAqIENvcHlyaWdodCAoQykgUmVzZWFyY2ggSW4gTW90aW9u
IExpbWl0ZWQgMjAxMS4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KICAqIENvcHlyaWdodCAoQykgMjAx
MiwgMjAxMyBHb29nbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgotICogQ29weXJpZ2h0IChD
KSAyMDE0IElnYWxpYSBTLkwuCisgKiBDb3B5cmlnaHQgKEMpIDIwMTQsIDIwMjAsIDIwMjIgSWdh
bGlhIFMuTC4KICAqCiAgKiBUaGlzIGxpYnJhcnkgaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiBy
ZWRpc3RyaWJ1dGUgaXQgYW5kL29yCiAgKiBtb2RpZnkgaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRo
ZSBHTlUgTGlicmFyeSBHZW5lcmFsIFB1YmxpYwpAQCAtNjMyLDcgKzYzMiw0NSBAQCB2b2lkIEFk
anVzdGVyOjphZGp1c3RTVkdFbGVtZW50U3R5bGUoUmVuZGVyU3R5bGUmIHN0eWxlLCBjb25zdCBT
VkdFbGVtZW50JiBzdmdFbAogICAgIGlmICghaXNQb3NpdGlvbmluZ0FsbG93ZWQpCiAgICAgICAg
IHN0eWxlLnNldFBvc2l0aW9uKFJlbmRlclN0eWxlOjppbml0aWFsUG9zaXRpb24oKSk7CiAKLSAg
ICAvLyBMZWdhY3lSZW5kZXJTVkdSb290IGhhbmRsZXMgem9vbWluZyBmb3IgdGhlIHdob2xlIFNW
RyBzdWJ0cmVlLCBzbyBmb3JlaWduT2JqZWN0IGNvbnRlbnQgc2hvdWxkCisjaWYgRU5BQkxFKExB
WUVSX0JBU0VEX1NWR19FTkdJTkUpCisgICAgLy8gU1ZHMjogQSBuZXcgc3RhY2tpbmcgY29udGV4
dCBtdXN0IGJlIGVzdGFibGlzaGVkIGF0IGFuIFNWRyBlbGVtZW50IGZvciBpdHMgZGVzY2VuZGFu
dHMgaWY6CisgICAgLy8gLSBpdCBpcyB0aGUgcm9vdCBlbGVtZW50CisgICAgLy8gLSB0aGUgInot
aW5kZXgiIHByb3BlcnR5IGFwcGxpZXMgdG8gdGhlIGVsZW1lbnQgYW5kIGl0cyBjb21wdXRlZCB2
YWx1ZSBpcyBhbiBpbnRlZ2VyCisgICAgLy8gLSB0aGUgZWxlbWVudCBpcyBhbiBvdXRlcm1vc3Qg
c3ZnIGVsZW1lbnQsIG9yIGEgImZvcmVpZ25PYmplY3QiLCAiaW1hZ2UiLCAibWFya2VyIiwgIm1h
c2siLCAicGF0dGVybiIsICJzeW1ib2wiIG9yICJ1c2UiIGVsZW1lbnQKKyAgICAvLyAtIHRoZSBl
bGVtZW50IGlzIGFuIGlubmVyICJzdmciIGVsZW1lbnQgYW5kIHRoZSBjb21wdXRlZCB2YWx1ZSBv
ZiBpdHMgIm92ZXJmbG93IiBwcm9wZXJ0eSBpcyBhIHZhbHVlIG90aGVyIHRoYW4gdmlzaWJsZQor
ICAgIC8vIC0gdGhlIGVsZW1lbnQgaXMgc3ViamVjdCB0byBleHBsaWNpdCBjbGlwcGluZzoKKyAg
ICAvLyAgIC0gdGhlICJjbGlwIiBwcm9wZXJ0eSBhcHBsaWVzIHRvIHRoZSBlbGVtZW50IGFuZCBp
dCBoYXMgYSBjb21wdXRlZCB2YWx1ZSBvdGhlciB0aGFuIGF1dG8KKyAgICAvLyAgIC0gdGhlICJj
bGlwLXBhdGgiIHByb3BlcnR5IGFwcGxpZXMgdG8gdGhlIGVsZW1lbnQgYW5kIGl0IGhhcyBhIGNv
bXB1dGVkIHZhbHVlIG90aGVyIHRoYW4gbm9uZQorICAgIC8vIC0gdGhlICJtYXNrIiBwcm9wZXJ0
eSBhcHBsaWVzIHRvIHRoZSBlbGVtZW50IGFuZCBpdCBoYXMgYSBjb21wdXRlZCB2YWx1ZSBvdGhl
ciB0aGFuIG5vbmUKKyAgICAvLyAtIHRoZSAiZmlsdGVyIiBwcm9wZXJ0eSBhcHBsaWVzIHRvIHRo
ZSBlbGVtZW50IGFuZCBpdCBoYXMgYSBjb21wdXRlZCB2YWx1ZSBvdGhlciB0aGFuIG5vbmUKKyAg
ICAvLyAtIGEgcHJvcGVydHkgZGVmaW5lZCBpbiBhbm90aGVyIHNwZWNpZmljYXRpb24gaXMgYXBw
bGllZCBhbmQgdGhhdCBwcm9wZXJ0eSBpcyBkZWZpbmVkIHRvIGVzdGFibGlzaCBhIHN0YWNraW5n
IGNvbnRleHQgaW4gU1ZHCisgICAgLy8KKyAgICAvLyBTb21lIG9mIHRoZSBydWxlcyBhYm92ZSB3
ZXJlIGFscmVhZHkgZW5mb3JjZWQgaW4gU3R5bGVSZXNvbHZlcjo6YWRqdXN0UmVuZGVyU3R5bGUo
KSAtIGZvciB0aG9zZSBjYXNlcyBhc3NlcnRpb25zIHdlcmUgYWRkZWQuCisgICAgaWYgKHN2Z0Vs
ZW1lbnQuZG9jdW1lbnQoKS5zZXR0aW5ncygpLmxheWVyQmFzZWRTVkdFbmdpbmVFbmFibGVkKCkg
JiYgc3R5bGUuaGFzQXV0b1VzZWRaSW5kZXgoKSkgeworICAgICAgICAvLyBhZGp1c3RSZW5kZXJT
dHlsZSgpIGhhcyBhbHJlYWR5IGFzc2lnbmVkIGEgei1pbmRleCBvZiAwIGlmIGNsaXAgLyBmaWx0
ZXIgaXMgcHJlc2VudCBvciB0aGUgZWxlbWVudCBpcyB0aGUgcm9vdCBlbGVtZW50LgorICAgICAg
ICBBU1NFUlQoIXN0eWxlLmhhc0NsaXAoKSk7CisgICAgICAgIEFTU0VSVCghc3R5bGUuY2xpcFBh
dGgoKSk7CisgICAgICAgIEFTU0VSVCghc3R5bGUuaGFzRmlsdGVyKCkpOworICAgICAgICBBU1NF
UlQoIXN2Z0VsZW1lbnQuaXNPdXRlcm1vc3RTVkdTVkdFbGVtZW50KCkpOworCisgICAgICAgIGF1
dG8gaXNJbm5lclNWR0VsZW1lbnQgPSBbXSAoY29uc3QgU1ZHRWxlbWVudCYgc3ZnRWxlbWVudCkg
LT4gYm9vbCB7CisgICAgICAgICAgICByZXR1cm4gc3ZnRWxlbWVudC5oYXNUYWdOYW1lKFNWR05h
bWVzOjpzdmdUYWcpICYmIHN2Z0VsZW1lbnQucGFyZW50Tm9kZSgpICYmIGlzPFNWR0VsZW1lbnQ+
KHN2Z0VsZW1lbnQucGFyZW50Tm9kZSgpKTsKKyAgICAgICAgfTsKKworICAgICAgICBpZiAoc3Zn
RWxlbWVudC5oYXNUYWdOYW1lKFNWR05hbWVzOjpmb3JlaWduT2JqZWN0VGFnKQorICAgICAgICAg
ICAgfHwgc3ZnRWxlbWVudC5oYXNUYWdOYW1lKFNWR05hbWVzOjppbWFnZVRhZykKKyAgICAgICAg
ICAgIHx8IHN2Z0VsZW1lbnQuaGFzVGFnTmFtZShTVkdOYW1lczo6bWFya2VyVGFnKQorICAgICAg
ICAgICAgfHwgc3ZnRWxlbWVudC5oYXNUYWdOYW1lKFNWR05hbWVzOjptYXNrVGFnKQorICAgICAg
ICAgICAgfHwgc3ZnRWxlbWVudC5oYXNUYWdOYW1lKFNWR05hbWVzOjpwYXR0ZXJuVGFnKQorICAg
ICAgICAgICAgfHwgc3ZnRWxlbWVudC5oYXNUYWdOYW1lKFNWR05hbWVzOjpzeW1ib2xUYWcpCisg
ICAgICAgICAgICB8fCBzdmdFbGVtZW50Lmhhc1RhZ05hbWUoU1ZHTmFtZXM6OnVzZVRhZykKKyAg
ICAgICAgICAgIHx8IChpc0lubmVyU1ZHRWxlbWVudChzdmdFbGVtZW50KSAmJiAoc3R5bGUub3Zl
cmZsb3dYKCkgIT0gT3ZlcmZsb3c6OlZpc2libGUgfHwgc3R5bGUub3ZlcmZsb3dZKCkgIT0gT3Zl
cmZsb3c6OlZpc2libGUpKQorICAgICAgICAgICAgfHwgc3R5bGUuaGFzUG9zaXRpb25lZE1hc2so
KSkKKyAgICAgICAgc3R5bGUuc2V0VXNlZFpJbmRleCgwKTsKKyAgICB9CisjZW5kaWYKKworICAg
IC8vIChMZWdhY3kpUmVuZGVyU1ZHUm9vdCBoYW5kbGVzIHpvb21pbmcgZm9yIHRoZSB3aG9sZSBT
Vkcgc3VidHJlZSwgc28gZm9yZWlnbk9iamVjdCBjb250ZW50IHNob3VsZAogICAgIC8vIG5vdCBi
ZSBzY2FsZWQgYWdhaW4uCiAgICAgaWYgKHN2Z0VsZW1lbnQuaGFzVGFnTmFtZShTVkdOYW1lczo6
Zm9yZWlnbk9iamVjdFRhZykpCiAgICAgICAgIHN0eWxlLnNldEVmZmVjdGl2ZVpvb20oUmVuZGVy
U3R5bGU6OmluaXRpYWxab29tKCkpOwo=
</data>
<flag name="review"
          id="479348"
          type_id="1"
          status="+"
          setter="rbuis"
    />
          </attachment>
      

    </bug>

</bugzilla>