<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN"
"http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head><meta http-equiv="content-type" content="text/html; charset=utf-8" /><style type="text/css"><!--
#msg dl { border: 1px #006 solid; background: #369; padding: 6px; color: #fff; }
#msg dt { float: left; width: 6em; font-weight: bold; }
#msg dt:after { content:':';}
#msg dl, #msg dt, #msg ul, #msg li, #header, #footer { font-family: verdana,arial,helvetica,sans-serif; font-size: 10pt;  }
#msg dl a { font-weight: bold}
#msg dl a:link    { color:#fc3; }
#msg dl a:active  { color:#ff0; }
#msg dl a:visited { color:#cc6; }
h3 { font-family: verdana,arial,helvetica,sans-serif; font-size: 10pt; font-weight: bold; }
#msg pre, #msg p { overflow: auto; background: #ffc; border: 1px #fc0 solid; padding: 6px; }
#msg ul { overflow: auto; }
#header, #footer { color: #fff; background: #636; border: 1px #300 solid; padding: 6px; }
#patch { width: 100%; }
#patch h4 {font-family: verdana,arial,helvetica,sans-serif;font-size:10pt;padding:8px;background:#369;color:#fff;margin:0;}
#patch .propset h4, #patch .binary h4 {margin:0;}
#patch pre {padding:0;line-height:1.2em;margin:0;}
#patch .diff {width:100%;background:#eee;padding: 0 0 10px 0;overflow:auto;}
#patch .propset .diff, #patch .binary .diff  {padding:10px 0;}
#patch span {display:block;padding:0 10px;}
#patch .modfile, #patch .addfile, #patch .delfile, #patch .propset, #patch .binary, #patch .copfile {border:1px solid #ccc;margin:10px 0;}
#patch ins {background:#dfd;text-decoration:none;display:block;padding:0 10px;}
#patch del {background:#fdd;text-decoration:none;display:block;padding:0 10px;}
#patch .lines, .info {color:#888;background:#fff;}
--></style>
<title>[29058] trunk</title>
</head>
<body>

<div id="msg">
<dl>
<dt>Revision</dt> <dd><a href="http://trac.webkit.org/projects/webkit/changeset/29058">29058</a></dd>
<dt>Author</dt> <dd>weinig@apple.com</dd>
<dt>Date</dt> <dd>2007-12-31 19:04:16 -0800 (Mon, 31 Dec 2007)</dd>
</dl>

<h3>Log Message</h3>
<pre>WebCore:

        Reviewed by Darin.

        Patch for http://bugs.webkit.org/show_bug.cgi?id=16637
        Acid3 expects ExeceptionCode constants to be defined on DOMException objects

        - Make DOMException a real JS object.

        Test: fast/dom/DOMException/prototype-object.html

        * DerivedSources.make:
        * WebCore.xcodeproj/project.pbxproj:

        This is no longer needed as the autogenerated classes now includes the
        constructor.
        * bindings/js/JSDOMExceptionConstructor.cpp: Removed.
        * bindings/js/JSDOMExceptionConstructor.h: Removed.

        Create on demand and use the new class for DOMExceptions.
        * bindings/js/kjs_binding.cpp:
        (KJS::setDOMException):

        Remove no longer needed custom constructor getter.
        * bindings/js/kjs_window.cpp:
        (KJS::Window::getValueProperty):

        Don't expose DOMCoreException as the name of class by special casing
        the user visible class name to be DOMException.
        * bindings/scripts/CodeGeneratorJS.pm:

        The DOMException class/file needs to be named DOMCoreException because there is
        name conflict with one of the Objective-C bindings classes.  It should be renamed
        to DOMException when the Objective-C bindings are moved into WebKit.
        * dom/DOMCoreException.cpp: Added.
        (WebCore::DOMCoreException::DOMCoreException):
        (WebCore::DOMCoreException::toString):
        * dom/DOMCoreException.h: Added.
        (WebCore::DOMCoreException::):
        (WebCore::DOMCoreException::code):
        (WebCore::DOMCoreException::name):
        (WebCore::DOMCoreException::message):
        * dom/DOMCoreException.idl: Added.
        * page/DOMWindow.idl:

LayoutTests:

        Reviewed by Darin.

        Test for http://bugs.webkit.org/show_bug.cgi?id=16637
        Acid3 expects ExeceptionCode constants to be defined on DOMException objects

        * fast/dom/DOMException: Added.
        * fast/dom/DOMException/prototype-object-expected.txt: Added.
        * fast/dom/DOMException/prototype-object.html: Added.
        * fast/dom/DOMException/resources: Added.
        * fast/dom/DOMException/resources/prototype-object.js: Added.
        * fast/dom/Window/window-properties-expected.txt:
        * http/tests/xmlhttprequest/connection-error-sync-expected.txt:</pre>

<h3>Modified Paths</h3>
<ul>
<li><a href="#trunkLayoutTestsChangeLog">trunk/LayoutTests/ChangeLog</a></li>
<li><a href="#trunkLayoutTestsfastdomWindowwindowpropertiesexpectedtxt">trunk/LayoutTests/fast/dom/Window/window-properties-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsxmlhttprequestconnectionerrorsyncexpectedtxt">trunk/LayoutTests/http/tests/xmlhttprequest/connection-error-sync-expected.txt</a></li>
<li><a href="#trunkWebCoreChangeLog">trunk/WebCore/ChangeLog</a></li>
<li><a href="#trunkWebCoreDerivedSourcesmake">trunk/WebCore/DerivedSources.make</a></li>
<li><a href="#trunkWebCoreWebCorexcodeprojprojectpbxproj">trunk/WebCore/WebCore.xcodeproj/project.pbxproj</a></li>
<li><a href="#trunkWebCorebindingsjskjs_bindingcpp">trunk/WebCore/bindings/js/kjs_binding.cpp</a></li>
<li><a href="#trunkWebCorebindingsjskjs_windowcpp">trunk/WebCore/bindings/js/kjs_window.cpp</a></li>
<li><a href="#trunkWebCorebindingsscriptsCodeGeneratorJSpm">trunk/WebCore/bindings/scripts/CodeGeneratorJS.pm</a></li>
<li><a href="#trunkWebCorepageDOMWindowidl">trunk/WebCore/page/DOMWindow.idl</a></li>
</ul>

<h3>Added Paths</h3>
<ul>
<li>trunk/LayoutTests/fast/dom/DOMException/</li>
<li><a href="#trunkLayoutTestsfastdomDOMExceptionprototypeobjectexpectedtxt">trunk/LayoutTests/fast/dom/DOMException/prototype-object-expected.txt</a></li>
<li><a href="#trunkLayoutTestsfastdomDOMExceptionprototypeobjecthtml">trunk/LayoutTests/fast/dom/DOMException/prototype-object.html</a></li>
<li>trunk/LayoutTests/fast/dom/DOMException/resources/</li>
<li><a href="#trunkLayoutTestsfastdomDOMExceptionresourcesprototypeobjectjs">trunk/LayoutTests/fast/dom/DOMException/resources/prototype-object.js</a></li>
<li><a href="#trunkWebCoredomDOMCoreExceptioncpp">trunk/WebCore/dom/DOMCoreException.cpp</a></li>
<li><a href="#trunkWebCoredomDOMCoreExceptionh">trunk/WebCore/dom/DOMCoreException.h</a></li>
<li><a href="#trunkWebCoredomDOMCoreExceptionidl">trunk/WebCore/dom/DOMCoreException.idl</a></li>
</ul>

<h3>Removed Paths</h3>
<ul>
<li><a href="#trunkWebCorebindingsjsJSDOMExceptionConstructorcpp">trunk/WebCore/bindings/js/JSDOMExceptionConstructor.cpp</a></li>
<li><a href="#trunkWebCorebindingsjsJSDOMExceptionConstructorh">trunk/WebCore/bindings/js/JSDOMExceptionConstructor.h</a></li>
</ul>

</div>
<div id="patch">
<h3>Diff</h3>
<a id="trunkLayoutTestsChangeLog"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/ChangeLog (29057 => 29058)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/ChangeLog        2008-01-01 02:01:46 UTC (rev 29057)
+++ trunk/LayoutTests/ChangeLog        2008-01-01 03:04:16 UTC (rev 29058)
</span><span class="lines">@@ -1,3 +1,18 @@
</span><ins>+2007-12-31  Sam Weinig  &lt;sam@webkit.org&gt;
+
+        Reviewed by Darin.
+
+        Test for http://bugs.webkit.org/show_bug.cgi?id=16637
+        Acid3 expects ExeceptionCode constants to be defined on DOMException objects
+
+        * fast/dom/DOMException: Added.
+        * fast/dom/DOMException/prototype-object-expected.txt: Added.
+        * fast/dom/DOMException/prototype-object.html: Added.
+        * fast/dom/DOMException/resources: Added.
+        * fast/dom/DOMException/resources/prototype-object.js: Added.
+        * fast/dom/Window/window-properties-expected.txt:
+        * http/tests/xmlhttprequest/connection-error-sync-expected.txt:
+
</ins><span class="cx"> 2007-12-31  Darin Adler  &lt;darin@apple.com&gt;
</span><span class="cx"> 
</span><span class="cx">         * fast/dom/HTMLFormElement/elements-not-in-document-expected.txt: Updated results to expect success.
</span></span></pre></div>
<a id="trunkLayoutTestsfastdomDOMExceptionprototypeobjectexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/fast/dom/DOMException/prototype-object-expected.txt (0 => 29058)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/fast/dom/DOMException/prototype-object-expected.txt                                (rev 0)
+++ trunk/LayoutTests/fast/dom/DOMException/prototype-object-expected.txt        2008-01-01 03:04:16 UTC (rev 29058)
</span><span class="lines">@@ -0,0 +1,16 @@
</span><ins>+DOMException needs a real prototype: http://bugs.webkit.org/show_bug.cgi?id=16637
+
+On success, you will see a series of &quot;PASS&quot; messages, followed by &quot;TEST COMPLETE&quot;.
+
+
+PASS e.toString() is &quot;Error: HIERARCHY_REQUEST_ERR: DOM Exception 3&quot;
+PASS Object.prototype.toString.call(e) is &quot;[object DOMException]&quot;
+PASS Object.prototype.toString.call(e.__proto__) is &quot;[object DOMExceptionPrototype]&quot;
+PASS e.constructor.toString() is &quot;[object DOMExceptionConstructor]&quot;
+PASS e.constructor is window.DOMException
+PASS e.HIERARCHY_REQUEST_ERR is e.constructor.HIERARCHY_REQUEST_ERR
+PASS e.HIERARCHY_REQUEST_ERR is 3
+PASS successfullyParsed is true
+
+TEST COMPLETE
+
</ins></span></pre></div>
<a id="trunkLayoutTestsfastdomDOMExceptionprototypeobjecthtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/fast/dom/DOMException/prototype-object.html (0 => 29058)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/fast/dom/DOMException/prototype-object.html                                (rev 0)
+++ trunk/LayoutTests/fast/dom/DOMException/prototype-object.html        2008-01-01 03:04:16 UTC (rev 29058)
</span><span class="lines">@@ -0,0 +1,13 @@
</span><ins>+&lt;!DOCTYPE HTML PUBLIC &quot;-//IETF//DTD HTML//EN&quot;&gt;
+&lt;html&gt;
+&lt;head&gt;
+&lt;link rel=&quot;stylesheet&quot; href=&quot;../../js/resources/js-test-style.css&quot;&gt;
+&lt;script src=&quot;../../js/resources/js-test-pre.js&quot;&gt;&lt;/script&gt;
+&lt;/head&gt;
+&lt;body&gt;
+&lt;p id=&quot;description&quot;&gt;&lt;/p&gt;
+&lt;div id=&quot;console&quot;&gt;&lt;/div&gt;
+&lt;script src=&quot;resources/prototype-object.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;../../js/resources/js-test-post.js&quot;&gt;&lt;/script&gt;
+&lt;/body&gt;
+&lt;/html&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestsfastdomDOMExceptionresourcesprototypeobjectjs"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/fast/dom/DOMException/resources/prototype-object.js (0 => 29058)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/fast/dom/DOMException/resources/prototype-object.js                                (rev 0)
+++ trunk/LayoutTests/fast/dom/DOMException/resources/prototype-object.js        2008-01-01 03:04:16 UTC (rev 29058)
</span><span class="lines">@@ -0,0 +1,19 @@
</span><ins>+description(&quot;DOMException needs a real prototype: http://bugs.webkit.org/show_bug.cgi?id=16637&quot;)
+
+var e;
+try {
+  document.body.appendChild(document.documentElement);
+   // raises a HIERARCHY_REQUEST_ERR
+} catch (err) {
+  e = err;
+}
+
+shouldBeEqualToString(&quot;e.toString()&quot;, &quot;Error: HIERARCHY_REQUEST_ERR: DOM Exception 3&quot;);
+shouldBeEqualToString(&quot;Object.prototype.toString.call(e)&quot;, &quot;[object DOMException]&quot;);
+shouldBeEqualToString(&quot;Object.prototype.toString.call(e.__proto__)&quot;, &quot;[object DOMExceptionPrototype]&quot;);
+shouldBeEqualToString(&quot;e.constructor.toString()&quot;, &quot;[object DOMExceptionConstructor]&quot;);
+shouldBe(&quot;e.constructor&quot;, &quot;window.DOMException&quot;);
+shouldBe(&quot;e.HIERARCHY_REQUEST_ERR&quot;, &quot;e.constructor.HIERARCHY_REQUEST_ERR&quot;);
+shouldBe(&quot;e.HIERARCHY_REQUEST_ERR&quot;, &quot;3&quot;);
+
+var successfullyParsed = true;
</ins></span></pre></div>
<a id="trunkLayoutTestsfastdomWindowwindowpropertiesexpectedtxt"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/fast/dom/Window/window-properties-expected.txt (29057 => 29058)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/fast/dom/Window/window-properties-expected.txt        2008-01-01 02:01:46 UTC (rev 29057)
+++ trunk/LayoutTests/fast/dom/Window/window-properties-expected.txt        2008-01-01 03:04:16 UTC (rev 29058)
</span><span class="lines">@@ -268,6 +268,41 @@
</span><span class="cx"> window.Counter [object CounterConstructor]
</span><span class="cx"> window.Counter.prototype [object CounterPrototype]
</span><span class="cx"> window.DOMException [object DOMExceptionConstructor]
</span><ins>+window.DOMException.DOMSTRING_SIZE_ERR [number]
+window.DOMException.HIERARCHY_REQUEST_ERR [number]
+window.DOMException.INDEX_SIZE_ERR [number]
+window.DOMException.INUSE_ATTRIBUTE_ERR [number]
+window.DOMException.INVALID_ACCESS_ERR [number]
+window.DOMException.INVALID_CHARACTER_ERR [number]
+window.DOMException.INVALID_MODIFICATION_ERR [number]
+window.DOMException.INVALID_STATE_ERR [number]
+window.DOMException.NAMESPACE_ERR [number]
+window.DOMException.NOT_FOUND_ERR [number]
+window.DOMException.NOT_SUPPORTED_ERR [number]
+window.DOMException.NO_DATA_ALLOWED_ERR [number]
+window.DOMException.NO_MODIFICATION_ALLOWED_ERR [number]
+window.DOMException.SYNTAX_ERR [number]
+window.DOMException.TYPE_MISMATCH_ERR [number]
+window.DOMException.VALIDATION_ERR [number]
+window.DOMException.WRONG_DOCUMENT_ERR [number]
+window.DOMException.prototype [object DOMExceptionPrototype]
+window.DOMException.prototype.DOMSTRING_SIZE_ERR [number]
+window.DOMException.prototype.HIERARCHY_REQUEST_ERR [number]
+window.DOMException.prototype.INDEX_SIZE_ERR [number]
+window.DOMException.prototype.INUSE_ATTRIBUTE_ERR [number]
+window.DOMException.prototype.INVALID_ACCESS_ERR [number]
+window.DOMException.prototype.INVALID_CHARACTER_ERR [number]
+window.DOMException.prototype.INVALID_MODIFICATION_ERR [number]
+window.DOMException.prototype.INVALID_STATE_ERR [number]
+window.DOMException.prototype.NAMESPACE_ERR [number]
+window.DOMException.prototype.NOT_FOUND_ERR [number]
+window.DOMException.prototype.NOT_SUPPORTED_ERR [number]
+window.DOMException.prototype.NO_DATA_ALLOWED_ERR [number]
+window.DOMException.prototype.NO_MODIFICATION_ALLOWED_ERR [number]
+window.DOMException.prototype.SYNTAX_ERR [number]
+window.DOMException.prototype.TYPE_MISMATCH_ERR [number]
+window.DOMException.prototype.VALIDATION_ERR [number]
+window.DOMException.prototype.WRONG_DOCUMENT_ERR [number]
</ins><span class="cx"> window.DOMImplementation [object DOMImplementationConstructor]
</span><span class="cx"> window.DOMImplementation.prototype [object DOMImplementationPrototype]
</span><span class="cx"> window.DOMImplementation.prototype.createCSSStyleSheet [function]
</span></span></pre></div>
<a id="trunkLayoutTestshttptestsxmlhttprequestconnectionerrorsyncexpectedtxt"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/http/tests/xmlhttprequest/connection-error-sync-expected.txt (29057 => 29058)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/xmlhttprequest/connection-error-sync-expected.txt        2008-01-01 02:01:46 UTC (rev 29057)
+++ trunk/LayoutTests/http/tests/xmlhttprequest/connection-error-sync-expected.txt        2008-01-01 03:04:16 UTC (rev 29058)
</span><span class="lines">@@ -1,3 +1,3 @@
</span><span class="cx"> Test the behavior of a sync XMLHttpRequest that encounters an infinite redirection loop.
</span><span class="cx"> 
</span><del>-Exception Error; code=101; number=undefined (0); message='NETWORK_ERR: XMLHttpRequest Exception 101'
</del><ins>+Exception NETWORK_ERR; code=101; number=undefined (0); message='NETWORK_ERR: XMLHttpRequest Exception 101'
</ins></span></pre></div>
<a id="trunkWebCoreChangeLog"></a>
<div class="modfile"><h4>Modified: trunk/WebCore/ChangeLog (29057 => 29058)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/WebCore/ChangeLog        2008-01-01 02:01:46 UTC (rev 29057)
+++ trunk/WebCore/ChangeLog        2008-01-01 03:04:16 UTC (rev 29058)
</span><span class="lines">@@ -1,5 +1,50 @@
</span><span class="cx"> 2007-12-31  Sam Weinig  &lt;sam@webkit.org&gt;
</span><span class="cx"> 
</span><ins>+        Reviewed by Darin.
+
+        Patch for http://bugs.webkit.org/show_bug.cgi?id=16637
+        Acid3 expects ExeceptionCode constants to be defined on DOMException objects
+
+        - Make DOMException a real JS object.
+
+        Test: fast/dom/DOMException/prototype-object.html
+
+        * DerivedSources.make:
+        * WebCore.xcodeproj/project.pbxproj:
+
+        This is no longer needed as the autogenerated classes now includes the
+        constructor.
+        * bindings/js/JSDOMExceptionConstructor.cpp: Removed.
+        * bindings/js/JSDOMExceptionConstructor.h: Removed.
+
+        Create on demand and use the new class for DOMExceptions.
+        * bindings/js/kjs_binding.cpp:
+        (KJS::setDOMException):
+
+        Remove no longer needed custom constructor getter.
+        * bindings/js/kjs_window.cpp:
+        (KJS::Window::getValueProperty):
+
+        Don't expose DOMCoreException as the name of class by special casing
+        the user visible class name to be DOMException.
+        * bindings/scripts/CodeGeneratorJS.pm:
+
+        The DOMException class/file needs to be named DOMCoreException because there is
+        name conflict with one of the Objective-C bindings classes.  It should be renamed
+        to DOMException when the Objective-C bindings are moved into WebKit.
+        * dom/DOMCoreException.cpp: Added.
+        (WebCore::DOMCoreException::DOMCoreException):
+        (WebCore::DOMCoreException::toString):
+        * dom/DOMCoreException.h: Added.
+        (WebCore::DOMCoreException::):
+        (WebCore::DOMCoreException::code):
+        (WebCore::DOMCoreException::name):
+        (WebCore::DOMCoreException::message):
+        * dom/DOMCoreException.idl: Added.
+        * page/DOMWindow.idl:
+
+2007-12-31  Sam Weinig  &lt;sam@webkit.org&gt;
+
</ins><span class="cx">         Re-enable querySelector and querySelectorAll and touch the necessary files to not
</span><span class="cx">         kill the windows build.
</span><span class="cx"> 
</span></span></pre></div>
<a id="trunkWebCoreDerivedSourcesmake"></a>
<div class="modfile"><h4>Modified: trunk/WebCore/DerivedSources.make (29057 => 29058)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/WebCore/DerivedSources.make        2008-01-01 02:01:46 UTC (rev 29057)
+++ trunk/WebCore/DerivedSources.make        2008-01-01 03:04:16 UTC (rev 29058)
</span><span class="lines">@@ -332,12 +332,13 @@
</span><span class="cx">     JSConsole.h \
</span><span class="cx">     JSCounter.h \
</span><span class="cx">     JSCSSStyleDeclaration.h \
</span><del>-    JSDatabase.h \
</del><ins>+    JSDOMCoreException.h \
</ins><span class="cx">     JSDOMExceptionConstructor.lut.h \
</span><span class="cx">     JSDOMImplementation.h \
</span><span class="cx">     JSDOMParser.h \
</span><span class="cx">     JSDOMSelection.h \
</span><span class="cx">     JSDOMWindow.h \
</span><ins>+    JSDatabase.h \
</ins><span class="cx">     JSDocument.h \
</span><span class="cx">     JSDocumentFragment.h \
</span><span class="cx">     JSDocumentType.h \
</span></span></pre></div>
<a id="trunkWebCoreWebCorexcodeprojprojectpbxproj"></a>
<div class="modfile"><h4>Modified: trunk/WebCore/WebCore.xcodeproj/project.pbxproj (29057 => 29058)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/WebCore/WebCore.xcodeproj/project.pbxproj        2008-01-01 02:01:46 UTC (rev 29057)
+++ trunk/WebCore/WebCore.xcodeproj/project.pbxproj        2008-01-01 03:04:16 UTC (rev 29058)
</span><span class="lines">@@ -3160,8 +3160,6 @@
</span><span class="cx">                 B27B28280CEF0C0700D39D54 /* JSSVGGlyphElement.h in Headers */ = {isa = PBXBuildFile; fileRef = B27B28220CEF0C0700D39D54 /* JSSVGGlyphElement.h */; };
</span><span class="cx">                 B27B28290CEF0C0700D39D54 /* JSSVGMissingGlyphElement.cpp in Sources */ = {isa = PBXBuildFile; fileRef = B27B28230CEF0C0700D39D54 /* JSSVGMissingGlyphElement.cpp */; };
</span><span class="cx">                 B27B282A0CEF0C0700D39D54 /* JSSVGMissingGlyphElement.h in Headers */ = {isa = PBXBuildFile; fileRef = B27B28240CEF0C0700D39D54 /* JSSVGMissingGlyphElement.h */; };
</span><del>-                B27B28360CEF0C3600D39D54 /* CSSPropertyNames.in in Resources */ = {isa = PBXBuildFile; fileRef = B27B282B0CEF0C3500D39D54 /* CSSPropertyNames.in */; };
-                B27B28370CEF0C3600D39D54 /* CSSValueKeywords.in in Resources */ = {isa = PBXBuildFile; fileRef = B27B282C0CEF0C3500D39D54 /* CSSValueKeywords.in */; };
</del><span class="cx">                 B27B28380CEF0C3600D39D54 /* DOMSVGFontElement.h in Headers */ = {isa = PBXBuildFile; fileRef = B27B282D0CEF0C3500D39D54 /* DOMSVGFontElement.h */; settings = {ATTRIBUTES = (); }; };
</span><span class="cx">                 B27B28390CEF0C3600D39D54 /* DOMSVGFontElement.mm in Sources */ = {isa = PBXBuildFile; fileRef = B27B282E0CEF0C3500D39D54 /* DOMSVGFontElement.mm */; };
</span><span class="cx">                 B27B283A0CEF0C3600D39D54 /* DOMSVGFontElementInternal.h in Headers */ = {isa = PBXBuildFile; fileRef = B27B282F0CEF0C3500D39D54 /* DOMSVGFontElementInternal.h */; };
</span><span class="lines">@@ -3622,6 +3620,11 @@
</span><span class="cx">                 BC5A86850C33676000EEA649 /* DOMSelection.h in Headers */ = {isa = PBXBuildFile; fileRef = BC5A86820C33676000EEA649 /* DOMSelection.h */; };
</span><span class="cx">                 BC5A86B50C3367E800EEA649 /* JSDOMSelection.cpp in Sources */ = {isa = PBXBuildFile; fileRef = BC5A86B30C3367E800EEA649 /* JSDOMSelection.cpp */; };
</span><span class="cx">                 BC5A86B60C3367E800EEA649 /* JSDOMSelection.h in Headers */ = {isa = PBXBuildFile; fileRef = BC5A86B40C3367E800EEA649 /* JSDOMSelection.h */; };
</span><ins>+                BC60D6E90D28D83400B9918F /* DOMCoreException.h in Headers */ = {isa = PBXBuildFile; fileRef = BC60D6E80D28D83400B9918F /* DOMCoreException.h */; };
+                BC60D6EC0D28D99900B9918F /* DOMCoreException.idl in Resources */ = {isa = PBXBuildFile; fileRef = BC60D6EB0D28D99900B9918F /* DOMCoreException.idl */; };
+                BC60D7C00D29A46300B9918F /* JSDOMCoreException.cpp in Sources */ = {isa = PBXBuildFile; fileRef = BC60D7BE0D29A46300B9918F /* JSDOMCoreException.cpp */; };
+                BC60D7C10D29A46300B9918F /* JSDOMCoreException.h in Headers */ = {isa = PBXBuildFile; fileRef = BC60D7BF0D29A46300B9918F /* JSDOMCoreException.h */; };
+                BC60D8040D29A9E800B9918F /* DOMCoreException.cpp in Sources */ = {isa = PBXBuildFile; fileRef = BC60D8030D29A9E800B9918F /* DOMCoreException.cpp */; };
</ins><span class="cx">                 BC64B4CB0CB4295D005F2B62 /* CachedFont.cpp in Sources */ = {isa = PBXBuildFile; fileRef = BC64B4C90CB4295D005F2B62 /* CachedFont.cpp */; };
</span><span class="cx">                 BC64B4CC0CB4295D005F2B62 /* CachedFont.h in Headers */ = {isa = PBXBuildFile; fileRef = BC64B4CA0CB4295D005F2B62 /* CachedFont.h */; };
</span><span class="cx">                 BC64B4D50CB4298A005F2B62 /* CSSFontFace.cpp in Sources */ = {isa = PBXBuildFile; fileRef = BC64B4CD0CB4298A005F2B62 /* CSSFontFace.cpp */; };
</span><span class="lines">@@ -3735,8 +3738,6 @@
</span><span class="cx">                 BCD9C2630C17AA67005C90A2 /* JSNamedNodeMapCustom.cpp in Sources */ = {isa = PBXBuildFile; fileRef = BCD9C25F0C17AA67005C90A2 /* JSNamedNodeMapCustom.cpp */; };
</span><span class="cx">                 BCD9C2640C17AA67005C90A2 /* JSNodeCustom.cpp in Sources */ = {isa = PBXBuildFile; fileRef = BCD9C2600C17AA67005C90A2 /* JSNodeCustom.cpp */; };
</span><span class="cx">                 BCD9C2650C17AA67005C90A2 /* JSNodeListCustom.cpp in Sources */ = {isa = PBXBuildFile; fileRef = BCD9C2610C17AA67005C90A2 /* JSNodeListCustom.cpp */; };
</span><del>-                BCD9C26E0C17AA81005C90A2 /* JSDOMExceptionConstructor.cpp in Sources */ = {isa = PBXBuildFile; fileRef = BCD9C2680C17AA81005C90A2 /* JSDOMExceptionConstructor.cpp */; };
-                BCD9C26F0C17AA81005C90A2 /* JSDOMExceptionConstructor.h in Headers */ = {isa = PBXBuildFile; fileRef = BCD9C2690C17AA81005C90A2 /* JSDOMExceptionConstructor.h */; };
</del><span class="cx">                 BCD9C2700C17AA81005C90A2 /* JSEventTargetNode.cpp in Sources */ = {isa = PBXBuildFile; fileRef = BCD9C26A0C17AA81005C90A2 /* JSEventTargetNode.cpp */; };
</span><span class="cx">                 BCD9C2710C17AA81005C90A2 /* JSEventTargetNode.h in Headers */ = {isa = PBXBuildFile; fileRef = BCD9C26B0C17AA81005C90A2 /* JSEventTargetNode.h */; };
</span><span class="cx">                 BCD9C2720C17AA81005C90A2 /* JSNamedNodesCollection.cpp in Sources */ = {isa = PBXBuildFile; fileRef = BCD9C26C0C17AA81005C90A2 /* JSNamedNodesCollection.cpp */; };
</span><span class="lines">@@ -7213,8 +7214,6 @@
</span><span class="cx">                 B27B28220CEF0C0700D39D54 /* JSSVGGlyphElement.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = JSSVGGlyphElement.h; sourceTree = &quot;&lt;group&gt;&quot;; };
</span><span class="cx">                 B27B28230CEF0C0700D39D54 /* JSSVGMissingGlyphElement.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = JSSVGMissingGlyphElement.cpp; sourceTree = &quot;&lt;group&gt;&quot;; };
</span><span class="cx">                 B27B28240CEF0C0700D39D54 /* JSSVGMissingGlyphElement.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = JSSVGMissingGlyphElement.h; sourceTree = &quot;&lt;group&gt;&quot;; };
</span><del>-                B27B282B0CEF0C3500D39D54 /* CSSPropertyNames.in */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = text; path = CSSPropertyNames.in; sourceTree = &quot;&lt;group&gt;&quot;; };
-                B27B282C0CEF0C3500D39D54 /* CSSValueKeywords.in */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = text; path = CSSValueKeywords.in; sourceTree = &quot;&lt;group&gt;&quot;; };
</del><span class="cx">                 B27B282D0CEF0C3500D39D54 /* DOMSVGFontElement.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = DOMSVGFontElement.h; sourceTree = &quot;&lt;group&gt;&quot;; };
</span><span class="cx">                 B27B282E0CEF0C3500D39D54 /* DOMSVGFontElement.mm */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.objcpp; path = DOMSVGFontElement.mm; sourceTree = &quot;&lt;group&gt;&quot;; };
</span><span class="cx">                 B27B282F0CEF0C3500D39D54 /* DOMSVGFontElementInternal.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = DOMSVGFontElementInternal.h; sourceTree = &quot;&lt;group&gt;&quot;; };
</span><span class="lines">@@ -7679,6 +7678,11 @@
</span><span class="cx">                 BC5A86B30C3367E800EEA649 /* JSDOMSelection.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = JSDOMSelection.cpp; sourceTree = &quot;&lt;group&gt;&quot;; };
</span><span class="cx">                 BC5A86B40C3367E800EEA649 /* JSDOMSelection.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = JSDOMSelection.h; sourceTree = &quot;&lt;group&gt;&quot;; };
</span><span class="cx">                 BC5EC1760A507E3E006007F5 /* view-source.css */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = text; path = &quot;view-source.css&quot;; sourceTree = &quot;&lt;group&gt;&quot;; };
</span><ins>+                BC60D6E80D28D83400B9918F /* DOMCoreException.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = DOMCoreException.h; sourceTree = &quot;&lt;group&gt;&quot;; };
+                BC60D6EB0D28D99900B9918F /* DOMCoreException.idl */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = DOMCoreException.idl; sourceTree = &quot;&lt;group&gt;&quot;; };
+                BC60D7BE0D29A46300B9918F /* JSDOMCoreException.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = JSDOMCoreException.cpp; sourceTree = &quot;&lt;group&gt;&quot;; };
+                BC60D7BF0D29A46300B9918F /* JSDOMCoreException.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = JSDOMCoreException.h; sourceTree = &quot;&lt;group&gt;&quot;; };
+                BC60D8030D29A9E800B9918F /* DOMCoreException.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = DOMCoreException.cpp; sourceTree = &quot;&lt;group&gt;&quot;; };
</ins><span class="cx">                 BC64B4C90CB4295D005F2B62 /* CachedFont.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CachedFont.cpp; sourceTree = &quot;&lt;group&gt;&quot;; };
</span><span class="cx">                 BC64B4CA0CB4295D005F2B62 /* CachedFont.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CachedFont.h; sourceTree = &quot;&lt;group&gt;&quot;; };
</span><span class="cx">                 BC64B4CD0CB4298A005F2B62 /* CSSFontFace.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CSSFontFace.cpp; sourceTree = &quot;&lt;group&gt;&quot;; };
</span><span class="lines">@@ -7797,8 +7801,6 @@
</span><span class="cx">                 BCD9C25F0C17AA67005C90A2 /* JSNamedNodeMapCustom.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = JSNamedNodeMapCustom.cpp; sourceTree = &quot;&lt;group&gt;&quot;; };
</span><span class="cx">                 BCD9C2600C17AA67005C90A2 /* JSNodeCustom.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = JSNodeCustom.cpp; sourceTree = &quot;&lt;group&gt;&quot;; };
</span><span class="cx">                 BCD9C2610C17AA67005C90A2 /* JSNodeListCustom.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = JSNodeListCustom.cpp; sourceTree = &quot;&lt;group&gt;&quot;; };
</span><del>-                BCD9C2680C17AA81005C90A2 /* JSDOMExceptionConstructor.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = JSDOMExceptionConstructor.cpp; sourceTree = &quot;&lt;group&gt;&quot;; };
-                BCD9C2690C17AA81005C90A2 /* JSDOMExceptionConstructor.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = JSDOMExceptionConstructor.h; sourceTree = &quot;&lt;group&gt;&quot;; };
</del><span class="cx">                 BCD9C26A0C17AA81005C90A2 /* JSEventTargetNode.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = JSEventTargetNode.cpp; sourceTree = &quot;&lt;group&gt;&quot;; };
</span><span class="cx">                 BCD9C26B0C17AA81005C90A2 /* JSEventTargetNode.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = JSEventTargetNode.h; sourceTree = &quot;&lt;group&gt;&quot;; };
</span><span class="cx">                 BCD9C26C0C17AA81005C90A2 /* JSNamedNodesCollection.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = JSNamedNodesCollection.cpp; sourceTree = &quot;&lt;group&gt;&quot;; };
</span><span class="lines">@@ -9300,8 +9302,6 @@
</span><span class="cx">                 85B232260A8BF3A100FDF47B /* Derived Sources */ = {
</span><span class="cx">                         isa = PBXGroup;
</span><span class="cx">                         children = (
</span><del>-                                B27B282B0CEF0C3500D39D54 /* CSSPropertyNames.in */,
-                                B27B282C0CEF0C3500D39D54 /* CSSValueKeywords.in */,
</del><span class="cx">                                 85967D9F0AA8BB59005FEDEE /* Core */,
</span><span class="cx">                                 85967DCA0AA8BF0F005FEDEE /* CSS */,
</span><span class="cx">                                 85AFA7AB0AAF3BB000E84305 /* Events */,
</span><span class="lines">@@ -10577,6 +10577,8 @@
</span><span class="cx">                 A83B79100CCB001B000B0825 /* Core */ = {
</span><span class="cx">                         isa = PBXGroup;
</span><span class="cx">                         children = (
</span><ins>+                                BC60D7BE0D29A46300B9918F /* JSDOMCoreException.cpp */,
+                                BC60D7BF0D29A46300B9918F /* JSDOMCoreException.h */,
</ins><span class="cx">                                 65DF31D809D1C122000BE325 /* JSAttr.cpp */,
</span><span class="cx">                                 65DF31D909D1C123000BE325 /* JSAttr.h */,
</span><span class="cx">                                 93F9B79E0BA6032600854064 /* JSCDATASection.cpp */,
</span><span class="lines">@@ -10617,6 +10619,10 @@
</span><span class="cx">                                 D23CA55C0AB0EAAE005108A5 /* JSRangeException.h */,
</span><span class="cx">                                 65DF31EF09D1CC60000BE325 /* JSText.cpp */,
</span><span class="cx">                                 65DF31F009D1CC60000BE325 /* JSText.h */,
</span><ins>+                                65DF31ED09D1CC60000BE325 /* JSRange.cpp */,
+                                65DF31EE09D1CC60000BE325 /* JSRange.h */,
+                                D23CA55E0AB0EAB6005108A5 /* JSRangeException.cpp */,
+                                D23CA55C0AB0EAAE005108A5 /* JSRangeException.h */,
</ins><span class="cx">                         );
</span><span class="cx">                         name = Core;
</span><span class="cx">                         sourceTree = &quot;&lt;group&gt;&quot;;
</span><span class="lines">@@ -11496,8 +11502,6 @@
</span><span class="cx">                                 1432E8460C51493800B1500F /* GCController.h */,
</span><span class="cx">                                 E10B93C20B73C291003ED890 /* JSCustomXPathNSResolver.cpp */,
</span><span class="cx">                                 E10B937B0B73C00A003ED890 /* JSCustomXPathNSResolver.h */,
</span><del>-                                BCD9C2680C17AA81005C90A2 /* JSDOMExceptionConstructor.cpp */,
-                                BCD9C2690C17AA81005C90A2 /* JSDOMExceptionConstructor.h */,
</del><span class="cx">                                 B25BE50E0D06B70800B524C6 /* JSEventTargetBase.cpp */,
</span><span class="cx">                                 B25BE50F0D06B70800B524C6 /* JSEventTargetBase.h */,
</span><span class="cx">                                 BCD9C26A0C17AA81005C90A2 /* JSEventTargetNode.cpp */,
</span><span class="lines">@@ -11668,10 +11672,6 @@
</span><span class="cx">                 BC9854460CD3DA5F00069BC1 /* Ranges */ = {
</span><span class="cx">                         isa = PBXGroup;
</span><span class="cx">                         children = (
</span><del>-                                65DF31ED09D1CC60000BE325 /* JSRange.cpp */,
-                                65DF31EE09D1CC60000BE325 /* JSRange.h */,
-                                D23CA55E0AB0EAB6005108A5 /* JSRangeException.cpp */,
-                                D23CA55C0AB0EAAE005108A5 /* JSRangeException.h */,
</del><span class="cx">                         );
</span><span class="cx">                         name = Ranges;
</span><span class="cx">                         sourceTree = &quot;&lt;group&gt;&quot;;
</span><span class="lines">@@ -12291,6 +12291,9 @@
</span><span class="cx">                                 A8185F3209765765005826D9 /* DocumentType.cpp */,
</span><span class="cx">                                 A8185F3109765765005826D9 /* DocumentType.h */,
</span><span class="cx">                                 93EEC1E809C2877700C515D1 /* DocumentType.idl */,
</span><ins>+                                BC60D8030D29A9E800B9918F /* DOMCoreException.cpp */,
+                                BC60D6E80D28D83400B9918F /* DOMCoreException.h */,
+                                BC60D6EB0D28D99900B9918F /* DOMCoreException.idl */,
</ins><span class="cx">                                 A8185F3609765765005826D9 /* DOMImplementation.cpp */,
</span><span class="cx">                                 A8185F3309765765005826D9 /* DOMImplementation.h */,
</span><span class="cx">                                 93EEC1E909C2877700C515D1 /* DOMImplementation.idl */,
</span><span class="lines">@@ -13483,7 +13486,6 @@
</span><span class="cx">                                 51EC926A0CE90DD400F90308 /* JSCustomSQLTransactionErrorCallback.h in Headers */,
</span><span class="cx">                                 1A3417C90CECFF250049CBDE /* JSCustomVoidCallback.h in Headers */,
</span><span class="cx">                                 E10B937C0B73C00A003ED890 /* JSCustomXPathNSResolver.h in Headers */,
</span><del>-                                BCD9C26F0C17AA81005C90A2 /* JSDOMExceptionConstructor.h in Headers */,
</del><span class="cx">                                 BCD9C2C60C17B6EC005C90A2 /* JSDOMExceptionConstructor.lut.h in Headers */,
</span><span class="cx">                                 65DF31F809D1CC60000BE325 /* JSDOMImplementation.h in Headers */,
</span><span class="cx">                                 1ACE53E00A8D18810022947D /* JSDOMParser.h in Headers */,
</span><span class="lines">@@ -14277,6 +14279,8 @@
</span><span class="cx">                                 BC7FA62D0D1F0EFF00DB22A9 /* StaticNodeList.h in Headers */,
</span><span class="cx">                                 BC7FA6810D1F167900DB22A9 /* SelectorNodeList.h in Headers */,
</span><span class="cx">                                 BCE3BEC30D222B1D007E06E4 /* TagNodeList.h in Headers */,
</span><ins>+                                BC60D6E90D28D83400B9918F /* DOMCoreException.h in Headers */,
+                                BC60D7C10D29A46300B9918F /* JSDOMCoreException.h in Headers */,
</ins><span class="cx">                         );
</span><span class="cx">                         runOnlyForDeploymentPostprocessing = 0;
</span><span class="cx">                 };
</span><span class="lines">@@ -14542,8 +14546,7 @@
</span><span class="cx">                                 B2A1F2AC0CEF0ABF00442F6A /* SVGFontElement.idl in Resources */,
</span><span class="cx">                                 B2A1F2AF0CEF0ABF00442F6A /* SVGGlyphElement.idl in Resources */,
</span><span class="cx">                                 B2A1F2B20CEF0ABF00442F6A /* SVGMissingGlyphElement.idl in Resources */,
</span><del>-                                B27B28360CEF0C3600D39D54 /* CSSPropertyNames.in in Resources */,
-                                B27B28370CEF0C3600D39D54 /* CSSValueKeywords.in in Resources */,
</del><ins>+                                BC60D6EC0D28D99900B9918F /* DOMCoreException.idl in Resources */,
</ins><span class="cx">                         );
</span><span class="cx">                         runOnlyForDeploymentPostprocessing = 0;
</span><span class="cx">                 };
</span><span class="lines">@@ -15213,7 +15216,6 @@
</span><span class="cx">                                 51EC92690CE90DD400F90308 /* JSCustomSQLTransactionErrorCallback.cpp in Sources */,
</span><span class="cx">                                 1A3417CA0CECFF250049CBDE /* JSCustomVoidCallback.cpp in Sources */,
</span><span class="cx">                                 E10B93C30B73C291003ED890 /* JSCustomXPathNSResolver.cpp in Sources */,
</span><del>-                                BCD9C26E0C17AA81005C90A2 /* JSDOMExceptionConstructor.cpp in Sources */,
</del><span class="cx">                                 65DF31F709D1CC60000BE325 /* JSDOMImplementation.cpp in Sources */,
</span><span class="cx">                                 1ACE53DF0A8D18810022947D /* JSDOMParser.cpp in Sources */,
</span><span class="cx">                                 BC5A86B50C3367E800EEA649 /* JSDOMSelection.cpp in Sources */,
</span><span class="lines">@@ -16014,6 +16016,8 @@
</span><span class="cx">                                 BC7FA62E0D1F0EFF00DB22A9 /* StaticNodeList.cpp in Sources */,
</span><span class="cx">                                 BC7FA6820D1F167900DB22A9 /* SelectorNodeList.cpp in Sources */,
</span><span class="cx">                                 BCE3BEC20D222B1D007E06E4 /* TagNodeList.cpp in Sources */,
</span><ins>+                                BC60D7C00D29A46300B9918F /* JSDOMCoreException.cpp in Sources */,
+                                BC60D8040D29A9E800B9918F /* DOMCoreException.cpp in Sources */,
</ins><span class="cx">                         );
</span><span class="cx">                         runOnlyForDeploymentPostprocessing = 0;
</span><span class="cx">                 };
</span></span></pre></div>
<a id="trunkWebCorebindingsjsJSDOMExceptionConstructorcpp"></a>
<div class="delfile"><h4>Deleted: trunk/WebCore/bindings/js/JSDOMExceptionConstructor.cpp (29057 => 29058)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/WebCore/bindings/js/JSDOMExceptionConstructor.cpp        2008-01-01 02:01:46 UTC (rev 29057)
+++ trunk/WebCore/bindings/js/JSDOMExceptionConstructor.cpp        2008-01-01 03:04:16 UTC (rev 29058)
</span><span class="lines">@@ -1,81 +0,0 @@
</span><del>-/*
- * Copyright (C) 2007 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 COMPUTER, 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 COMPUTER, 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 &quot;config.h&quot;
-#include &quot;JSDOMExceptionConstructor.h&quot;
-
-#include &quot;ExceptionCode.h&quot;
-#include &lt;kjs/object_object.h&gt;
-
-#include &quot;JSDOMExceptionConstructor.lut.h&quot;
-
-namespace WebCore {
-
-using namespace KJS;
-
-const ClassInfo JSDOMExceptionConstructor::info = { &quot;DOMExceptionConstructor&quot;, 0, 0 };
-
-/* Source for DOMExceptionConstructorTable. Use &quot;make hashtables&quot; to regenerate.
-@begin JSDOMExceptionConstructorTable 15
-  INDEX_SIZE_ERR                WebCore::INDEX_SIZE_ERR               DontDelete|ReadOnly
-  DOMSTRING_SIZE_ERR            WebCore::DOMSTRING_SIZE_ERR   DontDelete|ReadOnly
-  HIERARCHY_REQUEST_ERR         WebCore::HIERARCHY_REQUEST_ERR        DontDelete|ReadOnly
-  WRONG_DOCUMENT_ERR            WebCore::WRONG_DOCUMENT_ERR   DontDelete|ReadOnly
-  INVALID_CHARACTER_ERR         WebCore::INVALID_CHARACTER_ERR        DontDelete|ReadOnly
-  NO_DATA_ALLOWED_ERR           WebCore::NO_DATA_ALLOWED_ERR  DontDelete|ReadOnly
-  NO_MODIFICATION_ALLOWED_ERR   WebCore::NO_MODIFICATION_ALLOWED_ERR  DontDelete|ReadOnly
-  NOT_FOUND_ERR                 WebCore::NOT_FOUND_ERR                DontDelete|ReadOnly
-  NOT_SUPPORTED_ERR             WebCore::NOT_SUPPORTED_ERR    DontDelete|ReadOnly
-  INUSE_ATTRIBUTE_ERR           WebCore::INUSE_ATTRIBUTE_ERR  DontDelete|ReadOnly
-  INVALID_STATE_ERR             WebCore::INVALID_STATE_ERR    DontDelete|ReadOnly
-  SYNTAX_ERR                    WebCore::SYNTAX_ERR           DontDelete|ReadOnly
-  INVALID_MODIFICATION_ERR      WebCore::INVALID_MODIFICATION_ERR     DontDelete|ReadOnly
-  NAMESPACE_ERR                 WebCore::NAMESPACE_ERR                DontDelete|ReadOnly
-  INVALID_ACCESS_ERR            WebCore::INVALID_ACCESS_ERR   DontDelete|ReadOnly
-@end
-*/
-
-JSDOMExceptionConstructor::JSDOMExceptionConstructor(ExecState* exec) 
-{ 
-    setPrototype(exec-&gt;lexicalGlobalObject()-&gt;objectPrototype());
-}
-
-bool JSDOMExceptionConstructor::getOwnPropertySlot(ExecState* exec, const Identifier&amp; propertyName, PropertySlot&amp; slot)
-{
-    return getStaticValueSlot&lt;JSDOMExceptionConstructor, DOMObject&gt;(exec, &amp;JSDOMExceptionConstructorTable, this, propertyName, slot);
-}
-
-JSValue* JSDOMExceptionConstructor::getValueProperty(ExecState*, int token) const
-{
-    // We use the token as the value to return directly
-    return jsNumber(token);
-}
-
-JSObject* getDOMExceptionConstructor(ExecState* exec)
-{
-    return cacheGlobalObject&lt;JSDOMExceptionConstructor&gt;(exec, &quot;[[DOMException.constructor]]&quot;);
-}
-
-} // namespace WebCore
</del></span></pre></div>
<a id="trunkWebCorebindingsjsJSDOMExceptionConstructorh"></a>
<div class="delfile"><h4>Deleted: trunk/WebCore/bindings/js/JSDOMExceptionConstructor.h (29057 => 29058)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/WebCore/bindings/js/JSDOMExceptionConstructor.h        2008-01-01 02:01:46 UTC (rev 29057)
+++ trunk/WebCore/bindings/js/JSDOMExceptionConstructor.h        2008-01-01 03:04:16 UTC (rev 29058)
</span><span class="lines">@@ -1,50 +0,0 @@
</span><del>-/*
- * Copyright (C) 2007 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 COMPUTER, 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 COMPUTER, 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. 
- */
-
-#ifndef JSDOMExceptionConstructor_h
-#define JSDOMExceptionConstructor_h
-
-#include &quot;kjs_binding.h&quot;
-
-namespace WebCore {
-
-    // Constructor for DOMException - constructor stuff not implemented yet
-    class JSDOMExceptionConstructor : public KJS::DOMObject {
-    public:
-        JSDOMExceptionConstructor(KJS::ExecState*);
-
-        virtual bool getOwnPropertySlot(KJS::ExecState*, const KJS::Identifier&amp;, KJS::PropertySlot&amp;);
-        KJS::JSValue* getValueProperty(KJS::ExecState*, int token) const;
-        // no put - all read-only
-
-        virtual const KJS::ClassInfo* classInfo() const { return &amp;info; }
-        static const KJS::ClassInfo info;
-    };
-
-    KJS::JSObject* getDOMExceptionConstructor(KJS::ExecState*);
-
-} // namespace WebCore
-
-#endif // JSDOMExceptionConstructor_h
</del></span></pre></div>
<a id="trunkWebCorebindingsjskjs_bindingcpp"></a>
<div class="modfile"><h4>Modified: trunk/WebCore/bindings/js/kjs_binding.cpp (29057 => 29058)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/WebCore/bindings/js/kjs_binding.cpp        2008-01-01 02:01:46 UTC (rev 29057)
+++ trunk/WebCore/bindings/js/kjs_binding.cpp        2008-01-01 03:04:16 UTC (rev 29058)
</span><span class="lines">@@ -26,9 +26,11 @@
</span><span class="cx"> #include &quot;config.h&quot;
</span><span class="cx"> #include &quot;kjs_binding.h&quot;
</span><span class="cx"> 
</span><ins>+#include &quot;DOMCoreException.h&quot;
</ins><span class="cx"> #include &quot;ExceptionCode.h&quot;
</span><span class="cx"> #include &quot;HTMLImageElement.h&quot;
</span><span class="cx"> #include &quot;HTMLNames.h&quot;
</span><ins>+#include &quot;JSDOMCoreException.h&quot;
</ins><span class="cx"> #include &quot;JSNode.h&quot;
</span><span class="cx"> #include &quot;XMLHttpRequest.h&quot;
</span><span class="cx"> 
</span><span class="lines">@@ -266,24 +268,9 @@
</span><span class="cx">         return;
</span><span class="cx">     }
</span><span class="cx"> 
</span><del>-    ExceptionCodeDescription description;
-    getExceptionCodeDescription(ec, description);
-
-    // 100 characters is a big enough buffer, because there are:
-    //   13 characters in the message
-    //   10 characters in the longest type name
-    //   27 characters in the longest exception name
-    //   20 or so digits in the longest integer's ASCII form (even if int is 64-bit)
-    //   1 byte for a null character
-    // That adds up to about 70 bytes.
-    char buffer[100];
-    if (description.name)
-        sprintf(buffer, &quot;%s: %s Exception %d&quot;, description.name, description.typeName, description.code);
-    else
-        sprintf(buffer, &quot;%s Exception %d&quot;, description.typeName, description.code);
-
-    JSObject* errorObject = throwError(exec, GeneralError, buffer);
-    errorObject-&gt;put(exec, &quot;code&quot;, jsNumber(description.code));
</del><ins>+    DOMCoreException* exception = new DOMCoreException(ec);
+    JSValue* errorObject = toJS(exec, exception);
+    exec-&gt;setException(errorObject);
</ins><span class="cx"> }
</span><span class="cx"> 
</span><del>-}
</del><ins>+} // namespace KJS
</ins></span></pre></div>
<a id="trunkWebCorebindingsjskjs_windowcpp"></a>
<div class="modfile"><h4>Modified: trunk/WebCore/bindings/js/kjs_window.cpp (29057 => 29058)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/WebCore/bindings/js/kjs_window.cpp        2008-01-01 02:01:46 UTC (rev 29057)
+++ trunk/WebCore/bindings/js/kjs_window.cpp        2008-01-01 03:04:16 UTC (rev 29058)
</span><span class="lines">@@ -39,7 +39,6 @@
</span><span class="cx"> #include &quot;FrameTree.h&quot;
</span><span class="cx"> #include &quot;GCController.h&quot;
</span><span class="cx"> #include &quot;HTMLDocument.h&quot;
</span><del>-#include &quot;JSDOMExceptionConstructor.h&quot;
</del><span class="cx"> #include &quot;JSDOMWindow.h&quot;
</span><span class="cx"> #include &quot;JSEvent.h&quot;
</span><span class="cx"> #include &quot;JSHTMLAudioElementConstructor.h&quot;
</span><span class="lines">@@ -194,7 +193,6 @@
</span><span class="cx">   onbeforeunload        Window::Onbeforeunload      DontDelete
</span><span class="cx"> # -- Constructors --
</span><span class="cx">   Audio                 Window::Audio               DontDelete
</span><del>-  DOMException          Window::DOMException        DontDelete
</del><span class="cx">   Image                 Window::Image               DontDelete
</span><span class="cx">   Option                Window::Option              DontDelete
</span><span class="cx">   XMLHttpRequest        Window::XMLHttpRequest      DontDelete
</span><span class="lines">@@ -460,10 +458,6 @@
</span><span class="cx">    switch (token) {
</span><span class="cx">    case Crypto:
</span><span class="cx">       return jsUndefined(); // FIXME: implement this
</span><del>-   case DOMException:
-      if (!allowsAccessFrom(exec))
-        return jsUndefined();
-      return getDOMExceptionConstructor(exec);
</del><span class="cx">     case Event_:
</span><span class="cx">       if (!allowsAccessFrom(exec))
</span><span class="cx">         return jsUndefined();
</span></span></pre></div>
<a id="trunkWebCorebindingsscriptsCodeGeneratorJSpm"></a>
<div class="modfile"><h4>Modified: trunk/WebCore/bindings/scripts/CodeGeneratorJS.pm (29057 => 29058)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/WebCore/bindings/scripts/CodeGeneratorJS.pm        2008-01-01 02:01:46 UTC (rev 29057)
+++ trunk/WebCore/bindings/scripts/CodeGeneratorJS.pm        2008-01-01 03:04:16 UTC (rev 29058)
</span><span class="lines">@@ -133,6 +133,14 @@
</span><span class="cx">     die &quot;Don't know what headers to include for module $module&quot;;
</span><span class="cx"> }
</span><span class="cx"> 
</span><ins>+sub GetVisibleClassName
+{
+    my $className = shift;
+
+    return &quot;DOMException&quot; if $className eq &quot;DOMCoreException&quot;;
+    return $className;
+}
+
</ins><span class="cx"> sub AvoidInclusionOfType
</span><span class="cx"> {
</span><span class="cx">     my $type = shift;
</span><span class="lines">@@ -563,6 +571,7 @@
</span><span class="cx">     my $hasParent = $hasLegacyParent || $hasRealParent;
</span><span class="cx">     my $parentClassName = GetParentClassName($dataNode);
</span><span class="cx">     my $conditional = $dataNode-&gt;extendedAttributes-&gt;{&quot;Conditional&quot;};
</span><ins>+    my $visibleClassName = GetVisibleClassName($interfaceName);
</ins><span class="cx"> 
</span><span class="cx">     # - Add default header template
</span><span class="cx">     @implContentHeader = split(&quot;\r&quot;, $headerTemplate);
</span><span class="lines">@@ -674,7 +683,7 @@
</span><span class="cx">         my $protoClassName;
</span><span class="cx">         $protoClassName = &quot;${className}Prototype&quot;;
</span><span class="cx"> 
</span><del>-        push(@implContent, constructorFor($className, $protoClassName, $interfaceName, $dataNode-&gt;extendedAttributes-&gt;{&quot;CanBeConstructed&quot;}));
</del><ins>+        push(@implContent, constructorFor($className, $protoClassName, $interfaceName, $visibleClassName, $dataNode-&gt;extendedAttributes-&gt;{&quot;CanBeConstructed&quot;}));
</ins><span class="cx">     }
</span><span class="cx"> 
</span><span class="cx">     # - Add functions and constants to a hashtable definition
</span><span class="lines">@@ -722,7 +731,7 @@
</span><span class="cx">                                \@hashKeys, \@hashValues,
</span><span class="cx">                                \@hashSpecials, \@hashParameters);
</span><span class="cx"> 
</span><del>-    push(@implContent, &quot;const ClassInfo ${className}Prototype::info = { \&quot;${interfaceName}Prototype\&quot;, 0, &amp;${className}PrototypeTable };\n\n&quot;);
</del><ins>+    push(@implContent, &quot;const ClassInfo ${className}Prototype::info = { \&quot;${visibleClassName}Prototype\&quot;, 0, &amp;${className}PrototypeTable };\n\n&quot;);
</ins><span class="cx">     if ($dataNode-&gt;extendedAttributes-&gt;{&quot;DoNotCache&quot;}) {
</span><span class="cx">         push(@implContent, &quot;JSObject* ${className}Prototype::self()\n&quot;);
</span><span class="cx">         push(@implContent, &quot;{\n&quot;);
</span><span class="lines">@@ -753,7 +762,7 @@
</span><span class="cx">     }
</span><span class="cx"> 
</span><span class="cx">     # - Initialize static ClassInfo object
</span><del>-    push(@implContent, &quot;const ClassInfo $className&quot; . &quot;::info = { \&quot;$interfaceName\&quot;, &quot;);
</del><ins>+    push(@implContent, &quot;const ClassInfo $className&quot; . &quot;::info = { \&quot;${visibleClassName}\&quot;, &quot;);
</ins><span class="cx">     if ($hasParent) {
</span><span class="cx">         push(@implContent, &quot;&amp;&quot; .$parentClassName . &quot;::info, &quot;);
</span><span class="cx">     } else {
</span><span class="lines">@@ -1734,6 +1743,7 @@
</span><span class="cx">     my $className = shift;
</span><span class="cx">     my $protoClassName = shift;
</span><span class="cx">     my $interfaceName = shift;
</span><ins>+    my $visibleClassName = shift;
</ins><span class="cx">     my $canConstruct = shift;
</span><span class="cx"> 
</span><span class="cx"> my $implContent = &lt;&lt; &quot;EOF&quot;;
</span><span class="lines">@@ -1762,7 +1772,7 @@
</span><span class="cx"> $implContent .= &lt;&lt; &quot;EOF&quot;;
</span><span class="cx"> };
</span><span class="cx"> 
</span><del>-const ClassInfo ${className}Constructor::info = { &quot;${interfaceName}Constructor&quot;, 0, &amp;${className}ConstructorTable };
</del><ins>+const ClassInfo ${className}Constructor::info = { &quot;${visibleClassName}Constructor&quot;, 0, &amp;${className}ConstructorTable };
</ins><span class="cx"> 
</span><span class="cx"> bool ${className}Constructor::getOwnPropertySlot(ExecState* exec, const Identifier&amp; propertyName, PropertySlot&amp; slot)
</span><span class="cx"> {
</span></span></pre></div>
<a id="trunkWebCoredomDOMCoreExceptioncpp"></a>
<div class="addfile"><h4>Added: trunk/WebCore/dom/DOMCoreException.cpp (0 => 29058)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/WebCore/dom/DOMCoreException.cpp                                (rev 0)
+++ trunk/WebCore/dom/DOMCoreException.cpp        2008-01-01 03:04:16 UTC (rev 29058)
</span><span class="lines">@@ -0,0 +1,53 @@
</span><ins>+/*
+ * Copyright (C) 2007 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.
+ * 3.  Neither the name of Apple Computer, Inc. (&quot;Apple&quot;) 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 APPLE AND ITS CONTRIBUTORS &quot;AS IS&quot; 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 &quot;config.h&quot;
+#include &quot;DOMCoreException.h&quot;
+
+namespace WebCore {
+
+DOMCoreException::DOMCoreException(ExceptionCode ec)
+{
+    ExceptionCodeDescription description;
+    getExceptionCodeDescription(ec, description);
+
+    m_code = description.code;
+
+    if (description.name) {
+        m_name = description.name;
+        m_message = String::format(&quot;%s: %s Exception %d&quot;, description.name, description.typeName, description.code);
+    } else
+        m_message = String::format(&quot;%s Exception %d&quot;, description.typeName, description.code);
+}
+
+String DOMCoreException::toString() const
+{
+    return &quot;Error: &quot; + m_message;
+}
+
+} // namespace WebCore
</ins></span></pre></div>
<a id="trunkWebCoredomDOMCoreExceptionh"></a>
<div class="addfile"><h4>Added: trunk/WebCore/dom/DOMCoreException.h (0 => 29058)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/WebCore/dom/DOMCoreException.h                                (rev 0)
+++ trunk/WebCore/dom/DOMCoreException.h        2008-01-01 03:04:16 UTC (rev 29058)
</span><span class="lines">@@ -0,0 +1,81 @@
</span><ins>+/*
+ * Copyright (C) 2007 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.
+ * 3.  Neither the name of Apple Computer, Inc. (&quot;Apple&quot;) 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 APPLE AND ITS CONTRIBUTORS &quot;AS IS&quot; 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.
+ */
+
+#ifndef DOMCoreException_h
+#define DOMCodeException_h
+
+#include &quot;ExceptionCode.h&quot;
+#include &quot;PlatformString.h&quot;
+#include &lt;wtf/RefCounted.h&gt;
+
+namespace WebCore {
+
+    class DOMCoreException : public RefCounted&lt;DOMCoreException&gt; {
+    public:
+        DOMCoreException(ExceptionCode);
+
+        // FIXME: this is copied from ExceptionCode.h, it needs to be kept in sync.
+        enum {
+            INDEX_SIZE_ERR = 1,
+            DOMSTRING_SIZE_ERR = 2,
+            HIERARCHY_REQUEST_ERR = 3,
+            WRONG_DOCUMENT_ERR = 4,
+            INVALID_CHARACTER_ERR = 5,
+            NO_DATA_ALLOWED_ERR = 6,
+            NO_MODIFICATION_ALLOWED_ERR = 7,
+            NOT_FOUND_ERR = 8,
+            NOT_SUPPORTED_ERR = 9,
+            INUSE_ATTRIBUTE_ERR = 10,
+
+            // Introduced in DOM Level 2:
+            INVALID_STATE_ERR = 11,
+            SYNTAX_ERR = 12,
+            INVALID_MODIFICATION_ERR = 13,
+            NAMESPACE_ERR = 14,
+            INVALID_ACCESS_ERR = 15,
+
+            // Introduced in DOM Level 3:
+            VALIDATION_ERR = 16,
+            TYPE_MISMATCH_ERR = 17
+        };
+
+        int code() const { return m_code; }
+        String name() const { return m_name; }
+        String message() const { return m_message; }
+
+        String toString() const;
+
+    private:
+        int m_code;
+        String m_name;
+        String m_message;
+    };
+
+} // namespace WebCore
+
+#endif // DOMCoreException_h
</ins></span></pre></div>
<a id="trunkWebCoredomDOMCoreExceptionidl"></a>
<div class="addfile"><h4>Added: trunk/WebCore/dom/DOMCoreException.idl (0 => 29058)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/WebCore/dom/DOMCoreException.idl                                (rev 0)
+++ trunk/WebCore/dom/DOMCoreException.idl        2008-01-01 03:04:16 UTC (rev 29058)
</span><span class="lines">@@ -0,0 +1,70 @@
</span><ins>+/*
+ * Copyright (C) 2007 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.
+ * 3.  Neither the name of Apple Computer, Inc. (&quot;Apple&quot;) 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 APPLE AND ITS CONTRIBUTORS &quot;AS IS&quot; 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.
+ */
+
+module core {
+
+    interface [
+        GenerateConstructor
+    ] DOMCoreException {
+
+        readonly attribute unsigned short   code;
+        readonly attribute DOMString        name;
+        readonly attribute DOMString        message;
+
+#if defined(LANGUAGE_JAVASCRIPT)
+        // Override in a Mozilla compatible format
+        [DontEnum] DOMString toString();
+#endif
+
+        // ExceptionCode
+        const unsigned short      INDEX_SIZE_ERR                 = 1;
+        const unsigned short      DOMSTRING_SIZE_ERR             = 2;
+        const unsigned short      HIERARCHY_REQUEST_ERR          = 3;
+        const unsigned short      WRONG_DOCUMENT_ERR             = 4;
+        const unsigned short      INVALID_CHARACTER_ERR          = 5;
+        const unsigned short      NO_DATA_ALLOWED_ERR            = 6;
+        const unsigned short      NO_MODIFICATION_ALLOWED_ERR    = 7;
+        const unsigned short      NOT_FOUND_ERR                  = 8;
+        const unsigned short      NOT_SUPPORTED_ERR              = 9;
+        const unsigned short      INUSE_ATTRIBUTE_ERR            = 10;
+        // Introduced in DOM Level 2:
+        const unsigned short      INVALID_STATE_ERR              = 11;
+        // Introduced in DOM Level 2:
+        const unsigned short      SYNTAX_ERR                     = 12;
+        // Introduced in DOM Level 2:
+        const unsigned short      INVALID_MODIFICATION_ERR       = 13;
+        // Introduced in DOM Level 2:
+        const unsigned short      NAMESPACE_ERR                  = 14;
+        // Introduced in DOM Level 2:
+        const unsigned short      INVALID_ACCESS_ERR             = 15;
+        // Introduced in DOM Level 3:
+        const unsigned short      VALIDATION_ERR                 = 16;
+        // Introduced in DOM Level 3:
+        const unsigned short      TYPE_MISMATCH_ERR              = 17;
+    };
+}
</ins></span></pre></div>
<a id="trunkWebCorepageDOMWindowidl"></a>
<div class="modfile"><h4>Modified: trunk/WebCore/page/DOMWindow.idl (29057 => 29058)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/WebCore/page/DOMWindow.idl        2008-01-01 02:01:46 UTC (rev 29057)
+++ trunk/WebCore/page/DOMWindow.idl        2008-01-01 03:04:16 UTC (rev 29058)
</span><span class="lines">@@ -153,7 +153,7 @@
</span><span class="cx">         attribute StyleSheetListConstructor StyleSheetList;
</span><span class="cx"> 
</span><span class="cx">         // FIXME: Implement the commented-out global constructors for interfaces listed in DOM Level 3 Core specification.
</span><del>-//        attribute DOMExceptionConstructor DOMException;
</del><ins>+        attribute DOMCoreExceptionConstructor DOMException;
</ins><span class="cx"> //        attribute DOMStringListConstructor DOMStringList;
</span><span class="cx"> //        attribute NameListConstructor NameList;
</span><span class="cx"> //        attribute DOMImplementationListConstructor DOMImplementationList;
</span></span></pre>
</div>
</div>

</body>
</html>