Bug 108665

Summary: SVGCircleElement, SVGRectElement, SVGSVGElement do not inherit from SVGElement
Product: WebKit Reporter: Zan Dobersek <zan>
Component: SVGAssignee: Nobody <webkit-unassigned>
Status: RESOLVED FIXED    
Severity: Normal CC: fmalita, krit, pdr, schenney, zimmermann
Priority: P2    
Version: 528+ (Nightly build)   
Hardware: Unspecified   
OS: Unspecified   
Bug Depends on: 107386    
Bug Blocks: 76198    

Description Zan Dobersek 2013-02-01 11:01:06 PST
SVGCircleElement, SVGRectElement and SVGSVGElement inherit from SVGStyledElement rather than SVGElement.

Evident from the error in the following IETC tests:
http://samples.msdn.microsoft.com/ietestcenter/dominheritance/Prototype_SVGCircleElement.htm
http://samples.msdn.microsoft.com/ietestcenter/dominheritance/Prototype_SVGRectElement.htm
http://samples.msdn.microsoft.com/ietestcenter/dominheritance/Prototype_SVGSVGElement.htm
Comment 1 Zan Dobersek 2013-02-02 04:53:37 PST
These tests seem to pass with Chromium 26.0.1386.0 and fail with Chromium 26.0.1397.2.
Comment 2 Philip Rogers 2013-02-02 15:03:43 PST
Thank you for taking the time to file this. Do you know of sites that are affected by this, beyond the ietestcenter tests?


I regressed this with http://trac.webkit.org/changeset/140265.

SVG2 makes all elements stylable but that refactoring was not feasible in a single patch. Therefore, we're attacking this in two steps:
1) Move these graphical elements from SVGStylable to SVGStyledElement. (r140265)
2) Merge SVGStyledElement into SVGElement. (https://bugs.webkit.org/show_bug.cgi?id=107386)

Until #2 is finished, we will fail these tests. I'm marking this as depending on wkbug.com/107386 for now. @Dirk, we should have another hackathon to fix this :)
Comment 3 Dirk Schulze 2014-07-12 22:53:02 PDT
(In reply to comment #2)
> Thank you for taking the time to file this. Do you know of sites that are affected by this, beyond the ietestcenter tests?
> 
> 
> I regressed this with http://trac.webkit.org/changeset/140265.
> 
> SVG2 makes all elements stylable but that refactoring was not feasible in a single patch. Therefore, we're attacking this in two steps:
> 1) Move these graphical elements from SVGStylable to SVGStyledElement. (r140265)
> 2) Merge SVGStyledElement into SVGElement. (https://bugs.webkit.org/show_bug.cgi?id=107386)
> 
> Until #2 is finished, we will fail these tests. I'm marking this as depending on wkbug.com/107386 for now. @Dirk, we should have another hackathon to fix this :)

This is fixed in Blink. Philip, did Blink merge SVGStyleElement into SVGElement, or did V8 create custom constructors?
Comment 4 Dirk Schulze 2014-07-12 22:57:08 PDT
(In reply to comment #3)
> (In reply to comment #2)
> > Thank you for taking the time to file this. Do you know of sites that are affected by this, beyond the ietestcenter tests?
> > 
> > 
> > I regressed this with http://trac.webkit.org/changeset/140265.
> > 
> > SVG2 makes all elements stylable but that refactoring was not feasible in a single patch. Therefore, we're attacking this in two steps:
> > 1) Move these graphical elements from SVGStylable to SVGStyledElement. (r140265)
> > 2) Merge SVGStyledElement into SVGElement. (https://bugs.webkit.org/show_bug.cgi?id=107386)
> > 
> > Until #2 is finished, we will fail these tests. I'm marking this as depending on wkbug.com/107386 for now. @Dirk, we should have another hackathon to fix this :)
> 
> This is fixed in Blink. Philip, did Blink merge SVGStyleElement into SVGElement, or did V8 create custom constructors?

Argh, was testing Safari release. We did merge them already :P Guess I mixed it up with something.
Comment 5 Dirk Schulze 2014-07-12 22:58:46 PDT
With SVG2 the prototype is SVGGraphicsElement. This is what the nightlies do right now.