Drop legacy SVGException type
authorcdumez@apple.com <cdumez@apple.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Fri, 21 Jul 2017 02:36:52 +0000 (02:36 +0000)
committercdumez@apple.com <cdumez@apple.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Fri, 21 Jul 2017 02:36:52 +0000 (02:36 +0000)
https://bugs.webkit.org/show_bug.cgi?id=174695

Reviewed by Darin Adler.

Source/WebCore:

Drop legacy SVGException type and use DOMException instead, as per the latest
SVG specification. Both Chrome and Firefox no longer expose the SVGException
type.

* CMakeLists.txt:
* DerivedSources.cpp:
* DerivedSources.make:
* WebCore.xcodeproj/project.pbxproj:
* bindings/js/JSDOMExceptionHandling.cpp:
(WebCore::createDOMException):
* bindings/js/JSExceptionBase.cpp:
(WebCore::toExceptionBase):
* dom/DOMExceptions.in:
* svg/SVGAllInOne.cpp:
* svg/SVGCircleElement.cpp:
* svg/SVGException.cpp: Removed.
* svg/SVGException.h: Removed.
* svg/SVGException.idl: Removed.
* svg/SVGGraphicsElement.idl:
* svg/SVGLocatable.cpp:
(WebCore::SVGLocatable::getTransformToElement):
* svg/SVGMatrixValue.h:
* svg/SVGPathSegList.cpp:
(WebCore::SVGPathSegList::getItem):
(WebCore::SVGPathSegList::replaceItem):
(WebCore::SVGPathSegList::removeItem):
* svg/SVGPathSegList.h:
* svg/SVGPathSegList.idl:
* svg/properties/SVGAnimatedEnumerationPropertyTearOff.h:
* svg/properties/SVGListProperty.h:

LayoutTests:

Update existing tests to reflect behavior change.

* fast/dom/Window/resources/window-properties.js:
* js/dom/global-constructors-attributes-expected.txt:
* platform/gtk/js/dom/global-constructors-attributes-expected.txt:
* platform/mac-elcapitan/js/dom/global-constructors-attributes-expected.txt:
* platform/mac-highsierra-wk1/js/dom/global-constructors-attributes-expected.txt:
* platform/mac-highsierra/js/dom/global-constructors-attributes-expected.txt:
* platform/mac-wk1/js/dom/global-constructors-attributes-expected.txt:
* platform/mac-yosemite/js/dom/global-constructors-attributes-expected.txt:
* platform/mac/js/dom/global-constructors-attributes-expected.txt:
* platform/win/js/dom/global-constructors-attributes-expected.txt:
* platform/wpe/js/dom/global-constructors-attributes-expected.txt:
* svg/animations/animate-marker-orient-from-angle-to-autostartreverse-expected.txt:
* svg/custom/SVGException-expected.txt: Removed.
* svg/custom/SVGException.html: Removed.
* svg/custom/global-constructors-expected.txt:
* svg/custom/global-constructors.html:
* svg/custom/js-svg-constructors-expected.txt:
* svg/custom/js-svg-constructors.svg:
* svg/dom/SVGAnimatedEnumeration-SVGClipPathElement-expected.txt:
* svg/dom/SVGAnimatedEnumeration-SVGComponentTransferFunctionElement-expected.txt:
* svg/dom/SVGAnimatedEnumeration-SVGFEBlendElement-expected.txt:
* svg/dom/SVGAnimatedEnumeration-SVGFEColorMatrixElement-expected.txt:
* svg/dom/SVGAnimatedEnumeration-SVGFEConvolveMatrixElement-expected.txt:
* svg/dom/SVGAnimatedEnumeration-SVGFEDisplacementMapElement-expected.txt:
* svg/dom/SVGAnimatedEnumeration-SVGFEMorphologyElement-expected.txt:
* svg/dom/SVGAnimatedEnumeration-SVGFETurbulenceElement-expected.txt:
* svg/dom/SVGAnimatedEnumeration-SVGFilterElement-expected.txt:
* svg/dom/SVGAnimatedEnumeration-SVGGradientElement-expected.txt:
* svg/dom/SVGAnimatedEnumeration-SVGMarkerElement-expected.txt:
* svg/dom/SVGAnimatedEnumeration-SVGMaskElement-expected.txt:
* svg/dom/SVGAnimatedEnumeration-SVGPatternElement-expected.txt:
* svg/dom/SVGAnimatedEnumeration-SVGTextContentElement-expected.txt:
* svg/dom/SVGAnimatedEnumeration-SVGTextPathElement-expected.txt:
* svg/dom/SVGAnimatedEnumeration-expected.txt:
* svg/dom/SVGException-obsolete-expected.txt: Added.
* svg/dom/SVGException-obsolete.html: Added.
* svg/dom/SVGMatrix-interface-expected.txt:
* svg/dom/svglist-exception-on-out-bounds-error-expected.txt:
* svg/filters/feBlend-invalid-mode-expected.txt:
* svg/filters/feComponentTransfer-style-crash-expected.txt:
* svg/filters/feDisplacementMap-crash-test-expected.txt:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@219712 268f45cc-cd09-0410-ab3c-d52691b4dbfc

70 files changed:
LayoutTests/ChangeLog
LayoutTests/fast/dom/Window/resources/window-properties.js
LayoutTests/fast/dom/Window/window-lookup-precedence-expected.txt
LayoutTests/js/dom/global-constructors-attributes-expected.txt
LayoutTests/platform/gtk/fast/dom/Window/window-lookup-precedence-expected.txt
LayoutTests/platform/gtk/js/dom/global-constructors-attributes-expected.txt
LayoutTests/platform/mac-elcapitan/js/dom/global-constructors-attributes-expected.txt
LayoutTests/platform/mac-highsierra-wk1/js/dom/global-constructors-attributes-expected.txt
LayoutTests/platform/mac-highsierra/js/dom/global-constructors-attributes-expected.txt
LayoutTests/platform/mac-wk1/js/dom/global-constructors-attributes-expected.txt
LayoutTests/platform/mac-yosemite/js/dom/global-constructors-attributes-expected.txt
LayoutTests/platform/mac/fast/dom/Window/window-lookup-precedence-expected.txt
LayoutTests/platform/mac/js/dom/global-constructors-attributes-expected.txt
LayoutTests/platform/win/js/dom/global-constructors-attributes-expected.txt
LayoutTests/platform/wpe/js/dom/global-constructors-attributes-expected.txt
LayoutTests/svg/animations/animate-marker-orient-from-angle-to-autostartreverse-expected.txt
LayoutTests/svg/custom/SVGException-expected.txt [deleted file]
LayoutTests/svg/custom/SVGException.html [deleted file]
LayoutTests/svg/custom/global-constructors-expected.txt
LayoutTests/svg/custom/global-constructors.html
LayoutTests/svg/custom/js-svg-constructors-expected.txt
LayoutTests/svg/custom/js-svg-constructors.svg
LayoutTests/svg/dom/SVGAnimatedEnumeration-SVGClipPathElement-expected.txt
LayoutTests/svg/dom/SVGAnimatedEnumeration-SVGComponentTransferFunctionElement-expected.txt
LayoutTests/svg/dom/SVGAnimatedEnumeration-SVGFEBlendElement-expected.txt
LayoutTests/svg/dom/SVGAnimatedEnumeration-SVGFEColorMatrixElement-expected.txt
LayoutTests/svg/dom/SVGAnimatedEnumeration-SVGFECompositeElement-expected.txt
LayoutTests/svg/dom/SVGAnimatedEnumeration-SVGFEConvolveMatrixElement-expected.txt
LayoutTests/svg/dom/SVGAnimatedEnumeration-SVGFEDisplacementMapElement-expected.txt
LayoutTests/svg/dom/SVGAnimatedEnumeration-SVGFEMorphologyElement-expected.txt
LayoutTests/svg/dom/SVGAnimatedEnumeration-SVGFETurbulenceElement-expected.txt
LayoutTests/svg/dom/SVGAnimatedEnumeration-SVGFilterElement-expected.txt
LayoutTests/svg/dom/SVGAnimatedEnumeration-SVGGradientElement-expected.txt
LayoutTests/svg/dom/SVGAnimatedEnumeration-SVGMarkerElement-expected.txt
LayoutTests/svg/dom/SVGAnimatedEnumeration-SVGMaskElement-expected.txt
LayoutTests/svg/dom/SVGAnimatedEnumeration-SVGPatternElement-expected.txt
LayoutTests/svg/dom/SVGAnimatedEnumeration-SVGTextContentElement-expected.txt
LayoutTests/svg/dom/SVGAnimatedEnumeration-SVGTextPathElement-expected.txt
LayoutTests/svg/dom/SVGAnimatedEnumeration-expected.txt
LayoutTests/svg/dom/SVGException-obsolete-expected.txt [new file with mode: 0644]
LayoutTests/svg/dom/SVGException-obsolete.html [new file with mode: 0644]
LayoutTests/svg/dom/SVGMatrix-interface-expected.txt
LayoutTests/svg/dom/svglist-exception-on-out-bounds-error-expected.txt
LayoutTests/svg/filters/feBlend-invalid-mode-expected.txt
LayoutTests/svg/filters/feComponentTransfer-style-crash-expected.txt
LayoutTests/svg/filters/feDisplacementMap-crash-test-expected.txt
Source/WebCore/.gitattributes
Source/WebCore/CMakeLists.txt
Source/WebCore/ChangeLog
Source/WebCore/DerivedSources.cpp
Source/WebCore/DerivedSources.make
Source/WebCore/WebCore.xcodeproj/project.pbxproj
Source/WebCore/bindings/js/JSBindingsAllInOne.cpp
Source/WebCore/bindings/js/JSDOMExceptionHandling.cpp
Source/WebCore/bindings/js/JSExceptionBase.cpp [deleted file]
Source/WebCore/bindings/js/JSExceptionBase.h [deleted file]
Source/WebCore/dom/DOMExceptions.in
Source/WebCore/svg/SVGAllInOne.cpp
Source/WebCore/svg/SVGCircleElement.cpp
Source/WebCore/svg/SVGException.cpp [deleted file]
Source/WebCore/svg/SVGException.h [deleted file]
Source/WebCore/svg/SVGException.idl [deleted file]
Source/WebCore/svg/SVGGraphicsElement.idl
Source/WebCore/svg/SVGLocatable.cpp
Source/WebCore/svg/SVGMatrixValue.h
Source/WebCore/svg/SVGPathSegList.cpp
Source/WebCore/svg/SVGPathSegList.h
Source/WebCore/svg/SVGPathSegList.idl
Source/WebCore/svg/properties/SVGAnimatedEnumerationPropertyTearOff.h
Source/WebCore/svg/properties/SVGListProperty.h

index f9f4a43..4d3a7da 100644 (file)
@@ -1,3 +1,54 @@
+2017-07-20  Chris Dumez  <cdumez@apple.com>
+
+        Drop legacy SVGException type
+        https://bugs.webkit.org/show_bug.cgi?id=174695
+
+        Reviewed by Darin Adler.
+
+        Update existing tests to reflect behavior change.
+
+        * fast/dom/Window/resources/window-properties.js:
+        * js/dom/global-constructors-attributes-expected.txt:
+        * platform/gtk/js/dom/global-constructors-attributes-expected.txt:
+        * platform/mac-elcapitan/js/dom/global-constructors-attributes-expected.txt:
+        * platform/mac-highsierra-wk1/js/dom/global-constructors-attributes-expected.txt:
+        * platform/mac-highsierra/js/dom/global-constructors-attributes-expected.txt:
+        * platform/mac-wk1/js/dom/global-constructors-attributes-expected.txt:
+        * platform/mac-yosemite/js/dom/global-constructors-attributes-expected.txt:
+        * platform/mac/js/dom/global-constructors-attributes-expected.txt:
+        * platform/win/js/dom/global-constructors-attributes-expected.txt:
+        * platform/wpe/js/dom/global-constructors-attributes-expected.txt:
+        * svg/animations/animate-marker-orient-from-angle-to-autostartreverse-expected.txt:
+        * svg/custom/SVGException-expected.txt: Removed.
+        * svg/custom/SVGException.html: Removed.
+        * svg/custom/global-constructors-expected.txt:
+        * svg/custom/global-constructors.html:
+        * svg/custom/js-svg-constructors-expected.txt:
+        * svg/custom/js-svg-constructors.svg:
+        * svg/dom/SVGAnimatedEnumeration-SVGClipPathElement-expected.txt:
+        * svg/dom/SVGAnimatedEnumeration-SVGComponentTransferFunctionElement-expected.txt:
+        * svg/dom/SVGAnimatedEnumeration-SVGFEBlendElement-expected.txt:
+        * svg/dom/SVGAnimatedEnumeration-SVGFEColorMatrixElement-expected.txt:
+        * svg/dom/SVGAnimatedEnumeration-SVGFEConvolveMatrixElement-expected.txt:
+        * svg/dom/SVGAnimatedEnumeration-SVGFEDisplacementMapElement-expected.txt:
+        * svg/dom/SVGAnimatedEnumeration-SVGFEMorphologyElement-expected.txt:
+        * svg/dom/SVGAnimatedEnumeration-SVGFETurbulenceElement-expected.txt:
+        * svg/dom/SVGAnimatedEnumeration-SVGFilterElement-expected.txt:
+        * svg/dom/SVGAnimatedEnumeration-SVGGradientElement-expected.txt:
+        * svg/dom/SVGAnimatedEnumeration-SVGMarkerElement-expected.txt:
+        * svg/dom/SVGAnimatedEnumeration-SVGMaskElement-expected.txt:
+        * svg/dom/SVGAnimatedEnumeration-SVGPatternElement-expected.txt:
+        * svg/dom/SVGAnimatedEnumeration-SVGTextContentElement-expected.txt:
+        * svg/dom/SVGAnimatedEnumeration-SVGTextPathElement-expected.txt:
+        * svg/dom/SVGAnimatedEnumeration-expected.txt:
+        * svg/dom/SVGException-obsolete-expected.txt: Added.
+        * svg/dom/SVGException-obsolete.html: Added.
+        * svg/dom/SVGMatrix-interface-expected.txt:
+        * svg/dom/svglist-exception-on-out-bounds-error-expected.txt:
+        * svg/filters/feBlend-invalid-mode-expected.txt:
+        * svg/filters/feComponentTransfer-style-crash-expected.txt:
+        * svg/filters/feDisplacementMap-crash-test-expected.txt:
+
 2017-07-20  Matt Lewis  <jlewis3@apple.com>
 
         Unreviewed, rolling out r219700.
index 539b954..fd30980 100644 (file)
@@ -127,7 +127,6 @@ var propertyInfo = [
     ["Range", "object"],
     ["Rect", "object"],
     ["SVGAngle", "object"],
-    ["SVGException", "object"],
     ["SVGGradientElement", "object"],
     ["SVGLength", "object"],
     ["SVGMarkerElement", "object"],
index 2825930..eaacfb6 100644 (file)
@@ -260,8 +260,6 @@ PASS win['SVGAngle'] == '[object SVGAngleConstructor]' is true
 PASS win['SVGAngle'] == '[object SVGAngleConstructor]' is true
 PASS win['SVGColor'] == '[object SVGColorConstructor]' is true
 PASS win['SVGColor'] == '[object SVGColorConstructor]' is true
-PASS win['SVGException'] == '[object SVGExceptionConstructor]' is true
-PASS win['SVGException'] == '[object SVGExceptionConstructor]' is true
 PASS win['SVGGradientElement'] == '[object SVGGradientElementConstructor]' is true
 PASS win['SVGGradientElement'] == '[object SVGGradientElementConstructor]' is true
 PASS win['SVGLength'] == '[object SVGLengthConstructor]' is true
index bf4b90f..333814e 100644 (file)
@@ -1223,11 +1223,6 @@ PASS Object.getOwnPropertyDescriptor(global, 'SVGEllipseElement').hasOwnProperty
 PASS Object.getOwnPropertyDescriptor(global, 'SVGEllipseElement').hasOwnProperty('set') is false
 PASS Object.getOwnPropertyDescriptor(global, 'SVGEllipseElement').enumerable is false
 PASS Object.getOwnPropertyDescriptor(global, 'SVGEllipseElement').configurable is true
-PASS Object.getOwnPropertyDescriptor(global, 'SVGException').value is SVGException
-PASS Object.getOwnPropertyDescriptor(global, 'SVGException').hasOwnProperty('get') is false
-PASS Object.getOwnPropertyDescriptor(global, 'SVGException').hasOwnProperty('set') is false
-PASS Object.getOwnPropertyDescriptor(global, 'SVGException').enumerable is false
-PASS Object.getOwnPropertyDescriptor(global, 'SVGException').configurable is true
 PASS Object.getOwnPropertyDescriptor(global, 'SVGFEBlendElement').value is SVGFEBlendElement
 PASS Object.getOwnPropertyDescriptor(global, 'SVGFEBlendElement').hasOwnProperty('get') is false
 PASS Object.getOwnPropertyDescriptor(global, 'SVGFEBlendElement').hasOwnProperty('set') is false
index 4838f06..64b5286 100644 (file)
@@ -258,8 +258,6 @@ PASS win['SVGAngle'] == '[object SVGAngleConstructor]' is true
 PASS win['SVGAngle'] == '[object SVGAngleConstructor]' is true
 PASS win['SVGColor'] == '[object SVGColorConstructor]' is true
 PASS win['SVGColor'] == '[object SVGColorConstructor]' is true
-PASS win['SVGException'] == '[object SVGExceptionConstructor]' is true
-PASS win['SVGException'] == '[object SVGExceptionConstructor]' is true
 PASS win['SVGGradientElement'] == '[object SVGGradientElementConstructor]' is true
 PASS win['SVGGradientElement'] == '[object SVGGradientElementConstructor]' is true
 PASS win['SVGLength'] == '[object SVGLengthConstructor]' is true
index c7fdb18..818cacd 100644 (file)
@@ -1528,11 +1528,6 @@ PASS Object.getOwnPropertyDescriptor(global, 'SVGEllipseElement').hasOwnProperty
 PASS Object.getOwnPropertyDescriptor(global, 'SVGEllipseElement').hasOwnProperty('set') is false
 PASS Object.getOwnPropertyDescriptor(global, 'SVGEllipseElement').enumerable is false
 PASS Object.getOwnPropertyDescriptor(global, 'SVGEllipseElement').configurable is true
-PASS Object.getOwnPropertyDescriptor(global, 'SVGException').value is SVGException
-PASS Object.getOwnPropertyDescriptor(global, 'SVGException').hasOwnProperty('get') is false
-PASS Object.getOwnPropertyDescriptor(global, 'SVGException').hasOwnProperty('set') is false
-PASS Object.getOwnPropertyDescriptor(global, 'SVGException').enumerable is false
-PASS Object.getOwnPropertyDescriptor(global, 'SVGException').configurable is true
 PASS Object.getOwnPropertyDescriptor(global, 'SVGFEBlendElement').value is SVGFEBlendElement
 PASS Object.getOwnPropertyDescriptor(global, 'SVGFEBlendElement').hasOwnProperty('get') is false
 PASS Object.getOwnPropertyDescriptor(global, 'SVGFEBlendElement').hasOwnProperty('set') is false
index 6cc0d5b..d43b228 100644 (file)
@@ -1548,11 +1548,6 @@ PASS Object.getOwnPropertyDescriptor(global, 'SVGEllipseElement').hasOwnProperty
 PASS Object.getOwnPropertyDescriptor(global, 'SVGEllipseElement').hasOwnProperty('set') is false
 PASS Object.getOwnPropertyDescriptor(global, 'SVGEllipseElement').enumerable is false
 PASS Object.getOwnPropertyDescriptor(global, 'SVGEllipseElement').configurable is true
-PASS Object.getOwnPropertyDescriptor(global, 'SVGException').value is SVGException
-PASS Object.getOwnPropertyDescriptor(global, 'SVGException').hasOwnProperty('get') is false
-PASS Object.getOwnPropertyDescriptor(global, 'SVGException').hasOwnProperty('set') is false
-PASS Object.getOwnPropertyDescriptor(global, 'SVGException').enumerable is false
-PASS Object.getOwnPropertyDescriptor(global, 'SVGException').configurable is true
 PASS Object.getOwnPropertyDescriptor(global, 'SVGFEBlendElement').value is SVGFEBlendElement
 PASS Object.getOwnPropertyDescriptor(global, 'SVGFEBlendElement').hasOwnProperty('get') is false
 PASS Object.getOwnPropertyDescriptor(global, 'SVGFEBlendElement').hasOwnProperty('set') is false
index 7afe280..1be2df1 100644 (file)
@@ -1553,11 +1553,6 @@ PASS Object.getOwnPropertyDescriptor(global, 'SVGEllipseElement').hasOwnProperty
 PASS Object.getOwnPropertyDescriptor(global, 'SVGEllipseElement').hasOwnProperty('set') is false
 PASS Object.getOwnPropertyDescriptor(global, 'SVGEllipseElement').enumerable is false
 PASS Object.getOwnPropertyDescriptor(global, 'SVGEllipseElement').configurable is true
-PASS Object.getOwnPropertyDescriptor(global, 'SVGException').value is SVGException
-PASS Object.getOwnPropertyDescriptor(global, 'SVGException').hasOwnProperty('get') is false
-PASS Object.getOwnPropertyDescriptor(global, 'SVGException').hasOwnProperty('set') is false
-PASS Object.getOwnPropertyDescriptor(global, 'SVGException').enumerable is false
-PASS Object.getOwnPropertyDescriptor(global, 'SVGException').configurable is true
 PASS Object.getOwnPropertyDescriptor(global, 'SVGFEBlendElement').value is SVGFEBlendElement
 PASS Object.getOwnPropertyDescriptor(global, 'SVGFEBlendElement').hasOwnProperty('get') is false
 PASS Object.getOwnPropertyDescriptor(global, 'SVGFEBlendElement').hasOwnProperty('set') is false
index da9c0cd..cc5acd8 100644 (file)
@@ -1558,11 +1558,6 @@ PASS Object.getOwnPropertyDescriptor(global, 'SVGEllipseElement').hasOwnProperty
 PASS Object.getOwnPropertyDescriptor(global, 'SVGEllipseElement').hasOwnProperty('set') is false
 PASS Object.getOwnPropertyDescriptor(global, 'SVGEllipseElement').enumerable is false
 PASS Object.getOwnPropertyDescriptor(global, 'SVGEllipseElement').configurable is true
-PASS Object.getOwnPropertyDescriptor(global, 'SVGException').value is SVGException
-PASS Object.getOwnPropertyDescriptor(global, 'SVGException').hasOwnProperty('get') is false
-PASS Object.getOwnPropertyDescriptor(global, 'SVGException').hasOwnProperty('set') is false
-PASS Object.getOwnPropertyDescriptor(global, 'SVGException').enumerable is false
-PASS Object.getOwnPropertyDescriptor(global, 'SVGException').configurable is true
 PASS Object.getOwnPropertyDescriptor(global, 'SVGFEBlendElement').value is SVGFEBlendElement
 PASS Object.getOwnPropertyDescriptor(global, 'SVGFEBlendElement').hasOwnProperty('get') is false
 PASS Object.getOwnPropertyDescriptor(global, 'SVGFEBlendElement').hasOwnProperty('set') is false
index 6cc0d5b..d43b228 100644 (file)
@@ -1548,11 +1548,6 @@ PASS Object.getOwnPropertyDescriptor(global, 'SVGEllipseElement').hasOwnProperty
 PASS Object.getOwnPropertyDescriptor(global, 'SVGEllipseElement').hasOwnProperty('set') is false
 PASS Object.getOwnPropertyDescriptor(global, 'SVGEllipseElement').enumerable is false
 PASS Object.getOwnPropertyDescriptor(global, 'SVGEllipseElement').configurable is true
-PASS Object.getOwnPropertyDescriptor(global, 'SVGException').value is SVGException
-PASS Object.getOwnPropertyDescriptor(global, 'SVGException').hasOwnProperty('get') is false
-PASS Object.getOwnPropertyDescriptor(global, 'SVGException').hasOwnProperty('set') is false
-PASS Object.getOwnPropertyDescriptor(global, 'SVGException').enumerable is false
-PASS Object.getOwnPropertyDescriptor(global, 'SVGException').configurable is true
 PASS Object.getOwnPropertyDescriptor(global, 'SVGFEBlendElement').value is SVGFEBlendElement
 PASS Object.getOwnPropertyDescriptor(global, 'SVGFEBlendElement').hasOwnProperty('get') is false
 PASS Object.getOwnPropertyDescriptor(global, 'SVGFEBlendElement').hasOwnProperty('set') is false
index d3a9ce2..582ff9d 100644 (file)
@@ -1518,11 +1518,6 @@ PASS Object.getOwnPropertyDescriptor(global, 'SVGEllipseElement').hasOwnProperty
 PASS Object.getOwnPropertyDescriptor(global, 'SVGEllipseElement').hasOwnProperty('set') is false
 PASS Object.getOwnPropertyDescriptor(global, 'SVGEllipseElement').enumerable is false
 PASS Object.getOwnPropertyDescriptor(global, 'SVGEllipseElement').configurable is true
-PASS Object.getOwnPropertyDescriptor(global, 'SVGException').value is SVGException
-PASS Object.getOwnPropertyDescriptor(global, 'SVGException').hasOwnProperty('get') is false
-PASS Object.getOwnPropertyDescriptor(global, 'SVGException').hasOwnProperty('set') is false
-PASS Object.getOwnPropertyDescriptor(global, 'SVGException').enumerable is false
-PASS Object.getOwnPropertyDescriptor(global, 'SVGException').configurable is true
 PASS Object.getOwnPropertyDescriptor(global, 'SVGFEBlendElement').value is SVGFEBlendElement
 PASS Object.getOwnPropertyDescriptor(global, 'SVGFEBlendElement').hasOwnProperty('get') is false
 PASS Object.getOwnPropertyDescriptor(global, 'SVGFEBlendElement').hasOwnProperty('set') is false
index 9330b61..9808869 100644 (file)
@@ -256,8 +256,6 @@ PASS 'function Rect() {    [native code]}' is 'function Rect() {    [native code
 PASS 'function Rect() {    [native code]}' is 'function Rect() {    [native code]}'
 PASS 'function SVGAngle() {    [native code]}' is 'function SVGAngle() {    [native code]}'
 PASS 'function SVGAngle() {    [native code]}' is 'function SVGAngle() {    [native code]}'
-PASS 'function SVGException() {    [native code]}' is 'function SVGException() {    [native code]}'
-PASS 'function SVGException() {    [native code]}' is 'function SVGException() {    [native code]}'
 PASS 'function SVGGradientElement() {    [native code]}' is 'function SVGGradientElement() {    [native code]}'
 PASS 'function SVGGradientElement() {    [native code]}' is 'function SVGGradientElement() {    [native code]}'
 PASS 'function SVGLength() {    [native code]}' is 'function SVGLength() {    [native code]}'
index f1ea444..4ddd26f 100644 (file)
@@ -1553,11 +1553,6 @@ PASS Object.getOwnPropertyDescriptor(global, 'SVGEllipseElement').hasOwnProperty
 PASS Object.getOwnPropertyDescriptor(global, 'SVGEllipseElement').hasOwnProperty('set') is false
 PASS Object.getOwnPropertyDescriptor(global, 'SVGEllipseElement').enumerable is false
 PASS Object.getOwnPropertyDescriptor(global, 'SVGEllipseElement').configurable is true
-PASS Object.getOwnPropertyDescriptor(global, 'SVGException').value is SVGException
-PASS Object.getOwnPropertyDescriptor(global, 'SVGException').hasOwnProperty('get') is false
-PASS Object.getOwnPropertyDescriptor(global, 'SVGException').hasOwnProperty('set') is false
-PASS Object.getOwnPropertyDescriptor(global, 'SVGException').enumerable is false
-PASS Object.getOwnPropertyDescriptor(global, 'SVGException').configurable is true
 PASS Object.getOwnPropertyDescriptor(global, 'SVGFEBlendElement').value is SVGFEBlendElement
 PASS Object.getOwnPropertyDescriptor(global, 'SVGFEBlendElement').hasOwnProperty('get') is false
 PASS Object.getOwnPropertyDescriptor(global, 'SVGFEBlendElement').hasOwnProperty('set') is false
index 0c46920..ea21e8a 100644 (file)
@@ -1138,11 +1138,6 @@ PASS Object.getOwnPropertyDescriptor(global, 'SVGEllipseElement').hasOwnProperty
 PASS Object.getOwnPropertyDescriptor(global, 'SVGEllipseElement').hasOwnProperty('set') is false
 PASS Object.getOwnPropertyDescriptor(global, 'SVGEllipseElement').enumerable is false
 PASS Object.getOwnPropertyDescriptor(global, 'SVGEllipseElement').configurable is true
-PASS Object.getOwnPropertyDescriptor(global, 'SVGException').value is SVGException
-PASS Object.getOwnPropertyDescriptor(global, 'SVGException').hasOwnProperty('get') is false
-PASS Object.getOwnPropertyDescriptor(global, 'SVGException').hasOwnProperty('set') is false
-PASS Object.getOwnPropertyDescriptor(global, 'SVGException').enumerable is false
-PASS Object.getOwnPropertyDescriptor(global, 'SVGException').configurable is true
 PASS Object.getOwnPropertyDescriptor(global, 'SVGFEBlendElement').value is SVGFEBlendElement
 PASS Object.getOwnPropertyDescriptor(global, 'SVGFEBlendElement').hasOwnProperty('get') is false
 PASS Object.getOwnPropertyDescriptor(global, 'SVGFEBlendElement').hasOwnProperty('set') is false
index a389658..5f441dc 100644 (file)
@@ -1458,11 +1458,6 @@ PASS Object.getOwnPropertyDescriptor(global, 'SVGEllipseElement').hasOwnProperty
 PASS Object.getOwnPropertyDescriptor(global, 'SVGEllipseElement').hasOwnProperty('set') is false
 PASS Object.getOwnPropertyDescriptor(global, 'SVGEllipseElement').enumerable is false
 PASS Object.getOwnPropertyDescriptor(global, 'SVGEllipseElement').configurable is true
-PASS Object.getOwnPropertyDescriptor(global, 'SVGException').value is SVGException
-PASS Object.getOwnPropertyDescriptor(global, 'SVGException').hasOwnProperty('get') is false
-PASS Object.getOwnPropertyDescriptor(global, 'SVGException').hasOwnProperty('set') is false
-PASS Object.getOwnPropertyDescriptor(global, 'SVGException').enumerable is false
-PASS Object.getOwnPropertyDescriptor(global, 'SVGException').configurable is true
 PASS Object.getOwnPropertyDescriptor(global, 'SVGFEBlendElement').value is SVGFEBlendElement
 PASS Object.getOwnPropertyDescriptor(global, 'SVGFEBlendElement').hasOwnProperty('get') is false
 PASS Object.getOwnPropertyDescriptor(global, 'SVGFEBlendElement').hasOwnProperty('set') is false
index 0abd0f9..3174211 100644 (file)
@@ -6,7 +6,7 @@ On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE
 
 
 PASS SVGMarkerElement.SVG_MARKER_ORIENT_AUTOSTARTREVERSE is undefined
-PASS marker.orientType.baseVal = 3 threw exception SVG_INVALID_VALUE_ERR (DOM SVG Exception 1): An invalid value was passed to an operation or assigned to an attribute..
+PASS marker.orientType.baseVal = 3 threw exception TypeError: Type error.
 PASS marker.orientAngle.animVal.value is 0
 PASS marker.orientAngle.baseVal.value is 0
 PASS marker.orientType.animVal is SVGMarkerElement.SVG_MARKER_ORIENT_ANGLE
diff --git a/LayoutTests/svg/custom/SVGException-expected.txt b/LayoutTests/svg/custom/SVGException-expected.txt
deleted file mode 100644 (file)
index 2cb4415..0000000
+++ /dev/null
@@ -1,20 +0,0 @@
-Tests the properties of the SVGException object.
-
-On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE".
-
-
-PASS e.toString() is "SVG_INVALID_VALUE_ERR (DOM SVG Exception 1): An invalid value was passed to an operation or assigned to an attribute."
-PASS Object.prototype.toString.call(e) is "[object SVGException]"
-PASS Object.prototype.toString.call(e.__proto__) is "[object SVGExceptionPrototype]"
-PASS e.constructor.toString() is "function SVGException() {\n    [native code]\n}"
-PASS e.constructor is window.SVGException
-PASS e.SVG_WRONG_TYPE_ERR is e.constructor.SVG_WRONG_TYPE_ERR
-PASS e.SVG_WRONG_TYPE_ERR is 0
-PASS e.SVG_INVALID_VALUE_ERR is e.constructor.SVG_INVALID_VALUE_ERR
-PASS e.SVG_INVALID_VALUE_ERR is 1
-PASS e.SVG_MATRIX_NOT_INVERTABLE is e.constructor.SVG_MATRIX_NOT_INVERTABLE
-PASS e.SVG_MATRIX_NOT_INVERTABLE is 2
-PASS successfullyParsed is true
-
-TEST COMPLETE
-
diff --git a/LayoutTests/svg/custom/SVGException.html b/LayoutTests/svg/custom/SVGException.html
deleted file mode 100644 (file)
index ad96ccf..0000000
+++ /dev/null
@@ -1,38 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML//EN">
-<html>
-<head>
-<script src="../../resources/js-test-pre.js"></script>
-</head>
-<body>
-<p id="description"></p>
-<div id="console"></div>
-<script>
-description("Tests the properties of the SVGException object.")
-
-var e;
-try {
-    var svgDoc = document.implementation.createDocument("http://www.w3.org/2000/svg", "svg", null);
-    var matrix = svgDoc.documentElement.createSVGMatrix();
-    matrix.rotateFromVector(0, 0)
-    // raises a SVG_INVALID_VALUE_ERR
-} catch (err) {
-    e = err;
-}
-
-shouldBeEqualToString("e.toString()", "SVG_INVALID_VALUE_ERR (DOM SVG Exception 1): An invalid value was passed to an operation or assigned to an attribute.");
-shouldBeEqualToString("Object.prototype.toString.call(e)", "[object SVGException]");
-shouldBeEqualToString("Object.prototype.toString.call(e.__proto__)", "[object SVGExceptionPrototype]");
-shouldBeEqualToString("e.constructor.toString()", "function SVGException() {\n    [native code]\n}");
-shouldBe("e.constructor", "window.SVGException");
-shouldBe("e.SVG_WRONG_TYPE_ERR", "e.constructor.SVG_WRONG_TYPE_ERR");
-shouldBe("e.SVG_WRONG_TYPE_ERR", "0");
-shouldBe("e.SVG_INVALID_VALUE_ERR", "e.constructor.SVG_INVALID_VALUE_ERR");
-shouldBe("e.SVG_INVALID_VALUE_ERR", "1");
-shouldBe("e.SVG_MATRIX_NOT_INVERTABLE", "e.constructor.SVG_MATRIX_NOT_INVERTABLE");
-shouldBe("e.SVG_MATRIX_NOT_INVERTABLE", "2");
-
-var successfullyParsed = true;
-</script>
-<script src="../../resources/js-test-post.js"></script>
-</body>
-</html>
index de7fe09..e5b6518 100644 (file)
@@ -3,7 +3,6 @@ Test to make sure we expose all the global constructor objects requested by http
 On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE".
 
 
-PASS SVGException.toString() is "function SVGException() {\n    [native code]\n}"
 PASS SVGElement.toString() is "function SVGElement() {\n    [native code]\n}"
 PASS SVGAnimatedBoolean.toString() is "function SVGAnimatedBoolean() {\n    [native code]\n}"
 PASS SVGAnimatedString.toString() is "function SVGAnimatedString() {\n    [native code]\n}"
index f89701b..32f7371 100644 (file)
@@ -15,7 +15,6 @@ function shouldBeDefined(a)
     shouldBeEqualToString("" + a + ".toString()", constructorString);
 }
 
-shouldBeDefined("SVGException");
 shouldBeDefined("SVGElement");
 shouldBeDefined("SVGAnimatedBoolean");
 shouldBeDefined("SVGAnimatedString");
index 9a13e3a..f805c79 100644 (file)
@@ -10,9 +10,6 @@ SVGComponentTransferFunctionElement.SVG_FECOMPONENTTRANSFER_TYPE_DISCRETE PASSED
 SVGComponentTransferFunctionElement.SVG_FECOMPONENTTRANSFER_TYPE_LINEAR PASSED
 SVGComponentTransferFunctionElement.SVG_FECOMPONENTTRANSFER_TYPE_GAMMA PASSED
 SVGCSSRule.COLOR_PROFILE_RULE EXPECTED FAILURE (actual: 'undefined' expected: '7')
-SVGException.SVG_WRONG_TYPE_ERR PASSED
-SVGException.SVG_INVALID_VALUE_ERR PASSED
-SVGException.SVG_MATRIX_NOT_INVERTABLE PASSED
 SVGFEBlendElement.SVG_FEBLEND_MODE_UNKNOWN PASSED
 SVGFEBlendElement.SVG_FEBLEND_MODE_NORMAL PASSED
 SVGFEBlendElement.SVG_FEBLEND_MODE_MULTIPLY PASSED
index 1236812..b8f78da 100644 (file)
 
       expect_failure("SVGCSSRule.COLOR_PROFILE_RULE", 7);
 
-      expect("SVGException.SVG_WRONG_TYPE_ERR", 0);
-      expect("SVGException.SVG_INVALID_VALUE_ERR", 1);
-      expect("SVGException.SVG_MATRIX_NOT_INVERTABLE", 2);
-
       if (window.SVGComponentTransferFunctionElement) {
           expect("SVGFEBlendElement.SVG_FEBLEND_MODE_UNKNOWN", 0);
           expect("SVGFEBlendElement.SVG_FEBLEND_MODE_NORMAL", 1); // Highlights a HASH bug!
index 7b8f3af..e58b9a3 100644 (file)
@@ -15,13 +15,13 @@ PASS clipPathElement.clipPathUnits.baseVal is SVGUnitTypes.SVG_UNIT_TYPE_OBJECTB
 PASS clipPathElement.getAttribute('clipPathUnits') is "objectBoundingBox"
 
 Try setting invalid values
-PASS clipPathElement.clipPathUnits.baseVal = 3 threw exception SVG_INVALID_VALUE_ERR (DOM SVG Exception 1): An invalid value was passed to an operation or assigned to an attribute..
+PASS clipPathElement.clipPathUnits.baseVal = 3 threw exception TypeError: Type error.
 PASS clipPathElement.clipPathUnits.baseVal is SVGUnitTypes.SVG_UNIT_TYPE_OBJECTBOUNDINGBOX
 PASS clipPathElement.getAttribute('clipPathUnits') is "objectBoundingBox"
-PASS clipPathElement.clipPathUnits.baseVal = -1 threw exception SVG_INVALID_VALUE_ERR (DOM SVG Exception 1): An invalid value was passed to an operation or assigned to an attribute..
+PASS clipPathElement.clipPathUnits.baseVal = -1 threw exception TypeError: Type error.
 PASS clipPathElement.clipPathUnits.baseVal is SVGUnitTypes.SVG_UNIT_TYPE_OBJECTBOUNDINGBOX
 PASS clipPathElement.getAttribute('clipPathUnits') is "objectBoundingBox"
-PASS clipPathElement.clipPathUnits.baseVal = 0 threw exception SVG_INVALID_VALUE_ERR (DOM SVG Exception 1): An invalid value was passed to an operation or assigned to an attribute..
+PASS clipPathElement.clipPathUnits.baseVal = 0 threw exception TypeError: Type error.
 PASS clipPathElement.clipPathUnits.baseVal is SVGUnitTypes.SVG_UNIT_TYPE_OBJECTBOUNDINGBOX
 PASS clipPathElement.getAttribute('clipPathUnits') is "objectBoundingBox"
 
index 5fadfd5..74af59a 100644 (file)
@@ -30,13 +30,13 @@ PASS feFuncRElement.type.baseVal is SVGComponentTransferFunctionElement.SVG_FECO
 PASS feFuncRElement.getAttribute('type') is "gamma"
 
 Try setting invalid values
-PASS feFuncRElement.type.baseVal = 6 threw exception SVG_INVALID_VALUE_ERR (DOM SVG Exception 1): An invalid value was passed to an operation or assigned to an attribute..
+PASS feFuncRElement.type.baseVal = 6 threw exception TypeError: Type error.
 PASS feFuncRElement.type.baseVal is SVGComponentTransferFunctionElement.SVG_FECOMPONENTTRANSFER_TYPE_GAMMA
 PASS feFuncRElement.getAttribute('type') is "gamma"
-PASS feFuncRElement.type.baseVal = -1 threw exception SVG_INVALID_VALUE_ERR (DOM SVG Exception 1): An invalid value was passed to an operation or assigned to an attribute..
+PASS feFuncRElement.type.baseVal = -1 threw exception TypeError: Type error.
 PASS feFuncRElement.type.baseVal is SVGComponentTransferFunctionElement.SVG_FECOMPONENTTRANSFER_TYPE_GAMMA
 PASS feFuncRElement.getAttribute('type') is "gamma"
-PASS feFuncRElement.type.baseVal = 0 threw exception SVG_INVALID_VALUE_ERR (DOM SVG Exception 1): An invalid value was passed to an operation or assigned to an attribute..
+PASS feFuncRElement.type.baseVal = 0 threw exception TypeError: Type error.
 PASS feFuncRElement.type.baseVal is SVGComponentTransferFunctionElement.SVG_FECOMPONENTTRANSFER_TYPE_GAMMA
 PASS feFuncRElement.getAttribute('type') is "gamma"
 
index 348c8f5..4b145d9 100644 (file)
@@ -30,13 +30,13 @@ PASS feBlendElement.mode.baseVal is SVGFEBlendElement.SVG_FEBLEND_MODE_LIGHTEN
 PASS feBlendElement.getAttribute('mode') is "lighten"
 
 Try setting invalid values
-PASS feBlendElement.mode.baseVal = 6 threw exception SVG_INVALID_VALUE_ERR (DOM SVG Exception 1): An invalid value was passed to an operation or assigned to an attribute..
+PASS feBlendElement.mode.baseVal = 6 threw exception TypeError: Type error.
 PASS feBlendElement.mode.baseVal is SVGFEBlendElement.SVG_FEBLEND_MODE_LIGHTEN
 PASS feBlendElement.getAttribute('mode') is "lighten"
-PASS feBlendElement.mode.baseVal = -1 threw exception SVG_INVALID_VALUE_ERR (DOM SVG Exception 1): An invalid value was passed to an operation or assigned to an attribute..
+PASS feBlendElement.mode.baseVal = -1 threw exception TypeError: Type error.
 PASS feBlendElement.mode.baseVal is SVGFEBlendElement.SVG_FEBLEND_MODE_LIGHTEN
 PASS feBlendElement.getAttribute('mode') is "lighten"
-PASS feBlendElement.mode.baseVal = 0 threw exception SVG_INVALID_VALUE_ERR (DOM SVG Exception 1): An invalid value was passed to an operation or assigned to an attribute..
+PASS feBlendElement.mode.baseVal = 0 threw exception TypeError: Type error.
 PASS feBlendElement.mode.baseVal is SVGFEBlendElement.SVG_FEBLEND_MODE_LIGHTEN
 PASS feBlendElement.getAttribute('mode') is "lighten"
 
index a576f79..eba81d1 100644 (file)
@@ -25,13 +25,13 @@ PASS feColorMatrixElement.type.baseVal is SVGFEColorMatrixElement.SVG_FECOLORMAT
 PASS feColorMatrixElement.getAttribute('type') is "luminanceToAlpha"
 
 Try setting invalid values
-PASS feColorMatrixElement.type.baseVal = 5 threw exception SVG_INVALID_VALUE_ERR (DOM SVG Exception 1): An invalid value was passed to an operation or assigned to an attribute..
+PASS feColorMatrixElement.type.baseVal = 5 threw exception TypeError: Type error.
 PASS feColorMatrixElement.type.baseVal is SVGFEColorMatrixElement.SVG_FECOLORMATRIX_TYPE_LUMINANCETOALPHA
 PASS feColorMatrixElement.getAttribute('type') is "luminanceToAlpha"
-PASS feColorMatrixElement.type.baseVal = -1 threw exception SVG_INVALID_VALUE_ERR (DOM SVG Exception 1): An invalid value was passed to an operation or assigned to an attribute..
+PASS feColorMatrixElement.type.baseVal = -1 threw exception TypeError: Type error.
 PASS feColorMatrixElement.type.baseVal is SVGFEColorMatrixElement.SVG_FECOLORMATRIX_TYPE_LUMINANCETOALPHA
 PASS feColorMatrixElement.getAttribute('type') is "luminanceToAlpha"
-PASS feColorMatrixElement.type.baseVal = 0 threw exception SVG_INVALID_VALUE_ERR (DOM SVG Exception 1): An invalid value was passed to an operation or assigned to an attribute..
+PASS feColorMatrixElement.type.baseVal = 0 threw exception TypeError: Type error.
 PASS feColorMatrixElement.type.baseVal is SVGFEColorMatrixElement.SVG_FECOLORMATRIX_TYPE_LUMINANCETOALPHA
 PASS feColorMatrixElement.getAttribute('type') is "luminanceToAlpha"
 
index 4dfac63..a8cb25a 100644 (file)
@@ -40,13 +40,13 @@ PASS feCompositeElement.operator.baseVal is SVGFECompositeElement.SVG_FECOMPOSIT
 PASS feCompositeElement.getAttribute('operator') is "arithmetic"
 
 Try setting invalid values
-PASS feCompositeElement.operator.baseVal = 7 threw exception SVG_INVALID_VALUE_ERR (DOM SVG Exception 1): An invalid value was passed to an operation or assigned to an attribute..
+PASS feCompositeElement.operator.baseVal = 7 threw exception TypeError: Type error.
 PASS feCompositeElement.operator.baseVal is SVGFECompositeElement.SVG_FECOMPOSITE_OPERATOR_ARITHMETIC
 PASS feCompositeElement.getAttribute('operator') is "arithmetic"
-PASS feCompositeElement.operator.baseVal = -1 threw exception SVG_INVALID_VALUE_ERR (DOM SVG Exception 1): An invalid value was passed to an operation or assigned to an attribute..
+PASS feCompositeElement.operator.baseVal = -1 threw exception TypeError: Type error.
 PASS feCompositeElement.operator.baseVal is SVGFECompositeElement.SVG_FECOMPOSITE_OPERATOR_ARITHMETIC
 PASS feCompositeElement.getAttribute('operator') is "arithmetic"
-PASS feCompositeElement.operator.baseVal = 0 threw exception SVG_INVALID_VALUE_ERR (DOM SVG Exception 1): An invalid value was passed to an operation or assigned to an attribute..
+PASS feCompositeElement.operator.baseVal = 0 threw exception TypeError: Type error.
 PASS feCompositeElement.operator.baseVal is SVGFECompositeElement.SVG_FECOMPOSITE_OPERATOR_ARITHMETIC
 PASS feCompositeElement.getAttribute('operator') is "arithmetic"
 
index 209de5a..c38d53d 100644 (file)
@@ -20,13 +20,13 @@ PASS feConvolveMatrixElement.edgeMode.baseVal is SVGFEConvolveMatrixElement.SVG_
 PASS feConvolveMatrixElement.getAttribute('edgeMode') is "none"
 
 Try setting invalid values
-PASS feConvolveMatrixElement.edgeMode.baseVal = 4 threw exception SVG_INVALID_VALUE_ERR (DOM SVG Exception 1): An invalid value was passed to an operation or assigned to an attribute..
+PASS feConvolveMatrixElement.edgeMode.baseVal = 4 threw exception TypeError: Type error.
 PASS feConvolveMatrixElement.edgeMode.baseVal is SVGFEConvolveMatrixElement.SVG_EDGEMODE_NONE
 PASS feConvolveMatrixElement.getAttribute('edgeMode') is "none"
-PASS feConvolveMatrixElement.edgeMode.baseVal = -1 threw exception SVG_INVALID_VALUE_ERR (DOM SVG Exception 1): An invalid value was passed to an operation or assigned to an attribute..
+PASS feConvolveMatrixElement.edgeMode.baseVal = -1 threw exception TypeError: Type error.
 PASS feConvolveMatrixElement.edgeMode.baseVal is SVGFEConvolveMatrixElement.SVG_EDGEMODE_NONE
 PASS feConvolveMatrixElement.getAttribute('edgeMode') is "none"
-PASS feConvolveMatrixElement.edgeMode.baseVal = 0 threw exception SVG_INVALID_VALUE_ERR (DOM SVG Exception 1): An invalid value was passed to an operation or assigned to an attribute..
+PASS feConvolveMatrixElement.edgeMode.baseVal = 0 threw exception TypeError: Type error.
 PASS feConvolveMatrixElement.edgeMode.baseVal is SVGFEConvolveMatrixElement.SVG_EDGEMODE_NONE
 PASS feConvolveMatrixElement.getAttribute('edgeMode') is "none"
 
index cf81ee7..0bad4e8 100644 (file)
@@ -25,13 +25,13 @@ PASS feDisplacementMapElement.xChannelSelector.baseVal is SVGFEDisplacementMapEl
 PASS feDisplacementMapElement.getAttribute('xChannelSelector') is "A"
 
 Try setting invalid values
-PASS feDisplacementMapElement.xChannelSelector.baseVal = 5 threw exception SVG_INVALID_VALUE_ERR (DOM SVG Exception 1): An invalid value was passed to an operation or assigned to an attribute..
+PASS feDisplacementMapElement.xChannelSelector.baseVal = 5 threw exception TypeError: Type error.
 PASS feDisplacementMapElement.xChannelSelector.baseVal is SVGFEDisplacementMapElement.SVG_CHANNEL_A
 PASS feDisplacementMapElement.getAttribute('xChannelSelector') is "A"
-PASS feDisplacementMapElement.xChannelSelector.baseVal = -1 threw exception SVG_INVALID_VALUE_ERR (DOM SVG Exception 1): An invalid value was passed to an operation or assigned to an attribute..
+PASS feDisplacementMapElement.xChannelSelector.baseVal = -1 threw exception TypeError: Type error.
 PASS feDisplacementMapElement.xChannelSelector.baseVal is SVGFEDisplacementMapElement.SVG_CHANNEL_A
 PASS feDisplacementMapElement.getAttribute('xChannelSelector') is "A"
-PASS feDisplacementMapElement.xChannelSelector.baseVal = 0 threw exception SVG_INVALID_VALUE_ERR (DOM SVG Exception 1): An invalid value was passed to an operation or assigned to an attribute..
+PASS feDisplacementMapElement.xChannelSelector.baseVal = 0 threw exception TypeError: Type error.
 PASS feDisplacementMapElement.xChannelSelector.baseVal is SVGFEDisplacementMapElement.SVG_CHANNEL_A
 PASS feDisplacementMapElement.getAttribute('xChannelSelector') is "A"
 
@@ -61,13 +61,13 @@ PASS feDisplacementMapElement.yChannelSelector.baseVal is SVGFEDisplacementMapEl
 PASS feDisplacementMapElement.getAttribute('yChannelSelector') is "A"
 
 Try setting invalid values
-PASS feDisplacementMapElement.yChannelSelector.baseVal = 5 threw exception SVG_INVALID_VALUE_ERR (DOM SVG Exception 1): An invalid value was passed to an operation or assigned to an attribute..
+PASS feDisplacementMapElement.yChannelSelector.baseVal = 5 threw exception TypeError: Type error.
 PASS feDisplacementMapElement.yChannelSelector.baseVal is SVGFEDisplacementMapElement.SVG_CHANNEL_A
 PASS feDisplacementMapElement.getAttribute('yChannelSelector') is "A"
-PASS feDisplacementMapElement.yChannelSelector.baseVal = -1 threw exception SVG_INVALID_VALUE_ERR (DOM SVG Exception 1): An invalid value was passed to an operation or assigned to an attribute..
+PASS feDisplacementMapElement.yChannelSelector.baseVal = -1 threw exception TypeError: Type error.
 PASS feDisplacementMapElement.yChannelSelector.baseVal is SVGFEDisplacementMapElement.SVG_CHANNEL_A
 PASS feDisplacementMapElement.getAttribute('yChannelSelector') is "A"
-PASS feDisplacementMapElement.yChannelSelector.baseVal = 0 threw exception SVG_INVALID_VALUE_ERR (DOM SVG Exception 1): An invalid value was passed to an operation or assigned to an attribute..
+PASS feDisplacementMapElement.yChannelSelector.baseVal = 0 threw exception TypeError: Type error.
 PASS feDisplacementMapElement.yChannelSelector.baseVal is SVGFEDisplacementMapElement.SVG_CHANNEL_A
 PASS feDisplacementMapElement.getAttribute('yChannelSelector') is "A"
 
index 631e9d1..da767e9 100644 (file)
@@ -15,13 +15,13 @@ PASS feMorphologyElement.operator.baseVal is SVGFEMorphologyElement.SVG_MORPHOLO
 PASS feMorphologyElement.getAttribute('operator') is "dilate"
 
 Try setting invalid values
-PASS feMorphologyElement.operator.baseVal = 4 threw exception SVG_INVALID_VALUE_ERR (DOM SVG Exception 1): An invalid value was passed to an operation or assigned to an attribute..
+PASS feMorphologyElement.operator.baseVal = 4 threw exception TypeError: Type error.
 PASS feMorphologyElement.operator.baseVal is SVGFEMorphologyElement.SVG_MORPHOLOGY_OPERATOR_DILATE
 PASS feMorphologyElement.getAttribute('operator') is "dilate"
-PASS feMorphologyElement.operator.baseVal = -1 threw exception SVG_INVALID_VALUE_ERR (DOM SVG Exception 1): An invalid value was passed to an operation or assigned to an attribute..
+PASS feMorphologyElement.operator.baseVal = -1 threw exception TypeError: Type error.
 PASS feMorphologyElement.operator.baseVal is SVGFEMorphologyElement.SVG_MORPHOLOGY_OPERATOR_DILATE
 PASS feMorphologyElement.getAttribute('operator') is "dilate"
-PASS feMorphologyElement.operator.baseVal = 0 threw exception SVG_INVALID_VALUE_ERR (DOM SVG Exception 1): An invalid value was passed to an operation or assigned to an attribute..
+PASS feMorphologyElement.operator.baseVal = 0 threw exception TypeError: Type error.
 PASS feMorphologyElement.operator.baseVal is SVGFEMorphologyElement.SVG_MORPHOLOGY_OPERATOR_DILATE
 PASS feMorphologyElement.getAttribute('operator') is "dilate"
 
index 19f19b7..aebae47 100644 (file)
@@ -15,13 +15,13 @@ PASS feTurbulenceElement.type.baseVal is SVGFETurbulenceElement.SVG_TURBULENCE_T
 PASS feTurbulenceElement.getAttribute('type') is "turbulence"
 
 Try setting invalid values
-PASS feTurbulenceElement.type.baseVal = 3 threw exception SVG_INVALID_VALUE_ERR (DOM SVG Exception 1): An invalid value was passed to an operation or assigned to an attribute..
+PASS feTurbulenceElement.type.baseVal = 3 threw exception TypeError: Type error.
 PASS feTurbulenceElement.type.baseVal is SVGFETurbulenceElement.SVG_TURBULENCE_TYPE_TURBULENCE
 PASS feTurbulenceElement.getAttribute('type') is "turbulence"
-PASS feTurbulenceElement.type.baseVal = -1 threw exception SVG_INVALID_VALUE_ERR (DOM SVG Exception 1): An invalid value was passed to an operation or assigned to an attribute..
+PASS feTurbulenceElement.type.baseVal = -1 threw exception TypeError: Type error.
 PASS feTurbulenceElement.type.baseVal is SVGFETurbulenceElement.SVG_TURBULENCE_TYPE_TURBULENCE
 PASS feTurbulenceElement.getAttribute('type') is "turbulence"
-PASS feTurbulenceElement.type.baseVal = 0 threw exception SVG_INVALID_VALUE_ERR (DOM SVG Exception 1): An invalid value was passed to an operation or assigned to an attribute..
+PASS feTurbulenceElement.type.baseVal = 0 threw exception TypeError: Type error.
 PASS feTurbulenceElement.type.baseVal is SVGFETurbulenceElement.SVG_TURBULENCE_TYPE_TURBULENCE
 PASS feTurbulenceElement.getAttribute('type') is "turbulence"
 
@@ -41,13 +41,13 @@ PASS feTurbulenceElement.stitchTiles.baseVal is SVGFETurbulenceElement.SVG_STITC
 PASS feTurbulenceElement.getAttribute('stitchTiles') is "noStitch"
 
 Try setting invalid values
-PASS feTurbulenceElement.stitchTiles.baseVal = 3 threw exception SVG_INVALID_VALUE_ERR (DOM SVG Exception 1): An invalid value was passed to an operation or assigned to an attribute..
+PASS feTurbulenceElement.stitchTiles.baseVal = 3 threw exception TypeError: Type error.
 PASS feTurbulenceElement.stitchTiles.baseVal is SVGFETurbulenceElement.SVG_STITCHTYPE_NOSTITCH
 PASS feTurbulenceElement.getAttribute('stitchTiles') is "noStitch"
-PASS feTurbulenceElement.stitchTiles.baseVal = -1 threw exception SVG_INVALID_VALUE_ERR (DOM SVG Exception 1): An invalid value was passed to an operation or assigned to an attribute..
+PASS feTurbulenceElement.stitchTiles.baseVal = -1 threw exception TypeError: Type error.
 PASS feTurbulenceElement.stitchTiles.baseVal is SVGFETurbulenceElement.SVG_STITCHTYPE_NOSTITCH
 PASS feTurbulenceElement.getAttribute('stitchTiles') is "noStitch"
-PASS feTurbulenceElement.stitchTiles.baseVal = 0 threw exception SVG_INVALID_VALUE_ERR (DOM SVG Exception 1): An invalid value was passed to an operation or assigned to an attribute..
+PASS feTurbulenceElement.stitchTiles.baseVal = 0 threw exception TypeError: Type error.
 PASS feTurbulenceElement.stitchTiles.baseVal is SVGFETurbulenceElement.SVG_STITCHTYPE_NOSTITCH
 PASS feTurbulenceElement.getAttribute('stitchTiles') is "noStitch"
 
index 263870b..fe3c425 100644 (file)
@@ -15,13 +15,13 @@ PASS filterElement.filterUnits.baseVal is SVGUnitTypes.SVG_UNIT_TYPE_OBJECTBOUND
 PASS filterElement.getAttribute('filterUnits') is "objectBoundingBox"
 
 Try setting invalid values
-PASS filterElement.filterUnits.baseVal = 3 threw exception SVG_INVALID_VALUE_ERR (DOM SVG Exception 1): An invalid value was passed to an operation or assigned to an attribute..
+PASS filterElement.filterUnits.baseVal = 3 threw exception TypeError: Type error.
 PASS filterElement.filterUnits.baseVal is SVGUnitTypes.SVG_UNIT_TYPE_OBJECTBOUNDINGBOX
 PASS filterElement.getAttribute('filterUnits') is "objectBoundingBox"
-PASS filterElement.filterUnits.baseVal = -1 threw exception SVG_INVALID_VALUE_ERR (DOM SVG Exception 1): An invalid value was passed to an operation or assigned to an attribute..
+PASS filterElement.filterUnits.baseVal = -1 threw exception TypeError: Type error.
 PASS filterElement.filterUnits.baseVal is SVGUnitTypes.SVG_UNIT_TYPE_OBJECTBOUNDINGBOX
 PASS filterElement.getAttribute('filterUnits') is "objectBoundingBox"
-PASS filterElement.filterUnits.baseVal = 0 threw exception SVG_INVALID_VALUE_ERR (DOM SVG Exception 1): An invalid value was passed to an operation or assigned to an attribute..
+PASS filterElement.filterUnits.baseVal = 0 threw exception TypeError: Type error.
 PASS filterElement.filterUnits.baseVal is SVGUnitTypes.SVG_UNIT_TYPE_OBJECTBOUNDINGBOX
 PASS filterElement.getAttribute('filterUnits') is "objectBoundingBox"
 
@@ -41,13 +41,13 @@ PASS filterElement.primitiveUnits.baseVal is SVGUnitTypes.SVG_UNIT_TYPE_OBJECTBO
 PASS filterElement.getAttribute('primitiveUnits') is "objectBoundingBox"
 
 Try setting invalid values
-PASS filterElement.primitiveUnits.baseVal = 3 threw exception SVG_INVALID_VALUE_ERR (DOM SVG Exception 1): An invalid value was passed to an operation or assigned to an attribute..
+PASS filterElement.primitiveUnits.baseVal = 3 threw exception TypeError: Type error.
 PASS filterElement.primitiveUnits.baseVal is SVGUnitTypes.SVG_UNIT_TYPE_OBJECTBOUNDINGBOX
 PASS filterElement.getAttribute('primitiveUnits') is "objectBoundingBox"
-PASS filterElement.primitiveUnits.baseVal = -1 threw exception SVG_INVALID_VALUE_ERR (DOM SVG Exception 1): An invalid value was passed to an operation or assigned to an attribute..
+PASS filterElement.primitiveUnits.baseVal = -1 threw exception TypeError: Type error.
 PASS filterElement.primitiveUnits.baseVal is SVGUnitTypes.SVG_UNIT_TYPE_OBJECTBOUNDINGBOX
 PASS filterElement.getAttribute('primitiveUnits') is "objectBoundingBox"
-PASS filterElement.primitiveUnits.baseVal = 0 threw exception SVG_INVALID_VALUE_ERR (DOM SVG Exception 1): An invalid value was passed to an operation or assigned to an attribute..
+PASS filterElement.primitiveUnits.baseVal = 0 threw exception TypeError: Type error.
 PASS filterElement.primitiveUnits.baseVal is SVGUnitTypes.SVG_UNIT_TYPE_OBJECTBOUNDINGBOX
 PASS filterElement.getAttribute('primitiveUnits') is "objectBoundingBox"
 
index 8208eb4..71392ec 100644 (file)
@@ -15,13 +15,13 @@ PASS gradientElement.gradientUnits.baseVal is SVGUnitTypes.SVG_UNIT_TYPE_OBJECTB
 PASS gradientElement.getAttribute('gradientUnits') is "objectBoundingBox"
 
 Try setting invalid values
-PASS gradientElement.gradientUnits.baseVal = 3 threw exception SVG_INVALID_VALUE_ERR (DOM SVG Exception 1): An invalid value was passed to an operation or assigned to an attribute..
+PASS gradientElement.gradientUnits.baseVal = 3 threw exception TypeError: Type error.
 PASS gradientElement.gradientUnits.baseVal is SVGUnitTypes.SVG_UNIT_TYPE_OBJECTBOUNDINGBOX
 PASS gradientElement.getAttribute('gradientUnits') is "objectBoundingBox"
-PASS gradientElement.gradientUnits.baseVal = -1 threw exception SVG_INVALID_VALUE_ERR (DOM SVG Exception 1): An invalid value was passed to an operation or assigned to an attribute..
+PASS gradientElement.gradientUnits.baseVal = -1 threw exception TypeError: Type error.
 PASS gradientElement.gradientUnits.baseVal is SVGUnitTypes.SVG_UNIT_TYPE_OBJECTBOUNDINGBOX
 PASS gradientElement.getAttribute('gradientUnits') is "objectBoundingBox"
-PASS gradientElement.gradientUnits.baseVal = 0 threw exception SVG_INVALID_VALUE_ERR (DOM SVG Exception 1): An invalid value was passed to an operation or assigned to an attribute..
+PASS gradientElement.gradientUnits.baseVal = 0 threw exception TypeError: Type error.
 PASS gradientElement.gradientUnits.baseVal is SVGUnitTypes.SVG_UNIT_TYPE_OBJECTBOUNDINGBOX
 PASS gradientElement.getAttribute('gradientUnits') is "objectBoundingBox"
 
@@ -46,13 +46,13 @@ PASS gradientElement.spreadMethod.baseVal is SVGGradientElement.SVG_SPREADMETHOD
 PASS gradientElement.getAttribute('spreadMethod') is "repeat"
 
 Try setting invalid values
-PASS gradientElement.spreadMethod.baseVal = 4 threw exception SVG_INVALID_VALUE_ERR (DOM SVG Exception 1): An invalid value was passed to an operation or assigned to an attribute..
+PASS gradientElement.spreadMethod.baseVal = 4 threw exception TypeError: Type error.
 PASS gradientElement.spreadMethod.baseVal is SVGGradientElement.SVG_SPREADMETHOD_REPEAT
 PASS gradientElement.getAttribute('spreadMethod') is "repeat"
-PASS gradientElement.spreadMethod.baseVal = -1 threw exception SVG_INVALID_VALUE_ERR (DOM SVG Exception 1): An invalid value was passed to an operation or assigned to an attribute..
+PASS gradientElement.spreadMethod.baseVal = -1 threw exception TypeError: Type error.
 PASS gradientElement.spreadMethod.baseVal is SVGGradientElement.SVG_SPREADMETHOD_REPEAT
 PASS gradientElement.getAttribute('spreadMethod') is "repeat"
-PASS gradientElement.spreadMethod.baseVal = 0 threw exception SVG_INVALID_VALUE_ERR (DOM SVG Exception 1): An invalid value was passed to an operation or assigned to an attribute..
+PASS gradientElement.spreadMethod.baseVal = 0 threw exception TypeError: Type error.
 PASS gradientElement.spreadMethod.baseVal is SVGGradientElement.SVG_SPREADMETHOD_REPEAT
 PASS gradientElement.getAttribute('spreadMethod') is "repeat"
 
index 0c94bdb..a1249f9 100644 (file)
@@ -15,13 +15,13 @@ PASS markerElement.markerUnits.baseVal is SVGMarkerElement.SVG_MARKERUNITS_STROK
 PASS markerElement.getAttribute('markerUnits') is "strokeWidth"
 
 Try setting invalid values
-PASS markerElement.markerUnits.baseVal = 3 threw exception SVG_INVALID_VALUE_ERR (DOM SVG Exception 1): An invalid value was passed to an operation or assigned to an attribute..
+PASS markerElement.markerUnits.baseVal = 3 threw exception TypeError: Type error.
 PASS markerElement.markerUnits.baseVal is SVGMarkerElement.SVG_MARKERUNITS_STROKEWIDTH
 PASS markerElement.getAttribute('markerUnits') is "strokeWidth"
-PASS markerElement.markerUnits.baseVal = -1 threw exception SVG_INVALID_VALUE_ERR (DOM SVG Exception 1): An invalid value was passed to an operation or assigned to an attribute..
+PASS markerElement.markerUnits.baseVal = -1 threw exception TypeError: Type error.
 PASS markerElement.markerUnits.baseVal is SVGMarkerElement.SVG_MARKERUNITS_STROKEWIDTH
 PASS markerElement.getAttribute('markerUnits') is "strokeWidth"
-PASS markerElement.markerUnits.baseVal = 0 threw exception SVG_INVALID_VALUE_ERR (DOM SVG Exception 1): An invalid value was passed to an operation or assigned to an attribute..
+PASS markerElement.markerUnits.baseVal = 0 threw exception TypeError: Type error.
 PASS markerElement.markerUnits.baseVal is SVGMarkerElement.SVG_MARKERUNITS_STROKEWIDTH
 PASS markerElement.getAttribute('markerUnits') is "strokeWidth"
 
@@ -89,13 +89,13 @@ PASS markerElement.orientType.baseVal is SVGMarkerElement.SVG_MARKER_ORIENT_ANGL
 PASS markerElement.getAttribute('orient') is "10deg"
 
 Try setting invalid values
-PASS markerElement.orientType.baseVal = 3 threw exception SVG_INVALID_VALUE_ERR (DOM SVG Exception 1): An invalid value was passed to an operation or assigned to an attribute..
+PASS markerElement.orientType.baseVal = 3 threw exception TypeError: Type error.
 PASS markerElement.orientType.baseVal is SVGMarkerElement.SVG_MARKER_ORIENT_ANGLE
 PASS markerElement.getAttribute('orient') is "10deg"
-PASS markerElement.orientType.baseVal = -1 threw exception SVG_INVALID_VALUE_ERR (DOM SVG Exception 1): An invalid value was passed to an operation or assigned to an attribute..
+PASS markerElement.orientType.baseVal = -1 threw exception TypeError: Type error.
 PASS markerElement.orientType.baseVal is SVGMarkerElement.SVG_MARKER_ORIENT_ANGLE
 PASS markerElement.getAttribute('orient') is "10deg"
-PASS markerElement.orientType.baseVal = 0 threw exception SVG_INVALID_VALUE_ERR (DOM SVG Exception 1): An invalid value was passed to an operation or assigned to an attribute..
+PASS markerElement.orientType.baseVal = 0 threw exception TypeError: Type error.
 PASS markerElement.orientType.baseVal is SVGMarkerElement.SVG_MARKER_ORIENT_ANGLE
 PASS markerElement.getAttribute('orient') is "10deg"
 
index 176bf18..90c7545 100644 (file)
@@ -15,13 +15,13 @@ PASS maskElement.maskUnits.baseVal is SVGUnitTypes.SVG_UNIT_TYPE_OBJECTBOUNDINGB
 PASS maskElement.getAttribute('maskUnits') is "objectBoundingBox"
 
 Try setting invalid values
-PASS maskElement.maskUnits.baseVal = 3 threw exception SVG_INVALID_VALUE_ERR (DOM SVG Exception 1): An invalid value was passed to an operation or assigned to an attribute..
+PASS maskElement.maskUnits.baseVal = 3 threw exception TypeError: Type error.
 PASS maskElement.maskUnits.baseVal is SVGUnitTypes.SVG_UNIT_TYPE_OBJECTBOUNDINGBOX
 PASS maskElement.getAttribute('maskUnits') is "objectBoundingBox"
-PASS maskElement.maskUnits.baseVal = -1 threw exception SVG_INVALID_VALUE_ERR (DOM SVG Exception 1): An invalid value was passed to an operation or assigned to an attribute..
+PASS maskElement.maskUnits.baseVal = -1 threw exception TypeError: Type error.
 PASS maskElement.maskUnits.baseVal is SVGUnitTypes.SVG_UNIT_TYPE_OBJECTBOUNDINGBOX
 PASS maskElement.getAttribute('maskUnits') is "objectBoundingBox"
-PASS maskElement.maskUnits.baseVal = 0 threw exception SVG_INVALID_VALUE_ERR (DOM SVG Exception 1): An invalid value was passed to an operation or assigned to an attribute..
+PASS maskElement.maskUnits.baseVal = 0 threw exception TypeError: Type error.
 PASS maskElement.maskUnits.baseVal is SVGUnitTypes.SVG_UNIT_TYPE_OBJECTBOUNDINGBOX
 PASS maskElement.getAttribute('maskUnits') is "objectBoundingBox"
 
@@ -41,13 +41,13 @@ PASS maskElement.maskContentUnits.baseVal is SVGUnitTypes.SVG_UNIT_TYPE_OBJECTBO
 PASS maskElement.getAttribute('maskContentUnits') is "objectBoundingBox"
 
 Try setting invalid values
-PASS maskElement.maskContentUnits.baseVal = 3 threw exception SVG_INVALID_VALUE_ERR (DOM SVG Exception 1): An invalid value was passed to an operation or assigned to an attribute..
+PASS maskElement.maskContentUnits.baseVal = 3 threw exception TypeError: Type error.
 PASS maskElement.maskContentUnits.baseVal is SVGUnitTypes.SVG_UNIT_TYPE_OBJECTBOUNDINGBOX
 PASS maskElement.getAttribute('maskContentUnits') is "objectBoundingBox"
-PASS maskElement.maskContentUnits.baseVal = -1 threw exception SVG_INVALID_VALUE_ERR (DOM SVG Exception 1): An invalid value was passed to an operation or assigned to an attribute..
+PASS maskElement.maskContentUnits.baseVal = -1 threw exception TypeError: Type error.
 PASS maskElement.maskContentUnits.baseVal is SVGUnitTypes.SVG_UNIT_TYPE_OBJECTBOUNDINGBOX
 PASS maskElement.getAttribute('maskContentUnits') is "objectBoundingBox"
-PASS maskElement.maskContentUnits.baseVal = 0 threw exception SVG_INVALID_VALUE_ERR (DOM SVG Exception 1): An invalid value was passed to an operation or assigned to an attribute..
+PASS maskElement.maskContentUnits.baseVal = 0 threw exception TypeError: Type error.
 PASS maskElement.maskContentUnits.baseVal is SVGUnitTypes.SVG_UNIT_TYPE_OBJECTBOUNDINGBOX
 PASS maskElement.getAttribute('maskContentUnits') is "objectBoundingBox"
 
index bc019b8..17528f7 100644 (file)
@@ -15,13 +15,13 @@ PASS patternElement.patternUnits.baseVal is SVGUnitTypes.SVG_UNIT_TYPE_OBJECTBOU
 PASS patternElement.getAttribute('patternUnits') is "objectBoundingBox"
 
 Try setting invalid values
-PASS patternElement.patternUnits.baseVal = 3 threw exception SVG_INVALID_VALUE_ERR (DOM SVG Exception 1): An invalid value was passed to an operation or assigned to an attribute..
+PASS patternElement.patternUnits.baseVal = 3 threw exception TypeError: Type error.
 PASS patternElement.patternUnits.baseVal is SVGUnitTypes.SVG_UNIT_TYPE_OBJECTBOUNDINGBOX
 PASS patternElement.getAttribute('patternUnits') is "objectBoundingBox"
-PASS patternElement.patternUnits.baseVal = -1 threw exception SVG_INVALID_VALUE_ERR (DOM SVG Exception 1): An invalid value was passed to an operation or assigned to an attribute..
+PASS patternElement.patternUnits.baseVal = -1 threw exception TypeError: Type error.
 PASS patternElement.patternUnits.baseVal is SVGUnitTypes.SVG_UNIT_TYPE_OBJECTBOUNDINGBOX
 PASS patternElement.getAttribute('patternUnits') is "objectBoundingBox"
-PASS patternElement.patternUnits.baseVal = 0 threw exception SVG_INVALID_VALUE_ERR (DOM SVG Exception 1): An invalid value was passed to an operation or assigned to an attribute..
+PASS patternElement.patternUnits.baseVal = 0 threw exception TypeError: Type error.
 PASS patternElement.patternUnits.baseVal is SVGUnitTypes.SVG_UNIT_TYPE_OBJECTBOUNDINGBOX
 PASS patternElement.getAttribute('patternUnits') is "objectBoundingBox"
 
@@ -41,13 +41,13 @@ PASS patternElement.patternContentUnits.baseVal is SVGUnitTypes.SVG_UNIT_TYPE_OB
 PASS patternElement.getAttribute('patternContentUnits') is "objectBoundingBox"
 
 Try setting invalid values
-PASS patternElement.patternContentUnits.baseVal = 3 threw exception SVG_INVALID_VALUE_ERR (DOM SVG Exception 1): An invalid value was passed to an operation or assigned to an attribute..
+PASS patternElement.patternContentUnits.baseVal = 3 threw exception TypeError: Type error.
 PASS patternElement.patternContentUnits.baseVal is SVGUnitTypes.SVG_UNIT_TYPE_OBJECTBOUNDINGBOX
 PASS patternElement.getAttribute('patternContentUnits') is "objectBoundingBox"
-PASS patternElement.patternContentUnits.baseVal = -1 threw exception SVG_INVALID_VALUE_ERR (DOM SVG Exception 1): An invalid value was passed to an operation or assigned to an attribute..
+PASS patternElement.patternContentUnits.baseVal = -1 threw exception TypeError: Type error.
 PASS patternElement.patternContentUnits.baseVal is SVGUnitTypes.SVG_UNIT_TYPE_OBJECTBOUNDINGBOX
 PASS patternElement.getAttribute('patternContentUnits') is "objectBoundingBox"
-PASS patternElement.patternContentUnits.baseVal = 0 threw exception SVG_INVALID_VALUE_ERR (DOM SVG Exception 1): An invalid value was passed to an operation or assigned to an attribute..
+PASS patternElement.patternContentUnits.baseVal = 0 threw exception TypeError: Type error.
 PASS patternElement.patternContentUnits.baseVal is SVGUnitTypes.SVG_UNIT_TYPE_OBJECTBOUNDINGBOX
 PASS patternElement.getAttribute('patternContentUnits') is "objectBoundingBox"
 
index 626bd4b..0e5be4e 100644 (file)
@@ -15,13 +15,13 @@ PASS textContentElement.lengthAdjust.baseVal is SVGTextContentElement.LENGTHADJU
 PASS textContentElement.getAttribute('lengthAdjust') is "spacingAndGlyphs"
 
 Try setting invalid values
-PASS textContentElement.lengthAdjust.baseVal = 3 threw exception SVG_INVALID_VALUE_ERR (DOM SVG Exception 1): An invalid value was passed to an operation or assigned to an attribute..
+PASS textContentElement.lengthAdjust.baseVal = 3 threw exception TypeError: Type error.
 PASS textContentElement.lengthAdjust.baseVal is SVGTextContentElement.LENGTHADJUST_SPACINGANDGLYPHS
 PASS textContentElement.getAttribute('lengthAdjust') is "spacingAndGlyphs"
-PASS textContentElement.lengthAdjust.baseVal = -1 threw exception SVG_INVALID_VALUE_ERR (DOM SVG Exception 1): An invalid value was passed to an operation or assigned to an attribute..
+PASS textContentElement.lengthAdjust.baseVal = -1 threw exception TypeError: Type error.
 PASS textContentElement.lengthAdjust.baseVal is SVGTextContentElement.LENGTHADJUST_SPACINGANDGLYPHS
 PASS textContentElement.getAttribute('lengthAdjust') is "spacingAndGlyphs"
-PASS textContentElement.lengthAdjust.baseVal = 0 threw exception SVG_INVALID_VALUE_ERR (DOM SVG Exception 1): An invalid value was passed to an operation or assigned to an attribute..
+PASS textContentElement.lengthAdjust.baseVal = 0 threw exception TypeError: Type error.
 PASS textContentElement.lengthAdjust.baseVal is SVGTextContentElement.LENGTHADJUST_SPACINGANDGLYPHS
 PASS textContentElement.getAttribute('lengthAdjust') is "spacingAndGlyphs"
 
index 2c97685..4e8f591 100644 (file)
@@ -15,13 +15,13 @@ PASS textPathElement.method.baseVal is SVGTextPathElement.TEXTPATH_METHODTYPE_ST
 PASS textPathElement.getAttribute('method') is "stretch"
 
 Try setting invalid values
-PASS textPathElement.method.baseVal = 3 threw exception SVG_INVALID_VALUE_ERR (DOM SVG Exception 1): An invalid value was passed to an operation or assigned to an attribute..
+PASS textPathElement.method.baseVal = 3 threw exception TypeError: Type error.
 PASS textPathElement.method.baseVal is SVGTextPathElement.TEXTPATH_METHODTYPE_STRETCH
 PASS textPathElement.getAttribute('method') is "stretch"
-PASS textPathElement.method.baseVal = -1 threw exception SVG_INVALID_VALUE_ERR (DOM SVG Exception 1): An invalid value was passed to an operation or assigned to an attribute..
+PASS textPathElement.method.baseVal = -1 threw exception TypeError: Type error.
 PASS textPathElement.method.baseVal is SVGTextPathElement.TEXTPATH_METHODTYPE_STRETCH
 PASS textPathElement.getAttribute('method') is "stretch"
-PASS textPathElement.method.baseVal = 0 threw exception SVG_INVALID_VALUE_ERR (DOM SVG Exception 1): An invalid value was passed to an operation or assigned to an attribute..
+PASS textPathElement.method.baseVal = 0 threw exception TypeError: Type error.
 PASS textPathElement.method.baseVal is SVGTextPathElement.TEXTPATH_METHODTYPE_STRETCH
 PASS textPathElement.getAttribute('method') is "stretch"
 
@@ -41,13 +41,13 @@ PASS textPathElement.spacing.baseVal is SVGTextPathElement.TEXTPATH_SPACINGTYPE_
 PASS textPathElement.getAttribute('spacing') is "exact"
 
 Try setting invalid values
-PASS textPathElement.spacing.baseVal = 3 threw exception SVG_INVALID_VALUE_ERR (DOM SVG Exception 1): An invalid value was passed to an operation or assigned to an attribute..
+PASS textPathElement.spacing.baseVal = 3 threw exception TypeError: Type error.
 PASS textPathElement.spacing.baseVal is SVGTextPathElement.TEXTPATH_SPACINGTYPE_EXACT
 PASS textPathElement.getAttribute('spacing') is "exact"
-PASS textPathElement.spacing.baseVal = -1 threw exception SVG_INVALID_VALUE_ERR (DOM SVG Exception 1): An invalid value was passed to an operation or assigned to an attribute..
+PASS textPathElement.spacing.baseVal = -1 threw exception TypeError: Type error.
 PASS textPathElement.spacing.baseVal is SVGTextPathElement.TEXTPATH_SPACINGTYPE_EXACT
 PASS textPathElement.getAttribute('spacing') is "exact"
-PASS textPathElement.spacing.baseVal = 0 threw exception SVG_INVALID_VALUE_ERR (DOM SVG Exception 1): An invalid value was passed to an operation or assigned to an attribute..
+PASS textPathElement.spacing.baseVal = 0 threw exception TypeError: Type error.
 PASS textPathElement.spacing.baseVal is SVGTextPathElement.TEXTPATH_SPACINGTYPE_EXACT
 PASS textPathElement.getAttribute('spacing') is "exact"
 
index 6a7c62f..d255097 100644 (file)
@@ -14,16 +14,16 @@ PASS enumRef is SVGUnitTypes.SVG_UNIT_TYPE_OBJECTBOUNDINGBOX
 PASS clipPathElement.clipPathUnits.baseVal is SVGUnitTypes.SVG_UNIT_TYPE_USERSPACEONUSE
 
 Check assigning various valid and invalid values
-PASS clipPathElement.clipPathUnits.baseVal = 3 threw exception SVG_INVALID_VALUE_ERR (DOM SVG Exception 1): An invalid value was passed to an operation or assigned to an attribute..
+PASS clipPathElement.clipPathUnits.baseVal = 3 threw exception TypeError: Type error.
 PASS clipPathElement.clipPathUnits.baseVal is SVGUnitTypes.SVG_UNIT_TYPE_USERSPACEONUSE
-PASS clipPathElement.clipPathUnits.baseVal = -1 threw exception SVG_INVALID_VALUE_ERR (DOM SVG Exception 1): An invalid value was passed to an operation or assigned to an attribute..
+PASS clipPathElement.clipPathUnits.baseVal = -1 threw exception TypeError: Type error.
 PASS clipPathElement.clipPathUnits.baseVal is SVGUnitTypes.SVG_UNIT_TYPE_USERSPACEONUSE
 PASS clipPathElement.clipPathUnits.baseVal = '1' is "1"
 PASS clipPathElement.clipPathUnits.baseVal is SVGUnitTypes.SVG_UNIT_TYPE_USERSPACEONUSE
-PASS clipPathElement.clipPathUnits.baseVal = 'aString' threw exception SVG_INVALID_VALUE_ERR (DOM SVG Exception 1): An invalid value was passed to an operation or assigned to an attribute..
+PASS clipPathElement.clipPathUnits.baseVal = 'aString' threw exception TypeError: Type error.
 PASS clipPathElement.clipPathUnits.baseVal is SVGUnitTypes.SVG_UNIT_TYPE_USERSPACEONUSE
 PASS clipPathElement.clipPathUnits.baseVal = 2 is SVGUnitTypes.SVG_UNIT_TYPE_OBJECTBOUNDINGBOX
-PASS clipPathElement.clipPathUnits.baseVal = clipPathElement threw exception SVG_INVALID_VALUE_ERR (DOM SVG Exception 1): An invalid value was passed to an operation or assigned to an attribute..
+PASS clipPathElement.clipPathUnits.baseVal = clipPathElement threw exception TypeError: Type error.
 PASS clipPathElement.clipPathUnits.baseVal is SVGUnitTypes.SVG_UNIT_TYPE_OBJECTBOUNDINGBOX
 PASS successfullyParsed is true
 
diff --git a/LayoutTests/svg/dom/SVGException-obsolete-expected.txt b/LayoutTests/svg/dom/SVGException-obsolete-expected.txt
new file mode 100644 (file)
index 0000000..e9dc580
--- /dev/null
@@ -0,0 +1,10 @@
+Tests that the obsolete SVGException is not exposed.
+
+On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE".
+
+
+PASS window.SVGException is undefined
+PASS successfullyParsed is true
+
+TEST COMPLETE
+
diff --git a/LayoutTests/svg/dom/SVGException-obsolete.html b/LayoutTests/svg/dom/SVGException-obsolete.html
new file mode 100644 (file)
index 0000000..8b928b3
--- /dev/null
@@ -0,0 +1,11 @@
+<!DOCTYPE html>
+<html>
+<body>
+<script src="../../resources/js-test.js"></script>
+<script>
+description("Tests that the obsolete SVGException is not exposed.");
+
+shouldBe("window.SVGException", "undefined");
+</script>
+</body>
+</html>
index b552eaa..b0adef2 100644 (file)
@@ -192,7 +192,7 @@ PASS parseFloat(m.e) is 10
 PASS parseFloat(m.f) is 20
 
 Test throwing exception from inverse
-PASS m.inverse() threw exception SVG_MATRIX_NOT_INVERTABLE (DOM SVG Exception 2): An attempt was made to invert a matrix that is not invertible..
+PASS m.inverse() threw exception InvalidStateError: Matrix is not invertible.
 
 PASS successfullyParsed is true
 
index 381c9c8..e358e37 100644 (file)
@@ -4,40 +4,40 @@ On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE
 
 
 PASS svgList.getItem(index) threw exception IndexSizeError: The index is not in the allowed range..
-PASS svgList.insertItemBefore(null, index) threw exception SVG_WRONG_TYPE_ERR (DOM SVG Exception): An object of the wrong type was passed to an operation..
+PASS svgList.insertItemBefore(null, index) threw exception TypeError: Argument 1 ('newItem') to SVGPathSegList.insertItemBefore must be an instance of SVGPathSeg.
 PASS svgList.insertItemBefore(seg, index) is seg
 PASS svgList.replaceItem(seg, index) threw exception IndexSizeError: The index is not in the allowed range..
-PASS svgList.replaceItem(null, index) threw exception SVG_WRONG_TYPE_ERR (DOM SVG Exception): An object of the wrong type was passed to an operation..
+PASS svgList.replaceItem(null, index) threw exception TypeError: Argument 1 ('newItem') to SVGPathSegList.replaceItem must be an instance of SVGPathSeg.
 PASS svgList.removeItem(index) threw exception IndexSizeError: The index is not in the allowed range..
 PASS svgList.getItem(index) threw exception IndexSizeError: The index is not in the allowed range..
-PASS svgList.insertItemBefore(null, index) threw exception SVG_WRONG_TYPE_ERR (DOM SVG Exception): An object of the wrong type was passed to an operation..
+PASS svgList.insertItemBefore(null, index) threw exception TypeError: Argument 1 ('newItem') to SVGPathSegList.insertItemBefore must be an instance of SVGPathSeg.
 PASS svgList.insertItemBefore(seg, index) is seg
 PASS svgList.replaceItem(seg, index) threw exception IndexSizeError: The index is not in the allowed range..
-PASS svgList.replaceItem(null, index) threw exception SVG_WRONG_TYPE_ERR (DOM SVG Exception): An object of the wrong type was passed to an operation..
+PASS svgList.replaceItem(null, index) threw exception TypeError: Argument 1 ('newItem') to SVGPathSegList.replaceItem must be an instance of SVGPathSeg.
 PASS svgList.removeItem(index) threw exception IndexSizeError: The index is not in the allowed range..
 PASS svgList.getItem(index) threw exception IndexSizeError: The index is not in the allowed range..
-PASS svgList.insertItemBefore(null, index) threw exception SVG_WRONG_TYPE_ERR (DOM SVG Exception): An object of the wrong type was passed to an operation..
+PASS svgList.insertItemBefore(null, index) threw exception TypeError: Argument 1 ('newItem') to SVGPathSegList.insertItemBefore must be an instance of SVGPathSeg.
 PASS svgList.insertItemBefore(seg, index) is seg
 PASS svgList.replaceItem(seg, index) threw exception IndexSizeError: The index is not in the allowed range..
-PASS svgList.replaceItem(null, index) threw exception SVG_WRONG_TYPE_ERR (DOM SVG Exception): An object of the wrong type was passed to an operation..
+PASS svgList.replaceItem(null, index) threw exception TypeError: Argument 1 ('newItem') to SVGPathSegList.replaceItem must be an instance of SVGPathSeg.
 PASS svgList.removeItem(index) threw exception IndexSizeError: The index is not in the allowed range..
 PASS svgList.getItem(index) threw exception IndexSizeError: The index is not in the allowed range..
-PASS svgList.insertItemBefore(null, index) threw exception SVG_WRONG_TYPE_ERR (DOM SVG Exception): An object of the wrong type was passed to an operation..
+PASS svgList.insertItemBefore(null, index) threw exception TypeError: Argument 1 ('newItem') to SVGPathSegList.insertItemBefore must be an instance of SVGPathSeg.
 PASS svgList.insertItemBefore(seg, index) is seg
 PASS svgList.replaceItem(seg, index) threw exception IndexSizeError: The index is not in the allowed range..
-PASS svgList.replaceItem(null, index) threw exception SVG_WRONG_TYPE_ERR (DOM SVG Exception): An object of the wrong type was passed to an operation..
+PASS svgList.replaceItem(null, index) threw exception TypeError: Argument 1 ('newItem') to SVGPathSegList.replaceItem must be an instance of SVGPathSeg.
 PASS svgList.removeItem(index) threw exception IndexSizeError: The index is not in the allowed range..
 PASS svgList.getItem(index) threw exception IndexSizeError: The index is not in the allowed range..
-PASS svgList.insertItemBefore(null, index) threw exception SVG_WRONG_TYPE_ERR (DOM SVG Exception): An object of the wrong type was passed to an operation..
+PASS svgList.insertItemBefore(null, index) threw exception TypeError: Argument 1 ('newItem') to SVGPathSegList.insertItemBefore must be an instance of SVGPathSeg.
 PASS svgList.insertItemBefore(seg, index) is seg
 PASS svgList.replaceItem(seg, index) threw exception IndexSizeError: The index is not in the allowed range..
-PASS svgList.replaceItem(null, index) threw exception SVG_WRONG_TYPE_ERR (DOM SVG Exception): An object of the wrong type was passed to an operation..
+PASS svgList.replaceItem(null, index) threw exception TypeError: Argument 1 ('newItem') to SVGPathSegList.replaceItem must be an instance of SVGPathSeg.
 PASS svgList.removeItem(index) threw exception IndexSizeError: The index is not in the allowed range..
 PASS svgList.getItem(index) threw exception IndexSizeError: The index is not in the allowed range..
-PASS svgList.insertItemBefore(null, index) threw exception SVG_WRONG_TYPE_ERR (DOM SVG Exception): An object of the wrong type was passed to an operation..
+PASS svgList.insertItemBefore(null, index) threw exception TypeError: Argument 1 ('newItem') to SVGPathSegList.insertItemBefore must be an instance of SVGPathSeg.
 PASS svgList.insertItemBefore(seg, index) is seg
 PASS svgList.replaceItem(seg, index) threw exception IndexSizeError: The index is not in the allowed range..
-PASS svgList.replaceItem(null, index) threw exception SVG_WRONG_TYPE_ERR (DOM SVG Exception): An object of the wrong type was passed to an operation..
+PASS svgList.replaceItem(null, index) threw exception TypeError: Argument 1 ('newItem') to SVGPathSegList.replaceItem must be an instance of SVGPathSeg.
 PASS svgList.removeItem(index) threw exception IndexSizeError: The index is not in the allowed range..
 PASS successfullyParsed is true
 
index a286221..29d52f6 100644 (file)
@@ -1,2 +1,2 @@
-CONSOLE MESSAGE: line 14: SVG_INVALID_VALUE_ERR (DOM SVG Exception 1): An invalid value was passed to an operation or assigned to an attribute.
+CONSOLE MESSAGE: line 14: TypeError: Type error
 PASS: Invalid blend modes do not trigger a crash. 
index 8d3c64a..e39a6bf 100644 (file)
@@ -1,2 +1,2 @@
-ALERT: SVG_INVALID_VALUE_ERR (DOM SVG Exception 1): An invalid value was passed to an operation or assigned to an attribute.
+ALERT: TypeError: Type error
 PASS
index 8d3c64a..e39a6bf 100644 (file)
@@ -1,2 +1,2 @@
-ALERT: SVG_INVALID_VALUE_ERR (DOM SVG Exception 1): An invalid value was passed to an operation or assigned to an attribute.
+ALERT: TypeError: Type error
 PASS
index 663f3fd..548bc00 100644 (file)
@@ -1,5 +1,3 @@
 accessibility/AccessibilityAllInOne.cpp -crlf
-bindings/js/JSExceptionBase.cpp -crlf
-bindings/js/JSExceptionBase.h -crlf
 platform/network/win/NetworkStateNotifierWin.cpp -crlf
 platform/wx/wxcode/non-kerned-drawing.h -crlf
index ba1ee92..c7571bc 100644 (file)
@@ -738,7 +738,6 @@ set(WebCore_SVG_IDL_FILES
     svg/SVGDocument.idl
     svg/SVGElement.idl
     svg/SVGEllipseElement.idl
-    svg/SVGException.idl
     svg/SVGExternalResourcesRequired.idl
     svg/SVGFEBlendElement.idl
     svg/SVGFEColorMatrixElement.idl
@@ -1187,7 +1186,6 @@ set(WebCore_SOURCES
     bindings/js/JSEventCustom.cpp
     bindings/js/JSEventListener.cpp
     bindings/js/JSEventTargetCustom.cpp
-    bindings/js/JSExceptionBase.cpp
     bindings/js/JSHTMLCanvasElementCustom.cpp
     bindings/js/JSHTMLCollectionCustom.cpp
     bindings/js/JSHTMLDocumentCustom.cpp
@@ -2830,7 +2828,6 @@ set(WebCore_SOURCES
     svg/SVGDocumentExtensions.cpp
     svg/SVGElement.cpp
     svg/SVGEllipseElement.cpp
-    svg/SVGException.cpp
     svg/SVGExternalResourcesRequired.cpp
     svg/SVGFEBlendElement.cpp
     svg/SVGFEColorMatrixElement.cpp
index 4d95e92..3912e5e 100644 (file)
@@ -1,5 +1,43 @@
 2017-07-20  Chris Dumez  <cdumez@apple.com>
 
+        Drop legacy SVGException type
+        https://bugs.webkit.org/show_bug.cgi?id=174695
+
+        Reviewed by Darin Adler.
+
+        Drop legacy SVGException type and use DOMException instead, as per the latest
+        SVG specification. Both Chrome and Firefox no longer expose the SVGException
+        type.
+
+        * CMakeLists.txt:
+        * DerivedSources.cpp:
+        * DerivedSources.make:
+        * WebCore.xcodeproj/project.pbxproj:
+        * bindings/js/JSDOMExceptionHandling.cpp:
+        (WebCore::createDOMException):
+        * bindings/js/JSExceptionBase.cpp:
+        (WebCore::toExceptionBase):
+        * dom/DOMExceptions.in:
+        * svg/SVGAllInOne.cpp:
+        * svg/SVGCircleElement.cpp:
+        * svg/SVGException.cpp: Removed.
+        * svg/SVGException.h: Removed.
+        * svg/SVGException.idl: Removed.
+        * svg/SVGGraphicsElement.idl:
+        * svg/SVGLocatable.cpp:
+        (WebCore::SVGLocatable::getTransformToElement):
+        * svg/SVGMatrixValue.h:
+        * svg/SVGPathSegList.cpp:
+        (WebCore::SVGPathSegList::getItem):
+        (WebCore::SVGPathSegList::replaceItem):
+        (WebCore::SVGPathSegList::removeItem):
+        * svg/SVGPathSegList.h:
+        * svg/SVGPathSegList.idl:
+        * svg/properties/SVGAnimatedEnumerationPropertyTearOff.h:
+        * svg/properties/SVGListProperty.h:
+
+2017-07-20  Chris Dumez  <cdumez@apple.com>
+
         Hook up ITP quirks to the needsSiteSpecificQuirks setting
         https://bugs.webkit.org/show_bug.cgi?id=174691
 
index 85260bf..aba5c69 100644 (file)
 #include "JSSVGDocument.cpp"
 #include "JSSVGElement.cpp"
 #include "JSSVGEllipseElement.cpp"
-#include "JSSVGException.cpp"
 #include "JSSVGExternalResourcesRequired.cpp"
 #include "JSSVGFEBlendElement.cpp"
 #include "JSSVGFEColorMatrixElement.cpp"
index 03234cf..2827302 100644 (file)
@@ -695,7 +695,6 @@ JS_BINDING_IDLS = \
     $(WebCore)/svg/SVGDocument.idl \
     $(WebCore)/svg/SVGElement.idl \
     $(WebCore)/svg/SVGEllipseElement.idl \
-    $(WebCore)/svg/SVGException.idl \
     $(WebCore)/svg/SVGExternalResourcesRequired.idl \
     $(WebCore)/svg/SVGFEBlendElement.idl \
     $(WebCore)/svg/SVGFEColorMatrixElement.idl \
index c4881af..b0349ac 100644 (file)
                31FB1A65120A5D3F00DC02A0 /* JSDeviceMotionEvent.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 31FB1A63120A5D3F00DC02A0 /* JSDeviceMotionEvent.cpp */; };
                31FB1A66120A5D3F00DC02A0 /* JSDeviceMotionEvent.h in Headers */ = {isa = PBXBuildFile; fileRef = 31FB1A64120A5D3F00DC02A0 /* JSDeviceMotionEvent.h */; };
                31FE6DFA15004C2A0004EBC4 /* NotificationPermissionCallback.h in Headers */ = {isa = PBXBuildFile; fileRef = 31EC1DAC14FF26EA00C94662 /* NotificationPermissionCallback.h */; settings = {ATTRIBUTES = (Private, ); }; };
-               3314ACEB10892086000F0E56 /* JSExceptionBase.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3314ACE910892086000F0E56 /* JSExceptionBase.cpp */; };
-               3314ACEC10892086000F0E56 /* JSExceptionBase.h in Headers */ = {isa = PBXBuildFile; fileRef = 3314ACEA10892086000F0E56 /* JSExceptionBase.h */; };
                33503C9A10179A74003B47E1 /* NotificationClient.h in Headers */ = {isa = PBXBuildFile; fileRef = 33503C9910179A74003B47E1 /* NotificationClient.h */; settings = {ATTRIBUTES = (Private, ); }; };
                33503CA310179AD7003B47E1 /* JSNotification.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 33503C9F10179AD7003B47E1 /* JSNotification.cpp */; };
                33503CA410179AD7003B47E1 /* JSNotification.h in Headers */ = {isa = PBXBuildFile; fileRef = 33503CA010179AD7003B47E1 /* JSNotification.h */; settings = {ATTRIBUTES = (Private, ); }; };
                978AD67414130A8D00C7CAE3 /* HTMLSpanElement.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 978AD67114130A8D00C7CAE3 /* HTMLSpanElement.cpp */; };
                978AD67514130A8D00C7CAE3 /* HTMLSpanElement.h in Headers */ = {isa = PBXBuildFile; fileRef = 978AD67214130A8D00C7CAE3 /* HTMLSpanElement.h */; };
                978D07BE145A0F6C0096908D /* DOMCoreException.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 978D07BD145A0F6C0096908D /* DOMCoreException.cpp */; };
-               978D07CA145A10160096908D /* SVGException.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 978D07C9145A10160096908D /* SVGException.cpp */; };
                979F43D31075E44A0000F83B /* NavigationScheduler.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 979F43D11075E44A0000F83B /* NavigationScheduler.cpp */; };
                979F43D41075E44A0000F83B /* NavigationScheduler.h in Headers */ = {isa = PBXBuildFile; fileRef = 979F43D21075E44A0000F83B /* NavigationScheduler.h */; settings = {ATTRIBUTES = (Private, ); }; };
                97AA3CA5145237CC003E1DA6 /* EventTargetHeaders.h in Headers */ = {isa = PBXBuildFile; fileRef = 97AA3CA3145237CC003E1DA6 /* EventTargetHeaders.h */; };
                B22279B70D00BF220071B782 /* SVGElement.h in Headers */ = {isa = PBXBuildFile; fileRef = B22278210D00BF1F0071B782 /* SVGElement.h */; };
                B22279BF0D00BF220071B782 /* SVGEllipseElement.cpp in Sources */ = {isa = PBXBuildFile; fileRef = B22278290D00BF1F0071B782 /* SVGEllipseElement.cpp */; };
                B22279C00D00BF220071B782 /* SVGEllipseElement.h in Headers */ = {isa = PBXBuildFile; fileRef = B222782A0D00BF1F0071B782 /* SVGEllipseElement.h */; };
-               B22279C20D00BF220071B782 /* SVGException.h in Headers */ = {isa = PBXBuildFile; fileRef = B222782C0D00BF1F0071B782 /* SVGException.h */; };
                B22279C40D00BF220071B782 /* SVGExternalResourcesRequired.cpp in Sources */ = {isa = PBXBuildFile; fileRef = B222782E0D00BF1F0071B782 /* SVGExternalResourcesRequired.cpp */; };
                B22279C50D00BF220071B782 /* SVGExternalResourcesRequired.h in Headers */ = {isa = PBXBuildFile; fileRef = B222782F0D00BF1F0071B782 /* SVGExternalResourcesRequired.h */; };
                B22279C70D00BF220071B782 /* SVGFEBlendElement.cpp in Sources */ = {isa = PBXBuildFile; fileRef = B22278310D00BF1F0071B782 /* SVGFEBlendElement.cpp */; };
                B25599A30D00D8BA00BB825C /* SVGImage.cpp in Sources */ = {isa = PBXBuildFile; fileRef = B255990B0D00D8B900BB825C /* SVGImage.cpp */; };
                B25599A40D00D8BA00BB825C /* SVGImage.h in Headers */ = {isa = PBXBuildFile; fileRef = B255990C0D00D8B900BB825C /* SVGImage.h */; };
                B25599A50D00D8BA00BB825C /* EmptyClients.h in Headers */ = {isa = PBXBuildFile; fileRef = B255990D0D00D8B900BB825C /* EmptyClients.h */; };
-               B266CD4D0C3AEC6500EB08D2 /* JSSVGException.cpp in Sources */ = {isa = PBXBuildFile; fileRef = B266CD4B0C3AEC6500EB08D2 /* JSSVGException.cpp */; };
-               B266CD4E0C3AEC6500EB08D2 /* JSSVGException.h in Headers */ = {isa = PBXBuildFile; fileRef = B266CD4C0C3AEC6500EB08D2 /* JSSVGException.h */; };
                B27535580B053814002CE64F /* TransformationMatrixCG.cpp in Sources */ = {isa = PBXBuildFile; fileRef = B275352A0B053814002CE64F /* TransformationMatrixCG.cpp */; };
                B27535590B053814002CE64F /* FloatPointCG.cpp in Sources */ = {isa = PBXBuildFile; fileRef = B275352B0B053814002CE64F /* FloatPointCG.cpp */; };
                B275355A0B053814002CE64F /* FloatRectCG.cpp in Sources */ = {isa = PBXBuildFile; fileRef = B275352C0B053814002CE64F /* FloatRectCG.cpp */; };
                31FB1A56120A5D0600DC02A0 /* DeviceMotionEvent.idl */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = DeviceMotionEvent.idl; sourceTree = "<group>"; };
                31FB1A63120A5D3F00DC02A0 /* JSDeviceMotionEvent.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = JSDeviceMotionEvent.cpp; sourceTree = "<group>"; };
                31FB1A64120A5D3F00DC02A0 /* JSDeviceMotionEvent.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = JSDeviceMotionEvent.h; sourceTree = "<group>"; };
-               3314ACE910892086000F0E56 /* JSExceptionBase.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = JSExceptionBase.cpp; sourceTree = "<group>"; };
-               3314ACEA10892086000F0E56 /* JSExceptionBase.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = JSExceptionBase.h; sourceTree = "<group>"; };
                331FF67DE197B57393C46A7F /* RenderMathMLPadded.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RenderMathMLPadded.h; sourceTree = "<group>"; };
                331FF67DE197B57393C46AA7 /* RenderMathMLSpace.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RenderMathMLSpace.h; sourceTree = "<group>"; };
                333F704E0FB49CA2008E12A6 /* Notification.idl */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = Notification.idl; sourceTree = "<group>"; };
                978AD67214130A8D00C7CAE3 /* HTMLSpanElement.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = HTMLSpanElement.h; sourceTree = "<group>"; };
                978AD67314130A8D00C7CAE3 /* HTMLSpanElement.idl */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = HTMLSpanElement.idl; sourceTree = "<group>"; };
                978D07BD145A0F6C0096908D /* DOMCoreException.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = DOMCoreException.cpp; sourceTree = "<group>"; };
-               978D07C9145A10160096908D /* SVGException.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = SVGException.cpp; sourceTree = "<group>"; };
                979F43D11075E44A0000F83B /* NavigationScheduler.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = NavigationScheduler.cpp; sourceTree = "<group>"; };
                979F43D21075E44A0000F83B /* NavigationScheduler.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = NavigationScheduler.h; sourceTree = "<group>"; };
                97AA3CA3145237CC003E1DA6 /* EventTargetHeaders.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = EventTargetHeaders.h; sourceTree = "<group>"; };
                B22278290D00BF1F0071B782 /* SVGEllipseElement.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = SVGEllipseElement.cpp; sourceTree = "<group>"; };
                B222782A0D00BF1F0071B782 /* SVGEllipseElement.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = SVGEllipseElement.h; sourceTree = "<group>"; };
                B222782B0D00BF1F0071B782 /* SVGEllipseElement.idl */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = text; path = SVGEllipseElement.idl; sourceTree = "<group>"; };
-               B222782C0D00BF1F0071B782 /* SVGException.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = SVGException.h; sourceTree = "<group>"; };
-               B222782D0D00BF1F0071B782 /* SVGException.idl */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = text; path = SVGException.idl; sourceTree = "<group>"; };
                B222782E0D00BF1F0071B782 /* SVGExternalResourcesRequired.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = SVGExternalResourcesRequired.cpp; sourceTree = "<group>"; };
                B222782F0D00BF1F0071B782 /* SVGExternalResourcesRequired.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = SVGExternalResourcesRequired.h; sourceTree = "<group>"; };
                B22278300D00BF1F0071B782 /* SVGExternalResourcesRequired.idl */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = text; path = SVGExternalResourcesRequired.idl; sourceTree = "<group>"; };
                B255990B0D00D8B900BB825C /* SVGImage.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = SVGImage.cpp; sourceTree = "<group>"; };
                B255990C0D00D8B900BB825C /* SVGImage.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = SVGImage.h; sourceTree = "<group>"; };
                B255990D0D00D8B900BB825C /* EmptyClients.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = EmptyClients.h; sourceTree = "<group>"; };
-               B266CD4B0C3AEC6500EB08D2 /* JSSVGException.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = JSSVGException.cpp; sourceTree = "<group>"; };
-               B266CD4C0C3AEC6500EB08D2 /* JSSVGException.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = JSSVGException.h; sourceTree = "<group>"; };
                B275352A0B053814002CE64F /* TransformationMatrixCG.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = TransformationMatrixCG.cpp; sourceTree = "<group>"; };
                B275352B0B053814002CE64F /* FloatPointCG.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = FloatPointCG.cpp; sourceTree = "<group>"; };
                B275352C0B053814002CE64F /* FloatRectCG.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = FloatRectCG.cpp; sourceTree = "<group>"; };
                                B222F69B0AB771B80022EFAD /* JSSVGElement.h */,
                                B2FA3C800AB75A6E000E5AC4 /* JSSVGEllipseElement.cpp */,
                                B2FA3C810AB75A6E000E5AC4 /* JSSVGEllipseElement.h */,
-                               B266CD4B0C3AEC6500EB08D2 /* JSSVGException.cpp */,
-                               B266CD4C0C3AEC6500EB08D2 /* JSSVGException.h */,
                                B2FA3C820AB75A6E000E5AC4 /* JSSVGFEBlendElement.cpp */,
                                B2FA3C830AB75A6E000E5AC4 /* JSSVGFEBlendElement.h */,
                                B2FA3C840AB75A6E000E5AC4 /* JSSVGFEColorMatrixElement.cpp */,
                                B22278290D00BF1F0071B782 /* SVGEllipseElement.cpp */,
                                B222782A0D00BF1F0071B782 /* SVGEllipseElement.h */,
                                B222782B0D00BF1F0071B782 /* SVGEllipseElement.idl */,
-                               978D07C9145A10160096908D /* SVGException.cpp */,
-                               B222782C0D00BF1F0071B782 /* SVGException.h */,
-                               B222782D0D00BF1F0071B782 /* SVGException.idl */,
                                B222782E0D00BF1F0071B782 /* SVGExternalResourcesRequired.cpp */,
                                B222782F0D00BF1F0071B782 /* SVGExternalResourcesRequired.h */,
                                B22278300D00BF1F0071B782 /* SVGExternalResourcesRequired.idl */,
                                7C45C9CB1E3E8E4900AAB558 /* JSDOMWrapperCache.cpp */,
                                7C45C9C81E3E8B5100AAB558 /* JSDOMWrapperCache.h */,
                                E3A5872E1DC3F52600F607A6 /* JSDynamicDowncast.h */,
-                               3314ACE910892086000F0E56 /* JSExceptionBase.cpp */,
-                               3314ACEA10892086000F0E56 /* JSExceptionBase.h */,
                                8F934D841189F1EE00508D5D /* JSMainThreadExecState.cpp */,
                                8F934D831189F1EE00508D5D /* JSMainThreadExecState.h */,
                                B56576E417DA599F00A56BDC /* JSMainThreadExecStateInstrumentation.h */,
                                E0FEF372B37C53EAC1C1FBEE /* JSEventSource.h in Headers */,
                                5FC7DC26CFE2563200B85AE4 /* JSEventTarget.h in Headers */,
                                46B63F6C1C6E8D19002E914B /* JSEventTargetCustom.h in Headers */,
-                               3314ACEC10892086000F0E56 /* JSExceptionBase.h in Headers */,
                                724ED3321A3A8B2300F5F13C /* JSEXTBlendMinMax.h in Headers */,
                                5C4304B6191AEF46000E2BC0 /* JSEXTShaderTextureLOD.h in Headers */,
                                7728698414FD9ADA00F484DC /* JSEXTTextureFilterAnisotropic.h in Headers */,
                                B222F69D0AB771B80022EFAD /* JSSVGElement.h in Headers */,
                                8542A7990AE5C94400DF58DF /* JSSVGElementWrapperFactory.h in Headers */,
                                B2FA3D690AB75A6F000E5AC4 /* JSSVGEllipseElement.h in Headers */,
-                               B266CD4E0C3AEC6500EB08D2 /* JSSVGException.h in Headers */,
                                B2FA3D6B0AB75A6F000E5AC4 /* JSSVGFEBlendElement.h in Headers */,
                                B2FA3D6D0AB75A6F000E5AC4 /* JSSVGFEColorMatrixElement.h in Headers */,
                                B2FA3D6F0AB75A6F000E5AC4 /* JSSVGFEComponentTransferElement.h in Headers */,
                                081AA8DA1111237E002AB06E /* SVGElementRareData.h in Headers */,
                                B562DB6117D3CD660010AF96 /* SVGElementTypeHelpers.h in Headers */,
                                B22279C00D00BF220071B782 /* SVGEllipseElement.h in Headers */,
-                               B22279C20D00BF220071B782 /* SVGException.h in Headers */,
                                B22279C50D00BF220071B782 /* SVGExternalResourcesRequired.h in Headers */,
                                B22279C80D00BF220071B782 /* SVGFEBlendElement.h in Headers */,
                                B22279CB0D00BF220071B782 /* SVGFEColorMatrixElement.h in Headers */,
                                E0FEF372B47C53EAC1C1FBEE /* JSEventSource.cpp in Sources */,
                                C6A703325C9D0B6CDCBC4D77 /* JSEventTarget.cpp in Sources */,
                                BC6090200E91B8EC000C68B5 /* JSEventTargetCustom.cpp in Sources */,
-                               3314ACEB10892086000F0E56 /* JSExceptionBase.cpp in Sources */,
                                724ED3311A3A8B2300F5F13C /* JSEXTBlendMinMax.cpp in Sources */,
                                72F1ADA51A390B9F00014E18 /* JSEXTFragDepth.cpp in Sources */,
                                5C4304B5191AEF46000E2BC0 /* JSEXTShaderTextureLOD.cpp in Sources */,
                                B222F69C0AB771B80022EFAD /* JSSVGElement.cpp in Sources */,
                                8542A79A0AE5C94400DF58DF /* JSSVGElementWrapperFactory.cpp in Sources */,
                                B2FA3D680AB75A6F000E5AC4 /* JSSVGEllipseElement.cpp in Sources */,
-                               B266CD4D0C3AEC6500EB08D2 /* JSSVGException.cpp in Sources */,
                                B2FA3D6A0AB75A6F000E5AC4 /* JSSVGFEBlendElement.cpp in Sources */,
                                B2FA3D6C0AB75A6F000E5AC4 /* JSSVGFEColorMatrixElement.cpp in Sources */,
                                B2FA3D6E0AB75A6F000E5AC4 /* JSSVGFEComponentTransferElement.cpp in Sources */,
                                B22279B60D00BF220071B782 /* SVGElement.cpp in Sources */,
                                A833C8520A2CF52800D57664 /* SVGElementFactory.cpp in Sources */,
                                B22279BF0D00BF220071B782 /* SVGEllipseElement.cpp in Sources */,
-                               978D07CA145A10160096908D /* SVGException.cpp in Sources */,
                                B22279C40D00BF220071B782 /* SVGExternalResourcesRequired.cpp in Sources */,
                                B22279C70D00BF220071B782 /* SVGFEBlendElement.cpp in Sources */,
                                B22279CA0D00BF220071B782 /* SVGFEColorMatrixElement.cpp in Sources */,
index 86beed6..6d409eb 100644 (file)
@@ -62,7 +62,6 @@
 #include "JSEventCustom.cpp"
 #include "JSEventListener.cpp"
 #include "JSEventTargetCustom.cpp"
-#include "JSExceptionBase.cpp"
 #include "JSHTMLCanvasElementCustom.cpp"
 #include "JSHTMLCollectionCustom.cpp"
 #include "JSHTMLDocumentCustom.cpp"
index ecd8450..5166ca4 100644 (file)
@@ -30,7 +30,7 @@
 #include "JSDOMPromiseDeferred.h"
 #include "JSDOMWindow.h"
 #include "JSDynamicDowncast.h"
-#include "JSExceptionBase.h"
+#include "ScriptExecutionContext.h"
 #include <inspector/ScriptCallStack.h>
 #include <inspector/ScriptCallStackFactory.h>
 #include <runtime/ErrorHandlingScope.h>
@@ -62,8 +62,8 @@ void reportException(ExecState* exec, JSValue exceptionValue, CachedScript* cach
 
 String retrieveErrorMessage(ExecState& state, VM& vm, JSValue exception, CatchScope& catchScope)
 {
-    if (auto* exceptionBase = toExceptionBase(vm, exception))
-        return exceptionBase->toString();
+    if (auto* domException = JSDOMCoreException::toWrapped(vm, exception))
+        return domException->toString();
 
     // FIXME: <http://webkit.org/b/115087> Web Inspector: WebCore::reportException should not evaluate JavaScript handling exceptions
     // If this is a custom exception object, call toString on it to try and get a nice string representation for the exception.
@@ -174,9 +174,6 @@ static JSValue createDOMException(ExecState* exec, ExceptionCode ec, const Strin
 #endif
         errorObject = toJS(exec, globalObject, DOMCoreException::create(description));
         break;
-    case SVGExceptionType:
-        errorObject = toJS(exec, globalObject, SVGException::create(description));
-        break;
     }
     
     ASSERT(errorObject);
diff --git a/Source/WebCore/bindings/js/JSExceptionBase.cpp b/Source/WebCore/bindings/js/JSExceptionBase.cpp
deleted file mode 100644 (file)
index 49a3fd9..0000000
+++ /dev/null
@@ -1,44 +0,0 @@
-/*
- * Copyright (C) 2009 Apple Inc. All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- *    notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- *    notice, this list of conditions and the following disclaimer in the
- *    documentation and/or other materials provided with the distribution.
- *
- * THIS SOFTWARE IS PROVIDED BY APPLE INC. ``AS IS'' AND ANY
- * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
- * PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL APPLE INC. OR
- * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
- * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
- * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
- * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
- * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- */
-
-#include "config.h"
-#include "JSExceptionBase.h"
-
-#include "JSDOMCoreException.h"
-#include "JSSVGException.h"
-
-namespace WebCore {
-
-ExceptionBase* toExceptionBase(JSC::VM& vm, JSC::JSValue value)
-{
-    if (DOMCoreException* domException = JSDOMCoreException::toWrapped(vm, value))
-        return reinterpret_cast<ExceptionBase*>(domException);
-    if (SVGException* svgException = JSSVGException::toWrapped(vm, value))
-        return reinterpret_cast<ExceptionBase*>(svgException);
-
-    return nullptr;
-}
-
-} // namespace WebCore
diff --git a/Source/WebCore/bindings/js/JSExceptionBase.h b/Source/WebCore/bindings/js/JSExceptionBase.h
deleted file mode 100644 (file)
index d88141e..0000000
+++ /dev/null
@@ -1,39 +0,0 @@
-/*
- * Copyright (C) 2009 Apple Inc. All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- *    notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- *    notice, this list of conditions and the following disclaimer in the
- *    documentation and/or other materials provided with the distribution.
- *
- * THIS SOFTWARE IS PROVIDED BY APPLE INC. ``AS IS'' AND ANY
- * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
- * PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL APPLE INC. OR
- * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
- * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
- * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
- * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
- * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- */
-
-#pragma once
-
-namespace JSC {
-class JSValue;
-class VM;
-}
-
-namespace WebCore {
-
-class ExceptionBase;
-
-ExceptionBase* toExceptionBase(JSC::VM&, JSC::JSValue);
-
-} // namespace WebCore
index e520f05..fe9d634 100644 (file)
@@ -1,5 +1,3 @@
 namespace=Exception
 
 DOMCoreException
-SVGException
-
index d4aca42..01a8543 100644 (file)
@@ -64,7 +64,6 @@
 #include "SVGDocumentExtensions.cpp"
 #include "SVGElement.cpp"
 #include "SVGEllipseElement.cpp"
-#include "SVGException.cpp"
 #include "SVGExternalResourcesRequired.cpp"
 #include "SVGFEBlendElement.cpp"
 #include "SVGFEColorMatrixElement.cpp"
index db8364f..46b2aae 100644 (file)
@@ -25,7 +25,6 @@
 #include "RenderSVGEllipse.h"
 #include "RenderSVGPath.h"
 #include "RenderSVGResource.h"
-#include "SVGException.h"
 #include "SVGLengthValue.h"
 #include "SVGNames.h"
 
diff --git a/Source/WebCore/svg/SVGException.cpp b/Source/WebCore/svg/SVGException.cpp
deleted file mode 100644 (file)
index 7614cbd..0000000
+++ /dev/null
@@ -1,63 +0,0 @@
-/*
- * Copyright (C) 2011 Google Inc. All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- *
- * 1.  Redistributions of source code must retain the above copyright
- *     notice, this list of conditions and the following disclaimer.
- * 2.  Redistributions in binary form must reproduce the above copyright
- *     notice, this list of conditions and the following disclaimer in the
- *     documentation and/or other materials provided with the distribution.
- * 3.  Neither the name of Apple Inc. ("Apple") nor the names of
- *     its contributors may be used to endorse or promote products derived
- *     from this software without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY GOOGLE AND ITS CONTRIBUTORS "AS IS" AND ANY
- * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
- * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
- * DISCLAIMED. IN NO EVENT SHALL APPLE OR ITS CONTRIBUTORS BE LIABLE FOR ANY
- * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
- * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
- * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
- * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
- * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- */
-
-#include "config.h"
-#include "SVGException.h"
-
-#include "ExceptionCodeDescription.h"
-
-namespace WebCore {
-
-static struct SVGExceptionNameDescription {
-    const char* const name;
-    const char* const description;
-} svgExceptions[] = {
-    { "SVG_WRONG_TYPE_ERR", "An object of the wrong type was passed to an operation." },
-    { "SVG_INVALID_VALUE_ERR", "An invalid value was passed to an operation or assigned to an attribute." },
-    { "SVG_MATRIX_NOT_INVERTABLE", "An attempt was made to invert a matrix that is not invertible." }
-};
-
-bool SVGException::initializeDescription(ExceptionCode ec, ExceptionCodeDescription* description)
-{
-    if (ec < SVGExceptionOffset || ec > SVGExceptionMax)
-        return false;
-
-    description->typeName = "DOM SVG";
-    description->code = ec - SVGExceptionOffset;
-    description->type = SVGExceptionType;
-
-    size_t tableSize = WTF_ARRAY_LENGTH(svgExceptions);
-    size_t tableIndex = ec - SVG_WRONG_TYPE_ERR;
-
-    description->name = tableIndex < tableSize ? svgExceptions[tableIndex].name : nullptr;
-    description->description = tableIndex < tableSize ? svgExceptions[tableIndex].description : nullptr;
-
-    return true;
-}
-
-} // namespace WebCore
diff --git a/Source/WebCore/svg/SVGException.h b/Source/WebCore/svg/SVGException.h
deleted file mode 100644 (file)
index 39e2f44..0000000
+++ /dev/null
@@ -1,52 +0,0 @@
-/*
- * Copyright (C) 2006 Samuel Weinig <sam.weinig@gmail.com>
- * Copyright (C) 2006, 2008 Apple Inc. All rights reserved.
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Library General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
- * Library General Public License for more details.
- *
- * You should have received a copy of the GNU Library General Public License
- * along with this library; see the file COPYING.LIB.  If not, write to
- * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
- * Boston, MA 02110-1301, USA.
- */
-
-#pragma once
-
-#include "ExceptionBase.h"
-
-namespace WebCore {
-
-class SVGException final : public ExceptionBase {
-public:
-    static Ref<SVGException> create(const ExceptionCodeDescription& description)
-    {
-        return adoptRef(*new SVGException(description));
-    }
-
-    static const int SVGExceptionOffset = 300;
-    static const int SVGExceptionMax = 399;
-
-    enum SVGExceptionCode {
-        SVG_WRONG_TYPE_ERR = SVGExceptionOffset,
-        SVG_INVALID_VALUE_ERR = SVGExceptionOffset + 1,
-        SVG_MATRIX_NOT_INVERTABLE = SVGExceptionOffset + 2
-    };
-
-    static bool initializeDescription(ExceptionCode, ExceptionCodeDescription*);
-
-private:
-    SVGException(const ExceptionCodeDescription& description)
-        : ExceptionBase(description)
-    {
-    }
-};
-
-} // namespace WebCore
diff --git a/Source/WebCore/svg/SVGException.idl b/Source/WebCore/svg/SVGException.idl
deleted file mode 100644 (file)
index fa0c118..0000000
+++ /dev/null
@@ -1,35 +0,0 @@
-/*
- * Copyright (C) 2007 Rob Buis <buis@kde.org>
- * Copyright (C) 2007 Apple Inc. All rights reserved.
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Library General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
- * Library General Public License for more details.
- *
- * You should have received a copy of the GNU Library General Public License
- * along with this library; see the file COPYING.LIB.  If not, write to
- * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
- * Boston, MA 02110-1301, USA.
- */
-
-[
-    DoNotCheckConstants,
-    ImplementationLacksVTable,
-] exception SVGException {
-    readonly attribute unsigned short   code;
-    readonly attribute DOMString        name;
-    readonly attribute DOMString        message;
-
-    [NotEnumerable] DOMString toString();
-
-    // SVGExceptionCode
-    const unsigned short SVG_WRONG_TYPE_ERR = 0;
-    const unsigned short SVG_INVALID_VALUE_ERR = 1;
-    const unsigned short SVG_MATRIX_NOT_INVERTABLE = 2;
-};
index f12bb6a..c9cfd73 100644 (file)
@@ -32,6 +32,8 @@ interface SVGGraphicsElement : SVGElement {
     [ImplementedAs=getBBoxForBindings, NewObject] SVGRect getBBox();
     [ImplementedAs=getCTMForBindings, NewObject] SVGMatrix getCTM();
     [ImplementedAs=getScreenCTMForBindings, NewObject] SVGMatrix getScreenCTM();
+
+    // FIXME: This is not in the specification and has been dropped by Blink.
     [MayThrowException, NewObject] SVGMatrix getTransformToElement(optional SVGElement? element = null);
 };
 
index b7fab2d..85eb823 100644 (file)
@@ -23,8 +23,8 @@
 #include "config.h"
 #include "SVGLocatable.h"
 
+#include "ExceptionCode.h"
 #include "RenderElement.h"
-#include "SVGException.h"
 #include "SVGGraphicsElement.h"
 #include "SVGImageElement.h"
 #include "SVGMatrix.h"
@@ -107,7 +107,7 @@ ExceptionOr<Ref<SVGMatrix>> SVGLocatable::getTransformToElement(SVGElement* targ
         if (auto inverse = targetCTM.inverse())
             ctm = inverse.value() * ctm;
         else
-            return Exception { SVGException::SVG_MATRIX_NOT_INVERTABLE };
+            return Exception { INVALID_STATE_ERR, ASCIILiteral("Matrix is not invertible") };
     }
 
     return SVGMatrix::create(ctm);
index e02244b..a9d9de1 100644 (file)
@@ -20,8 +20,8 @@
 #pragma once
 
 #include "AffineTransform.h"
+#include "ExceptionCode.h"
 #include "ExceptionOr.h"
-#include "SVGException.h"
 
 namespace WebCore {
 
@@ -107,13 +107,13 @@ public:
         if (auto inverse = AffineTransform::inverse())
             return SVGMatrixValue { inverse.value() };
         
-        return Exception { SVGException::SVG_MATRIX_NOT_INVERTABLE };
+        return Exception { INVALID_STATE_ERR, ASCIILiteral("Matrix is not invertible") };
     }
 
     ExceptionOr<SVGMatrixValue> rotateFromVector(double x, double y)
     {
         if (!x || !y)
-            return Exception { SVGException::SVG_INVALID_VALUE_ERR };
+            return Exception { TypeError };
 
         AffineTransform copy { *this };
         copy.rotateFromVector(x, y);
index 403ce33..e5ccc9c 100644 (file)
@@ -43,27 +43,23 @@ ExceptionOr<void> SVGPathSegList::clear()
     return Base::clearValues();
 }
 
-ExceptionOr<SVGPathSegList::PtrListItemType> SVGPathSegList::getItem(unsigned index)
+ExceptionOr<RefPtr<SVGPathSeg>> SVGPathSegList::getItem(unsigned index)
 {
     return Base::getItemValues(index);
 }
 
-ExceptionOr<SVGPathSegList::PtrListItemType> SVGPathSegList::replaceItem(PtrListItemType newItem, unsigned index)
+ExceptionOr<RefPtr<SVGPathSeg>> SVGPathSegList::replaceItem(Ref<SVGPathSeg>&& newItem, unsigned index)
 {
-    // Not specified, but FF/Opera do it this way, and it's just sane.
-    if (!newItem)
-        return Exception { SVGException::SVG_WRONG_TYPE_ERR };
-
     if (index < m_values->size()) {
         ListItemType replacedItem = m_values->at(index);
         ASSERT(replacedItem);
         static_cast<SVGPathSegWithContext*>(replacedItem.get())->setContextAndRole(nullptr, PathSegUndefinedRole);
     }
 
-    return Base::replaceItemValues(newItem, index);
+    return Base::replaceItemValues(WTFMove(newItem), index);
 }
 
-ExceptionOr<SVGPathSegList::PtrListItemType> SVGPathSegList::removeItem(unsigned index)
+ExceptionOr<RefPtr<SVGPathSeg>> SVGPathSegList::removeItem(unsigned index)
 {
     auto result = Base::removeItemValues(index);
     if (result.hasException())
index 48ba6a3..4b428ef 100644 (file)
@@ -31,7 +31,6 @@ public:
     using Base = SVGListProperty<SVGPathSegListValues>;
     using AnimatedListPropertyTearOff = SVGAnimatedListPropertyTearOff<SVGPathSegListValues>;
     using ListItemType = SVGPropertyTraits<SVGPathSegListValues>::ListItemType;
-    using PtrListItemType = RefPtr<SVGPathSeg>;
 
     static Ref<SVGPathSegList> create(AnimatedListPropertyTearOff& animatedProperty, SVGPropertyRole role, SVGPathSegRole pathSegRole, SVGPathSegListValues& values, ListWrapperCache& wrappers)
     {
@@ -71,38 +70,26 @@ public:
     // SVGList API
     ExceptionOr<void> clear();
 
-    ExceptionOr<PtrListItemType> initialize(PtrListItemType newItem)
+    ExceptionOr<RefPtr<SVGPathSeg>> initialize(Ref<SVGPathSeg>&& newItem)
     {
-        // Not specified, but FF/Opera do it this way, and it's just sane.
-        if (!newItem)
-            return Exception { SVGException::SVG_WRONG_TYPE_ERR };
-
         clearContextAndRoles();
-        return Base::initializeValues(newItem);
+        return Base::initializeValues(WTFMove(newItem));
     }
 
-    ExceptionOr<PtrListItemType> getItem(unsigned index);
+    ExceptionOr<RefPtr<SVGPathSeg>> getItem(unsigned index);
 
-    ExceptionOr<PtrListItemType> insertItemBefore(PtrListItemType newItem, unsigned index)
+    ExceptionOr<RefPtr<SVGPathSeg>> insertItemBefore(Ref<SVGPathSeg>&& newItem, unsigned index)
     {
-        // Not specified, but FF/Opera do it this way, and it's just sane.
-        if (!newItem)
-            return Exception { SVGException::SVG_WRONG_TYPE_ERR };
-
-        return Base::insertItemBeforeValues(newItem, index);
+        return Base::insertItemBeforeValues(WTFMove(newItem), index);
     }
 
-    ExceptionOr<PtrListItemType> replaceItem(PtrListItemType, unsigned index);
+    ExceptionOr<RefPtr<SVGPathSeg>> replaceItem(Ref<SVGPathSeg>&&, unsigned index);
 
-    ExceptionOr<PtrListItemType> removeItem(unsigned index);
+    ExceptionOr<RefPtr<SVGPathSeg>> removeItem(unsigned index);
 
-    ExceptionOr<PtrListItemType> appendItem(PtrListItemType newItem)
+    ExceptionOr<RefPtr<SVGPathSeg>> appendItem(Ref<SVGPathSeg>&& newItem)
     {
-        // Not specified, but FF/Opera do it this way, and it's just sane.
-        if (!newItem)
-            return Exception { SVGException::SVG_WRONG_TYPE_ERR };
-
-        return Base::appendItemValues(newItem);
+        return Base::appendItemValues(WTFMove(newItem));
     }
 
 private:
index 3a0005d..11284d8 100644 (file)
@@ -28,10 +28,10 @@ interface SVGPathSegList {
     readonly attribute unsigned long numberOfItems;
 
     [MayThrowException] void clear();
-    [MayThrowException] SVGPathSeg initialize(SVGPathSeg? newItem); // FIXME: Should not be nullable.
+    [MayThrowException] SVGPathSeg initialize(SVGPathSeg newItem);
     [MayThrowException] SVGPathSeg getItem(unsigned long index);
-    [MayThrowException] SVGPathSeg insertItemBefore(SVGPathSeg? newItem, unsigned long index); // FIXME: Should not be nullable.
-    [MayThrowException] SVGPathSeg replaceItem(SVGPathSeg? newItem, unsigned long index); // FIXME: Should not be nullable.
+    [MayThrowException] SVGPathSeg insertItemBefore(SVGPathSeg newItem, unsigned long index);
+    [MayThrowException] SVGPathSeg replaceItem(SVGPathSeg newItem, unsigned long index);
     [MayThrowException] SVGPathSeg removeItem(unsigned long index);
-    [MayThrowException] SVGPathSeg appendItem(SVGPathSeg? newItem); // FIXME: Should not be nullable.
+    [MayThrowException] SVGPathSeg appendItem(SVGPathSeg newItem);
 };
index 164cd64..302dccd 100644 (file)
@@ -19,8 +19,8 @@
 
 #pragma once
 
+#include "ExceptionCode.h"
 #include "SVGAnimatedStaticPropertyTearOff.h"
-#include "SVGException.h"
 #include "SVGPropertyTraits.h"
 
 namespace WebCore {
@@ -52,7 +52,7 @@ public:
     {
         // All SVG enumeration values, that are allowed to be set via SVG DOM start with 1, 0 corresponds to unknown and is not settable through SVG DOM.
         if (!property || property > SVGIDLEnumLimits<EnumType>::highestExposedEnumValue())
-            return Exception { SVGException::SVG_INVALID_VALUE_ERR };
+            return Exception { TypeError };
         return SVGAnimatedStaticPropertyTearOff<unsigned>::setBaseVal(property);
     }
 
index 9b0d420..ab4e739 100644 (file)
@@ -20,7 +20,6 @@
 #pragma once
 
 #include "ExceptionCode.h"
-#include "SVGException.h"
 #include "SVGPropertyTearOff.h"
 #include "SVGPropertyTraits.h"
 #include <wtf/Ref.h>