<!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" />
<title>[190030] trunk</title>
</head>
<body>

<style type="text/css"><!--
#msg dl.meta { border: 1px #006 solid; background: #369; padding: 6px; color: #fff; }
#msg dl.meta dt { float: left; width: 6em; font-weight: bold; }
#msg dt:after { content:':';}
#msg dl, #msg dt, #msg ul, #msg li, #header, #footer, #logmsg { 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 { overflow: auto; background: #ffc; border: 1px #fa0 solid; padding: 6px; }
#logmsg { background: #ffc; border: 1px #fa0 solid; padding: 1em 1em 0 1em; }
#logmsg p, #logmsg pre, #logmsg blockquote { margin: 0 0 1em 0; }
#logmsg p, #logmsg li, #logmsg dt, #logmsg dd { line-height: 14pt; }
#logmsg h1, #logmsg h2, #logmsg h3, #logmsg h4, #logmsg h5, #logmsg h6 { margin: .5em 0; }
#logmsg h1:first-child, #logmsg h2:first-child, #logmsg h3:first-child, #logmsg h4:first-child, #logmsg h5:first-child, #logmsg h6:first-child { margin-top: 0; }
#logmsg ul, #logmsg ol { padding: 0; list-style-position: inside; margin: 0 0 0 1em; }
#logmsg ul { text-indent: -1em; padding-left: 1em; }#logmsg ol { text-indent: -1.5em; padding-left: 1.5em; }
#logmsg > ul, #logmsg > ol { margin: 0 0 1em 0; }
#logmsg pre { background: #eee; padding: 1em; }
#logmsg blockquote { border: 1px solid #fa0; border-left-width: 10px; padding: 1em 1em 0 1em; background: white;}
#logmsg dl { margin: 0; }
#logmsg dt { font-weight: bold; }
#logmsg dd { margin: 0; padding: 0 0 0.5em 0; }
#logmsg dd:before { content:'\00bb';}
#logmsg table { border-spacing: 0px; border-collapse: collapse; border-top: 4px solid #fa0; border-bottom: 1px solid #fa0; background: #fff; }
#logmsg table th { text-align: left; font-weight: normal; padding: 0.2em 0.5em; border-top: 1px dotted #fa0; }
#logmsg table td { text-align: right; border-top: 1px dotted #fa0; padding: 0.2em 0.5em; }
#logmsg table thead th { text-align: center; border-bottom: 1px solid #fa0; }
#logmsg table th.Corner { text-align: left; }
#logmsg hr { border: none 0; border-top: 2px dashed #fa0; height: 1px; }
#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>
<div id="msg">
<dl class="meta">
<dt>Revision</dt> <dd><a href="http://trac.webkit.org/projects/webkit/changeset/190030">190030</a></dd>
<dt>Author</dt> <dd>cdumez@apple.com</dd>
<dt>Date</dt> <dd>2015-09-20 09:43:55 -0700 (Sun, 20 Sep 2015)</dd>
</dl>

<h3>Log Message</h3>
<pre>Get rid of custom bindings for HTMLLinkElement.sizes setter
https://bugs.webkit.org/show_bug.cgi?id=149382

Reviewed by Sam Weinig.

LayoutTests/imported/w3c:

* web-platform-tests/html/dom/interfaces-expected.txt:
Rebaseline test. Our bindings generator does not move attributes that have
a custom setter from the instance to the prototype. Now that the 'sizes'
attribute no longer has a custom setter, it has moved to the prototype,
where it is expected to be.

Source/WebCore:

Get rid of custom bindings for HTMLLinkElement.sizes setter by leveraging
the new [PutForwards=xxx] Web IDL extended attribute, as per the HTML
specification:
- https://html.spec.whatwg.org/#htmllinkelement

Also add FIXME comments in our IDL for various attributes that should be
using [PutForwards=xxx] according to the HTML specification but are not
currently. Those were not updated in this patch because it will subtly
change their web-exposed behavior.

No new tests, no intended web-exposed behavior change. However, one side
effect of the change is that the attribtue has moved to the prototype.
Our bindings generator was keeping this attribute on the instance because
it has a custom setter.
Bindings tests coverage was extended.

* CMakeLists.txt:
* WebCore.vcxproj/WebCore.vcxproj:
* WebCore.vcxproj/WebCore.vcxproj.filters:
* WebCore.xcodeproj/project.pbxproj:
* bindings/js/JSBindingsAllInOne.cpp:
* bindings/js/JSHTMLLinkElementCustom.cpp: Removed.
Drop custom bindings for HTMLLinkElement.sizes setter.

* bindings/scripts/CodeGeneratorJS.pm:
(GenerateImplementation):
- Stop passing an extra isNull argument to getters of nullable attributes
  that have a wrapper type. These can return a null pointer so there is
  no need for an extra argument.
- When [PutForwards=xxx] is used, only do the null-check on the attribute
  getter if the attribute is marked as nullable. If the attribute is not
  marked as nullable, the implementation is expected to return a C++
  reference, otherwise a raw pointer. This was needed because
  HTMLLinkElement::sizes() returns a reference as it can never return
  null.

* bindings/scripts/test/GObject/WebKitDOMTestObj.cpp:
* bindings/scripts/test/GObject/WebKitDOMTestObj.h:
* bindings/scripts/test/JS/JSTestObj.cpp:
* bindings/scripts/test/ObjC/DOMTestObj.h:
* bindings/scripts/test/ObjC/DOMTestObj.mm:
* bindings/scripts/test/TestObj.idl:
Add bindings tests coverage for using [PutForwards=xxx] on a
nullable attribute.

* dom/Document.idl:
Mark Document.location as nullable as per the specification. The
implementation returns a raw pointer and can return null. The
bindings generator expects a raw pointer and will do a null check
on it.

* html/HTMLAnchorElement.idl:
* html/HTMLAreaElement.idl:
* html/HTMLElement.idl:
* html/HTMLIFrameElement.idl:
* html/HTMLOutputElement.idl:
* html/HTMLTableCellElement.idl:
Add FIXME comments for attributes that are supposed to use
[PutForwards=xxx] as per the HTML specification but currently don't.

* html/HTMLLinkElement.idl:
Use [PutForwards=value] for the 'sizes' attribute, as per the
specification and stop using a custom setter.</pre>

<h3>Modified Paths</h3>
<ul>
<li><a href="#trunkLayoutTestsimportedw3cChangeLog">trunk/LayoutTests/imported/w3c/ChangeLog</a></li>
<li><a href="#trunkLayoutTestsimportedw3cwebplatformtestshtmldominterfacesexpectedtxt">trunk/LayoutTests/imported/w3c/web-platform-tests/html/dom/interfaces-expected.txt</a></li>
<li><a href="#trunkSourceWebCoreCMakeListstxt">trunk/Source/WebCore/CMakeLists.txt</a></li>
<li><a href="#trunkSourceWebCoreChangeLog">trunk/Source/WebCore/ChangeLog</a></li>
<li><a href="#trunkSourceWebCoreModulesmediastreamHTMLMediaElementMediaStreamcpp">trunk/Source/WebCore/Modules/mediastream/HTMLMediaElementMediaStream.cpp</a></li>
<li><a href="#trunkSourceWebCoreModulesmediastreamHTMLMediaElementMediaStreamh">trunk/Source/WebCore/Modules/mediastream/HTMLMediaElementMediaStream.h</a></li>
<li><a href="#trunkSourceWebCoreModulesmediastreamMediaTrackConstraintscpp">trunk/Source/WebCore/Modules/mediastream/MediaTrackConstraints.cpp</a></li>
<li><a href="#trunkSourceWebCoreModulesmediastreamMediaTrackConstraintsh">trunk/Source/WebCore/Modules/mediastream/MediaTrackConstraints.h</a></li>
<li><a href="#trunkSourceWebCoreWebCorevcxprojWebCorevcxproj">trunk/Source/WebCore/WebCore.vcxproj/WebCore.vcxproj</a></li>
<li><a href="#trunkSourceWebCoreWebCorevcxprojWebCorevcxprojfilters">trunk/Source/WebCore/WebCore.vcxproj/WebCore.vcxproj.filters</a></li>
<li><a href="#trunkSourceWebCoreWebCorexcodeprojprojectpbxproj">trunk/Source/WebCore/WebCore.xcodeproj/project.pbxproj</a></li>
<li><a href="#trunkSourceWebCorebindingsjsJSBindingsAllInOnecpp">trunk/Source/WebCore/bindings/js/JSBindingsAllInOne.cpp</a></li>
<li><a href="#trunkSourceWebCorebindingsscriptsCodeGeneratorJSpm">trunk/Source/WebCore/bindings/scripts/CodeGeneratorJS.pm</a></li>
<li><a href="#trunkSourceWebCorebindingsscriptstestGObjectWebKitDOMTestObjcpp">trunk/Source/WebCore/bindings/scripts/test/GObject/WebKitDOMTestObj.cpp</a></li>
<li><a href="#trunkSourceWebCorebindingsscriptstestGObjectWebKitDOMTestObjh">trunk/Source/WebCore/bindings/scripts/test/GObject/WebKitDOMTestObj.h</a></li>
<li><a href="#trunkSourceWebCorebindingsscriptstestJSJSTestObjcpp">trunk/Source/WebCore/bindings/scripts/test/JS/JSTestObj.cpp</a></li>
<li><a href="#trunkSourceWebCorebindingsscriptstestObjCDOMTestObjh">trunk/Source/WebCore/bindings/scripts/test/ObjC/DOMTestObj.h</a></li>
<li><a href="#trunkSourceWebCorebindingsscriptstestObjCDOMTestObjmm">trunk/Source/WebCore/bindings/scripts/test/ObjC/DOMTestObj.mm</a></li>
<li><a href="#trunkSourceWebCorebindingsscriptstestTestObjidl">trunk/Source/WebCore/bindings/scripts/test/TestObj.idl</a></li>
<li><a href="#trunkSourceWebCoredomDocumentidl">trunk/Source/WebCore/dom/Document.idl</a></li>
<li><a href="#trunkSourceWebCorehtmlHTMLAnchorElementidl">trunk/Source/WebCore/html/HTMLAnchorElement.idl</a></li>
<li><a href="#trunkSourceWebCorehtmlHTMLAreaElementidl">trunk/Source/WebCore/html/HTMLAreaElement.idl</a></li>
<li><a href="#trunkSourceWebCorehtmlHTMLElementidl">trunk/Source/WebCore/html/HTMLElement.idl</a></li>
<li><a href="#trunkSourceWebCorehtmlHTMLIFrameElementidl">trunk/Source/WebCore/html/HTMLIFrameElement.idl</a></li>
<li><a href="#trunkSourceWebCorehtmlHTMLLinkElementcpp">trunk/Source/WebCore/html/HTMLLinkElement.cpp</a></li>
<li><a href="#trunkSourceWebCorehtmlHTMLLinkElementh">trunk/Source/WebCore/html/HTMLLinkElement.h</a></li>
<li><a href="#trunkSourceWebCorehtmlHTMLLinkElementidl">trunk/Source/WebCore/html/HTMLLinkElement.idl</a></li>
<li><a href="#trunkSourceWebCorehtmlHTMLOutputElementidl">trunk/Source/WebCore/html/HTMLOutputElement.idl</a></li>
<li><a href="#trunkSourceWebCorehtmlHTMLTableCellElementidl">trunk/Source/WebCore/html/HTMLTableCellElement.idl</a></li>
</ul>

<h3>Removed Paths</h3>
<ul>
<li><a href="#trunkSourceWebCorebindingsjsJSHTMLLinkElementCustomcpp">trunk/Source/WebCore/bindings/js/JSHTMLLinkElementCustom.cpp</a></li>
</ul>

</div>
<div id="patch">
<h3>Diff</h3>
<a id="trunkLayoutTestsimportedw3cChangeLog"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/imported/w3c/ChangeLog (190029 => 190030)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/imported/w3c/ChangeLog        2015-09-20 16:41:46 UTC (rev 190029)
+++ trunk/LayoutTests/imported/w3c/ChangeLog        2015-09-20 16:43:55 UTC (rev 190030)
</span><span class="lines">@@ -1,3 +1,16 @@
</span><ins>+2015-09-19  Chris Dumez  &lt;cdumez@apple.com&gt;
+
+        Get rid of custom bindings for HTMLLinkElement.sizes setter
+        https://bugs.webkit.org/show_bug.cgi?id=149382
+
+        Reviewed by Sam Weinig.
+
+        * web-platform-tests/html/dom/interfaces-expected.txt:
+        Rebaseline test. Our bindings generator does not move attributes that have
+        a custom setter from the instance to the prototype. Now that the 'sizes'
+        attribute no longer has a custom setter, it has moved to the prototype,
+        where it is expected to be.
+
</ins><span class="cx"> 2015-09-18  Chris Dumez  &lt;cdumez@apple.com&gt;
</span><span class="cx"> 
</span><span class="cx">         Drop support for Entity Node type
</span></span></pre></div>
<a id="trunkLayoutTestsimportedw3cwebplatformtestshtmldominterfacesexpectedtxt"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/imported/w3c/web-platform-tests/html/dom/interfaces-expected.txt (190029 => 190030)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/imported/w3c/web-platform-tests/html/dom/interfaces-expected.txt        2015-09-20 16:41:46 UTC (rev 190029)
+++ trunk/LayoutTests/imported/w3c/web-platform-tests/html/dom/interfaces-expected.txt        2015-09-20 16:43:55 UTC (rev 190030)
</span><span class="lines">@@ -164,6 +164,7 @@
</span><span class="cx"> CONSOLE MESSAGE: line 583: Deprecated attempt to access property 'media' on a non-HTMLLinkElement object.
</span><span class="cx"> CONSOLE MESSAGE: line 583: Deprecated attempt to access property 'hreflang' on a non-HTMLLinkElement object.
</span><span class="cx"> CONSOLE MESSAGE: line 583: Deprecated attempt to access property 'type' on a non-HTMLLinkElement object.
</span><ins>+CONSOLE MESSAGE: line 583: Deprecated attempt to access property 'sizes' on a non-HTMLLinkElement object.
</ins><span class="cx"> CONSOLE MESSAGE: line 583: Deprecated attempt to access property 'charset' on a non-HTMLLinkElement object.
</span><span class="cx"> CONSOLE MESSAGE: line 583: Deprecated attempt to access property 'rev' on a non-HTMLLinkElement object.
</span><span class="cx"> CONSOLE MESSAGE: line 583: Deprecated attempt to access property 'target' on a non-HTMLLinkElement object.
</span><span class="lines">@@ -2348,7 +2349,9 @@
</span><span class="cx"> FAIL HTMLLinkElement interface: attribute type assert_throws: getting property on prototype object must throw TypeError function &quot;function () {
</span><span class="cx">     [native code]
</span><span class="cx"> }&quot; did not throw
</span><del>-FAIL HTMLLinkElement interface: attribute sizes assert_true: The prototype object must have a property &quot;sizes&quot; expected true got false
</del><ins>+FAIL HTMLLinkElement interface: attribute sizes assert_throws: getting property on prototype object must throw TypeError function &quot;function () {
+    [native code]
+}&quot; did not throw
</ins><span class="cx"> FAIL HTMLLinkElement interface: attribute charset assert_throws: getting property on prototype object must throw TypeError function &quot;function () {
</span><span class="cx">     [native code]
</span><span class="cx"> }&quot; did not throw
</span><span class="lines">@@ -2367,7 +2370,7 @@
</span><span class="cx"> PASS HTMLLinkElement interface: document.createElement(&quot;link&quot;) must inherit property &quot;media&quot; with the proper type (4) 
</span><span class="cx"> PASS HTMLLinkElement interface: document.createElement(&quot;link&quot;) must inherit property &quot;hreflang&quot; with the proper type (5) 
</span><span class="cx"> PASS HTMLLinkElement interface: document.createElement(&quot;link&quot;) must inherit property &quot;type&quot; with the proper type (6) 
</span><del>-FAIL HTMLLinkElement interface: document.createElement(&quot;link&quot;) must inherit property &quot;sizes&quot; with the proper type (7) assert_inherits: property &quot;sizes&quot; found on object expected in prototype chain
</del><ins>+PASS HTMLLinkElement interface: document.createElement(&quot;link&quot;) must inherit property &quot;sizes&quot; with the proper type (7) 
</ins><span class="cx"> PASS HTMLLinkElement interface: document.createElement(&quot;link&quot;) must inherit property &quot;charset&quot; with the proper type (8) 
</span><span class="cx"> PASS HTMLLinkElement interface: document.createElement(&quot;link&quot;) must inherit property &quot;rev&quot; with the proper type (9) 
</span><span class="cx"> PASS HTMLLinkElement interface: document.createElement(&quot;link&quot;) must inherit property &quot;target&quot; with the proper type (10) 
</span></span></pre></div>
<a id="trunkSourceWebCoreCMakeListstxt"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/CMakeLists.txt (190029 => 190030)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/CMakeLists.txt        2015-09-20 16:41:46 UTC (rev 190029)
+++ trunk/Source/WebCore/CMakeLists.txt        2015-09-20 16:43:55 UTC (rev 190030)
</span><span class="lines">@@ -1155,7 +1155,6 @@
</span><span class="cx">     bindings/js/JSHTMLFrameElementCustom.cpp
</span><span class="cx">     bindings/js/JSHTMLFrameSetElementCustom.cpp
</span><span class="cx">     bindings/js/JSHTMLInputElementCustom.cpp
</span><del>-    bindings/js/JSHTMLLinkElementCustom.cpp
</del><span class="cx">     bindings/js/JSHTMLMediaElementCustom.cpp
</span><span class="cx">     bindings/js/JSHTMLObjectElementCustom.cpp
</span><span class="cx">     bindings/js/JSHTMLOptionsCollectionCustom.cpp
</span></span></pre></div>
<a id="trunkSourceWebCoreChangeLog"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/ChangeLog (190029 => 190030)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/ChangeLog        2015-09-20 16:41:46 UTC (rev 190029)
+++ trunk/Source/WebCore/ChangeLog        2015-09-20 16:43:55 UTC (rev 190030)
</span><span class="lines">@@ -1,3 +1,74 @@
</span><ins>+2015-09-19  Chris Dumez  &lt;cdumez@apple.com&gt;
+
+        Get rid of custom bindings for HTMLLinkElement.sizes setter
+        https://bugs.webkit.org/show_bug.cgi?id=149382
+
+        Reviewed by Sam Weinig.
+
+        Get rid of custom bindings for HTMLLinkElement.sizes setter by leveraging
+        the new [PutForwards=xxx] Web IDL extended attribute, as per the HTML
+        specification:
+        - https://html.spec.whatwg.org/#htmllinkelement
+
+        Also add FIXME comments in our IDL for various attributes that should be
+        using [PutForwards=xxx] according to the HTML specification but are not
+        currently. Those were not updated in this patch because it will subtly
+        change their web-exposed behavior.
+
+        No new tests, no intended web-exposed behavior change. However, one side
+        effect of the change is that the attribtue has moved to the prototype.
+        Our bindings generator was keeping this attribute on the instance because
+        it has a custom setter.
+        Bindings tests coverage was extended.
+
+        * CMakeLists.txt:
+        * WebCore.vcxproj/WebCore.vcxproj:
+        * WebCore.vcxproj/WebCore.vcxproj.filters:
+        * WebCore.xcodeproj/project.pbxproj:
+        * bindings/js/JSBindingsAllInOne.cpp:
+        * bindings/js/JSHTMLLinkElementCustom.cpp: Removed.
+        Drop custom bindings for HTMLLinkElement.sizes setter.
+
+        * bindings/scripts/CodeGeneratorJS.pm:
+        (GenerateImplementation):
+        - Stop passing an extra isNull argument to getters of nullable attributes
+          that have a wrapper type. These can return a null pointer so there is
+          no need for an extra argument.
+        - When [PutForwards=xxx] is used, only do the null-check on the attribute
+          getter if the attribute is marked as nullable. If the attribute is not
+          marked as nullable, the implementation is expected to return a C++
+          reference, otherwise a raw pointer. This was needed because
+          HTMLLinkElement::sizes() returns a reference as it can never return
+          null.
+
+        * bindings/scripts/test/GObject/WebKitDOMTestObj.cpp:
+        * bindings/scripts/test/GObject/WebKitDOMTestObj.h:
+        * bindings/scripts/test/JS/JSTestObj.cpp:
+        * bindings/scripts/test/ObjC/DOMTestObj.h:
+        * bindings/scripts/test/ObjC/DOMTestObj.mm:
+        * bindings/scripts/test/TestObj.idl:
+        Add bindings tests coverage for using [PutForwards=xxx] on a
+        nullable attribute.
+
+        * dom/Document.idl:
+        Mark Document.location as nullable as per the specification. The
+        implementation returns a raw pointer and can return null. The
+        bindings generator expects a raw pointer and will do a null check
+        on it.
+
+        * html/HTMLAnchorElement.idl:
+        * html/HTMLAreaElement.idl:
+        * html/HTMLElement.idl:
+        * html/HTMLIFrameElement.idl:
+        * html/HTMLOutputElement.idl:
+        * html/HTMLTableCellElement.idl:
+        Add FIXME comments for attributes that are supposed to use
+        [PutForwards=xxx] as per the HTML specification but currently don't.
+
+        * html/HTMLLinkElement.idl:
+        Use [PutForwards=value] for the 'sizes' attribute, as per the
+        specification and stop using a custom setter.
+
</ins><span class="cx"> 2015-09-20  Chris Dumez  &lt;cdumez@apple.com&gt;
</span><span class="cx"> 
</span><span class="cx">         [CallWith=ScriptState] should pass ExecState to the implementation by reference
</span></span></pre></div>
<a id="trunkSourceWebCoreModulesmediastreamHTMLMediaElementMediaStreamcpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/Modules/mediastream/HTMLMediaElementMediaStream.cpp (190029 => 190030)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/Modules/mediastream/HTMLMediaElementMediaStream.cpp        2015-09-20 16:41:46 UTC (rev 190029)
+++ trunk/Source/WebCore/Modules/mediastream/HTMLMediaElementMediaStream.cpp        2015-09-20 16:43:55 UTC (rev 190030)
</span><span class="lines">@@ -33,7 +33,7 @@
</span><span class="cx"> 
</span><span class="cx"> namespace WebCore {
</span><span class="cx"> 
</span><del>-MediaStream* HTMLMediaElementMediaStream::srcObject(HTMLMediaElement* mediaElement, bool&amp; /* isNull */)
</del><ins>+MediaStream* HTMLMediaElementMediaStream::srcObject(HTMLMediaElement* mediaElement)
</ins><span class="cx"> {
</span><span class="cx">     ASSERT(mediaElement);
</span><span class="cx">     return mediaElement-&gt;srcObject();
</span></span></pre></div>
<a id="trunkSourceWebCoreModulesmediastreamHTMLMediaElementMediaStreamh"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/Modules/mediastream/HTMLMediaElementMediaStream.h (190029 => 190030)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/Modules/mediastream/HTMLMediaElementMediaStream.h        2015-09-20 16:41:46 UTC (rev 190029)
+++ trunk/Source/WebCore/Modules/mediastream/HTMLMediaElementMediaStream.h        2015-09-20 16:43:55 UTC (rev 190030)
</span><span class="lines">@@ -37,7 +37,7 @@
</span><span class="cx"> 
</span><span class="cx"> class HTMLMediaElementMediaStream {
</span><span class="cx"> public:
</span><del>-    static MediaStream* srcObject(HTMLMediaElement*, bool&amp; isNull);
</del><ins>+    static MediaStream* srcObject(HTMLMediaElement*);
</ins><span class="cx">     static void setSrcObject(HTMLMediaElement*, MediaStream*);
</span><span class="cx"> };
</span><span class="cx"> 
</span></span></pre></div>
<a id="trunkSourceWebCoreModulesmediastreamMediaTrackConstraintscpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/Modules/mediastream/MediaTrackConstraints.cpp (190029 => 190030)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/Modules/mediastream/MediaTrackConstraints.cpp        2015-09-20 16:41:46 UTC (rev 190029)
+++ trunk/Source/WebCore/Modules/mediastream/MediaTrackConstraints.cpp        2015-09-20 16:43:55 UTC (rev 190030)
</span><span class="lines">@@ -55,7 +55,7 @@
</span><span class="cx">     return Vector&lt;PassRefPtr&lt;MediaTrackConstraint&gt;&gt;();
</span><span class="cx"> }
</span><span class="cx"> 
</span><del>-RefPtr&lt;MediaTrackConstraintSet&gt; MediaTrackConstraints::mandatory(bool) const
</del><ins>+MediaTrackConstraintSet* MediaTrackConstraints::mandatory() const
</ins><span class="cx"> {
</span><span class="cx">     // https://bugs.webkit.org/show_bug.cgi?id=121954
</span><span class="cx">     notImplemented();
</span></span></pre></div>
<a id="trunkSourceWebCoreModulesmediastreamMediaTrackConstraintsh"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/Modules/mediastream/MediaTrackConstraints.h (190029 => 190030)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/Modules/mediastream/MediaTrackConstraints.h        2015-09-20 16:41:46 UTC (rev 190029)
+++ trunk/Source/WebCore/Modules/mediastream/MediaTrackConstraints.h        2015-09-20 16:43:55 UTC (rev 190030)
</span><span class="lines">@@ -45,7 +45,7 @@
</span><span class="cx">     static Ref&lt;MediaTrackConstraints&gt; create(PassRefPtr&lt;MediaConstraintsImpl&gt;);
</span><span class="cx"> 
</span><span class="cx">     Vector&lt;PassRefPtr&lt;MediaTrackConstraint&gt;&gt; optional(bool) const;
</span><del>-    RefPtr&lt;MediaTrackConstraintSet&gt; mandatory(bool) const;
</del><ins>+    MediaTrackConstraintSet* mandatory() const;
</ins><span class="cx"> 
</span><span class="cx"> private:
</span><span class="cx">     explicit MediaTrackConstraints(PassRefPtr&lt;MediaConstraintsImpl&gt;);
</span></span></pre></div>
<a id="trunkSourceWebCoreWebCorevcxprojWebCorevcxproj"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/WebCore.vcxproj/WebCore.vcxproj (190029 => 190030)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/WebCore.vcxproj/WebCore.vcxproj        2015-09-20 16:41:46 UTC (rev 190029)
+++ trunk/Source/WebCore/WebCore.vcxproj/WebCore.vcxproj        2015-09-20 16:43:55 UTC (rev 190030)
</span><span class="lines">@@ -18217,20 +18217,6 @@
</span><span class="cx">       &lt;ExcludedFromBuild Condition=&quot;'$(Configuration)|$(Platform)'=='Production|Win32'&quot;&gt;true&lt;/ExcludedFromBuild&gt;
</span><span class="cx">       &lt;ExcludedFromBuild Condition=&quot;'$(Configuration)|$(Platform)'=='Production|x64'&quot;&gt;true&lt;/ExcludedFromBuild&gt;
</span><span class="cx">     &lt;/ClCompile&gt;
</span><del>-    &lt;ClCompile Include=&quot;..\bindings\js\JSHTMLLinkElementCustom.cpp&quot;&gt;
-      &lt;ExcludedFromBuild Condition=&quot;'$(Configuration)|$(Platform)'=='Debug|Win32'&quot;&gt;true&lt;/ExcludedFromBuild&gt;
-      &lt;ExcludedFromBuild Condition=&quot;'$(Configuration)|$(Platform)'=='Debug|x64'&quot;&gt;true&lt;/ExcludedFromBuild&gt;
-      &lt;ExcludedFromBuild Condition=&quot;'$(Configuration)|$(Platform)'=='Debug_WinCairo|Win32'&quot;&gt;true&lt;/ExcludedFromBuild&gt;
-      &lt;ExcludedFromBuild Condition=&quot;'$(Configuration)|$(Platform)'=='Debug_WinCairo|x64'&quot;&gt;true&lt;/ExcludedFromBuild&gt;
-      &lt;ExcludedFromBuild Condition=&quot;'$(Configuration)|$(Platform)'=='DebugSuffix|Win32'&quot;&gt;true&lt;/ExcludedFromBuild&gt;
-      &lt;ExcludedFromBuild Condition=&quot;'$(Configuration)|$(Platform)'=='DebugSuffix|x64'&quot;&gt;true&lt;/ExcludedFromBuild&gt;
-      &lt;ExcludedFromBuild Condition=&quot;'$(Configuration)|$(Platform)'=='Release|Win32'&quot;&gt;true&lt;/ExcludedFromBuild&gt;
-      &lt;ExcludedFromBuild Condition=&quot;'$(Configuration)|$(Platform)'=='Release|x64'&quot;&gt;true&lt;/ExcludedFromBuild&gt;
-      &lt;ExcludedFromBuild Condition=&quot;'$(Configuration)|$(Platform)'=='Release_WinCairo|Win32'&quot;&gt;true&lt;/ExcludedFromBuild&gt;
-      &lt;ExcludedFromBuild Condition=&quot;'$(Configuration)|$(Platform)'=='Release_WinCairo|x64'&quot;&gt;true&lt;/ExcludedFromBuild&gt;
-      &lt;ExcludedFromBuild Condition=&quot;'$(Configuration)|$(Platform)'=='Production|Win32'&quot;&gt;true&lt;/ExcludedFromBuild&gt;
-      &lt;ExcludedFromBuild Condition=&quot;'$(Configuration)|$(Platform)'=='Production|x64'&quot;&gt;true&lt;/ExcludedFromBuild&gt;
-    &lt;/ClCompile&gt;
</del><span class="cx">     &lt;ClCompile Include=&quot;..\bindings\js\JSHTMLObjectElementCustom.cpp&quot;&gt;
</span><span class="cx">       &lt;ExcludedFromBuild Condition=&quot;'$(Configuration)|$(Platform)'=='Debug|Win32'&quot;&gt;true&lt;/ExcludedFromBuild&gt;
</span><span class="cx">       &lt;ExcludedFromBuild Condition=&quot;'$(Configuration)|$(Platform)'=='Debug|x64'&quot;&gt;true&lt;/ExcludedFromBuild&gt;
</span></span></pre></div>
<a id="trunkSourceWebCoreWebCorevcxprojWebCorevcxprojfilters"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/WebCore.vcxproj/WebCore.vcxproj.filters (190029 => 190030)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/WebCore.vcxproj/WebCore.vcxproj.filters        2015-09-20 16:41:46 UTC (rev 190029)
+++ trunk/Source/WebCore/WebCore.vcxproj/WebCore.vcxproj.filters        2015-09-20 16:43:55 UTC (rev 190030)
</span><span class="lines">@@ -4344,9 +4344,6 @@
</span><span class="cx">     &lt;ClCompile Include=&quot;..\bindings\js\JSHTMLInputElementCustom.cpp&quot;&gt;
</span><span class="cx">       &lt;Filter&gt;bindings\js&lt;/Filter&gt;
</span><span class="cx">     &lt;/ClCompile&gt;
</span><del>-    &lt;ClCompile Include=&quot;..\bindings\js\JSHTMLLinkElementCustom.cpp&quot;&gt;
-      &lt;Filter&gt;bindings\js&lt;/Filter&gt;
-    &lt;/ClCompile&gt;
</del><span class="cx">     &lt;ClCompile Include=&quot;..\bindings\js\JSHTMLObjectElementCustom.cpp&quot;&gt;
</span><span class="cx">       &lt;Filter&gt;bindings\js&lt;/Filter&gt;
</span><span class="cx">     &lt;/ClCompile&gt;
</span></span></pre></div>
<a id="trunkSourceWebCoreWebCorexcodeprojprojectpbxproj"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/WebCore.xcodeproj/project.pbxproj (190029 => 190030)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/WebCore.xcodeproj/project.pbxproj        2015-09-20 16:41:46 UTC (rev 190029)
+++ trunk/Source/WebCore/WebCore.xcodeproj/project.pbxproj        2015-09-20 16:43:55 UTC (rev 190030)
</span><span class="lines">@@ -6230,7 +6230,6 @@
</span><span class="cx">                 E1A8E56717552B2A007488E7 /* CFURLExtras.h in Headers */ = {isa = PBXBuildFile; fileRef = E1A8E56517552B2A007488E7 /* CFURLExtras.h */; settings = {ATTRIBUTES = (Private, ); }; };
</span><span class="cx">                 E1ACAF4C0E791AAF0087D12B /* DOMMessagePort.mm in Sources */ = {isa = PBXBuildFile; fileRef = E1ACAF4A0E791AAF0087D12B /* DOMMessagePort.mm */; };
</span><span class="cx">                 E1ACAF4D0E791AAF0087D12B /* DOMMessagePort.h in Headers */ = {isa = PBXBuildFile; fileRef = E1ACAF4B0E791AAF0087D12B /* DOMMessagePort.h */; };
</span><del>-                E1AD139B1295D92600ACA989 /* JSHTMLLinkElementCustom.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E1AD139A1295D92600ACA989 /* JSHTMLLinkElementCustom.cpp */; };
</del><span class="cx">                 E1AD14231295EA7F00ACA989 /* JSHTMLInputElementCustom.h in Headers */ = {isa = PBXBuildFile; fileRef = E1AD14221295EA7F00ACA989 /* JSHTMLInputElementCustom.h */; };
</span><span class="cx">                 E1ADECBF0E76ACF1004A1A5E /* MessagePort.h in Headers */ = {isa = PBXBuildFile; fileRef = E1ADECBD0E76ACF1004A1A5E /* MessagePort.h */; settings = {ATTRIBUTES = (Private, ); }; };
</span><span class="cx">                 E1ADECC00E76ACF1004A1A5E /* MessagePort.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E1ADECBE0E76ACF1004A1A5E /* MessagePort.cpp */; };
</span><span class="lines">@@ -13974,7 +13973,6 @@
</span><span class="cx">                 E1AB1EBD14E9E3A800449E13 /* FileReaderSync.idl */ = {isa = PBXFileReference; lastKnownFileType = text; path = FileReaderSync.idl; sourceTree = &quot;&lt;group&gt;&quot;; };
</span><span class="cx">                 E1ACAF4A0E791AAF0087D12B /* DOMMessagePort.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = DOMMessagePort.mm; sourceTree = &quot;&lt;group&gt;&quot;; };
</span><span class="cx">                 E1ACAF4B0E791AAF0087D12B /* DOMMessagePort.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = DOMMessagePort.h; sourceTree = &quot;&lt;group&gt;&quot;; };
</span><del>-                E1AD139A1295D92600ACA989 /* JSHTMLLinkElementCustom.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = JSHTMLLinkElementCustom.cpp; sourceTree = &quot;&lt;group&gt;&quot;; };
</del><span class="cx">                 E1AD14221295EA7F00ACA989 /* JSHTMLInputElementCustom.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = JSHTMLInputElementCustom.h; sourceTree = &quot;&lt;group&gt;&quot;; };
</span><span class="cx">                 E1ADECBD0E76ACF1004A1A5E /* MessagePort.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.h; fileEncoding = 4; path = MessagePort.h; sourceTree = &quot;&lt;group&gt;&quot;; };
</span><span class="cx">                 E1ADECBE0E76ACF1004A1A5E /* MessagePort.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = MessagePort.cpp; sourceTree = &quot;&lt;group&gt;&quot;; };
</span><span class="lines">@@ -21651,7 +21649,6 @@
</span><span class="cx">                                 BCD41ABA0C060DE800C0E446 /* JSHTMLFrameSetElementCustom.cpp */,
</span><span class="cx">                                 BCC438770E886CC700533DD5 /* JSHTMLInputElementCustom.cpp */,
</span><span class="cx">                                 E1AD14221295EA7F00ACA989 /* JSHTMLInputElementCustom.h */,
</span><del>-                                E1AD139A1295D92600ACA989 /* JSHTMLLinkElementCustom.cpp */,
</del><span class="cx">                                 CDF65CCC145B6AFE00C4C7AA /* JSHTMLMediaElementCustom.cpp */,
</span><span class="cx">                                 BC305CA30C0781BB00CD20F0 /* JSHTMLObjectElementCustom.cpp */,
</span><span class="cx">                                 448AD27A0A4813790023D179 /* JSHTMLOptionsCollectionCustom.cpp */,
</span><span class="lines">@@ -29229,7 +29226,6 @@
</span><span class="cx">                                 1AE2AB230A1CE63B00B42B25 /* JSHTMLLegendElement.cpp in Sources */,
</span><span class="cx">                                 1AE2AB250A1CE63B00B42B25 /* JSHTMLLIElement.cpp in Sources */,
</span><span class="cx">                                 A80E7B100A19D606007FB8C5 /* JSHTMLLinkElement.cpp in Sources */,
</span><del>-                                E1AD139B1295D92600ACA989 /* JSHTMLLinkElementCustom.cpp in Sources */,
</del><span class="cx">                                 1AE2AB270A1CE63B00B42B25 /* JSHTMLMapElement.cpp in Sources */,
</span><span class="cx">                                 BC491B780C023EFD009D6316 /* JSHTMLMarqueeElement.cpp in Sources */,
</span><span class="cx">                                 E44614390CD689C700FADA75 /* JSHTMLMediaElement.cpp in Sources */,
</span></span></pre></div>
<a id="trunkSourceWebCorebindingsjsJSBindingsAllInOnecpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/bindings/js/JSBindingsAllInOne.cpp (190029 => 190030)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/bindings/js/JSBindingsAllInOne.cpp        2015-09-20 16:41:46 UTC (rev 190029)
+++ trunk/Source/WebCore/bindings/js/JSBindingsAllInOne.cpp        2015-09-20 16:43:55 UTC (rev 190030)
</span><span class="lines">@@ -94,7 +94,6 @@
</span><span class="cx"> #include &quot;JSHTMLFrameElementCustom.cpp&quot;
</span><span class="cx"> #include &quot;JSHTMLFrameSetElementCustom.cpp&quot;
</span><span class="cx"> #include &quot;JSHTMLInputElementCustom.cpp&quot;
</span><del>-#include &quot;JSHTMLLinkElementCustom.cpp&quot;
</del><span class="cx"> #include &quot;JSHTMLMediaElementCustom.cpp&quot;
</span><span class="cx"> #include &quot;JSHTMLObjectElementCustom.cpp&quot;
</span><span class="cx"> #include &quot;JSHTMLOptionsCollectionCustom.cpp&quot;
</span></span></pre></div>
<a id="trunkSourceWebCorebindingsjsJSHTMLLinkElementCustomcpp"></a>
<div class="delfile"><h4>Deleted: trunk/Source/WebCore/bindings/js/JSHTMLLinkElementCustom.cpp (190029 => 190030)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/bindings/js/JSHTMLLinkElementCustom.cpp        2015-09-20 16:41:46 UTC (rev 190029)
+++ trunk/Source/WebCore/bindings/js/JSHTMLLinkElementCustom.cpp        2015-09-20 16:43:55 UTC (rev 190030)
</span><span class="lines">@@ -1,44 +0,0 @@
</span><del>-/*
- * Copyright (C) 2010 Apple Inc. All rights reserved.
- * 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.
- *
- * THIS SOFTWARE IS PROVIDED BY APPLE INC. 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 INC. 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;JSHTMLLinkElement.h&quot;
-
-#include &quot;HTMLLinkElement.h&quot;
-#include &quot;JSDOMBinding.h&quot;
-#include &quot;JSDOMSettableTokenList.h&quot;
-#include &lt;wtf/GetPtr.h&gt;
-
-using namespace JSC;
-
-namespace WebCore {
-
-void JSHTMLLinkElement::setSizes(ExecState* exec, JSValue value)
-{
-    impl().setSizes(valueToStringWithNullCheck(exec, value));
-}
-
-} // namespace WebCore
</del></span></pre></div>
<a id="trunkSourceWebCorebindingsscriptsCodeGeneratorJSpm"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/bindings/scripts/CodeGeneratorJS.pm (190029 => 190030)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/bindings/scripts/CodeGeneratorJS.pm        2015-09-20 16:41:46 UTC (rev 190029)
+++ trunk/Source/WebCore/bindings/scripts/CodeGeneratorJS.pm        2015-09-20 16:43:55 UTC (rev 190030)
</span><span class="lines">@@ -2226,7 +2226,8 @@
</span><span class="cx">         foreach my $attribute (@{$interface-&gt;attributes}) {
</span><span class="cx">             my $name = $attribute-&gt;signature-&gt;name;
</span><span class="cx">             my $type = $attribute-&gt;signature-&gt;type;
</span><del>-            my $isNullable = $attribute-&gt;signature-&gt;isNullable;
</del><ins>+            # Nullable wrapper types do not need any special handling as the implementation can return a null pointer.
+            my $isNullable = $attribute-&gt;signature-&gt;isNullable &amp;&amp; !$codeGenerator-&gt;IsWrapperType($type);
</ins><span class="cx">             $codeGenerator-&gt;AssertNotSequenceType($type);
</span><span class="cx">             my $getFunctionName = GetAttributeGetterName($interfaceName, $className, $attribute);
</span><span class="cx">             my $implGetterFunctionName = $codeGenerator-&gt;WK_lcfirst($attribute-&gt;signature-&gt;extendedAttributes-&gt;{&quot;ImplementedAs&quot;} || $name);
</span><span class="lines">@@ -2651,10 +2652,16 @@
</span><span class="cx">                     my $putForwards = $attribute-&gt;signature-&gt;extendedAttributes-&gt;{&quot;PutForwards&quot;};
</span><span class="cx">                     if ($putForwards) {
</span><span class="cx">                         my $implGetterFunctionName = $codeGenerator-&gt;WK_lcfirst($attribute-&gt;signature-&gt;extendedAttributes-&gt;{&quot;ImplementedAs&quot;} || $name);
</span><del>-                        push(@implContent, &quot;    auto* forwardedImpl = castedThis-&gt;impl().${implGetterFunctionName}();\n&quot;);
-                        push(@implContent, &quot;    if (!forwardedImpl)\n&quot;);
-                        push(@implContent, &quot;        return;\n&quot;);
-                        push(@implContent, &quot;    auto&amp; impl = *forwardedImpl;\n&quot;);
</del><ins>+                        if ($attribute-&gt;signature-&gt;isNullable) {
+                            push(@implContent, &quot;    auto* forwardedImpl = castedThis-&gt;impl().${implGetterFunctionName}();\n&quot;);
+                            push(@implContent, &quot;    if (!forwardedImpl)\n&quot;);
+                            push(@implContent, &quot;        return;\n&quot;);
+                            push(@implContent, &quot;    auto&amp; impl = *forwardedImpl;\n&quot;);
+                        } else {
+                            # Attribute is not nullable, the implementation is expected to return a reference.
+                            my $attributeType = $attribute-&gt;signature-&gt;type;
+                            push(@implContent, &quot;    ${attributeType}&amp; impl = castedThis-&gt;impl().${implGetterFunctionName}();\n&quot;);
+                        }
</ins><span class="cx">                         $attribute = $codeGenerator-&gt;GetAttributeFromInterface($interface, $attribute-&gt;signature-&gt;type, $putForwards);
</span><span class="cx">                     } else {
</span><span class="cx">                         push(@implContent, &quot;    auto&amp; impl = castedThis-&gt;impl();\n&quot;);
</span></span></pre></div>
<a id="trunkSourceWebCorebindingsscriptstestGObjectWebKitDOMTestObjcpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/bindings/scripts/test/GObject/WebKitDOMTestObj.cpp (190029 => 190030)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/bindings/scripts/test/GObject/WebKitDOMTestObj.cpp        2015-09-20 16:41:46 UTC (rev 190029)
+++ trunk/Source/WebCore/bindings/scripts/test/GObject/WebKitDOMTestObj.cpp        2015-09-20 16:43:55 UTC (rev 190030)
</span><span class="lines">@@ -136,6 +136,7 @@
</span><span class="cx">     PROP_NULLABLE_STRING_VALUE,
</span><span class="cx">     PROP_ATTRIBUTE,
</span><span class="cx">     PROP_PUT_FORWARDS_ATTRIBUTE,
</span><ins>+    PROP_PUT_FORWARDS_NULLABLE_ATTRIBUTE,
</ins><span class="cx"> };
</span><span class="cx"> 
</span><span class="cx"> static void webkit_dom_test_obj_finalize(GObject* object)
</span><span class="lines">@@ -434,6 +435,9 @@
</span><span class="cx">     case PROP_PUT_FORWARDS_ATTRIBUTE:
</span><span class="cx">         g_value_set_object(value, webkit_dom_test_obj_get_put_forwards_attribute(self));
</span><span class="cx">         break;
</span><ins>+    case PROP_PUT_FORWARDS_NULLABLE_ATTRIBUTE:
+        g_value_set_object(value, webkit_dom_test_obj_get_put_forwards_nullable_attribute(self));
+        break;
</ins><span class="cx">     default:
</span><span class="cx">         G_OBJECT_WARN_INVALID_PROPERTY_ID(object, propertyId, pspec);
</span><span class="cx">         break;
</span><span class="lines">@@ -1040,6 +1044,16 @@
</span><span class="cx">             WEBKIT_DOM_TYPE_TEST_NODE,
</span><span class="cx">             WEBKIT_PARAM_READABLE));
</span><span class="cx"> 
</span><ins>+    g_object_class_install_property(
+        gobjectClass,
+        PROP_PUT_FORWARDS_NULLABLE_ATTRIBUTE,
+        g_param_spec_object(
+            &quot;put-forwards-nullable-attribute&quot;,
+            &quot;TestObj:put-forwards-nullable-attribute&quot;,
+            &quot;read-only WebKitDOMTestNode* TestObj:put-forwards-nullable-attribute&quot;,
+            WEBKIT_DOM_TYPE_TEST_NODE,
+            WEBKIT_PARAM_READABLE));
+
</ins><span class="cx"> }
</span><span class="cx"> 
</span><span class="cx"> static void webkit_dom_test_obj_init(WebKitDOMTestObj* request)
</span><span class="lines">@@ -2578,3 +2592,13 @@
</span><span class="cx">     return WebKit::kit(gobjectResult.get());
</span><span class="cx"> }
</span><span class="cx"> 
</span><ins>+WebKitDOMTestNode* webkit_dom_test_obj_get_put_forwards_nullable_attribute(WebKitDOMTestObj* self)
+{
+    WebCore::JSMainThreadNullState state;
+    g_return_val_if_fail(WEBKIT_DOM_IS_TEST_OBJ(self), 0);
+    WebCore::TestObj* item = WebKit::core(self);
+    bool isNull = false;
+    RefPtr&lt;WebCore::TestNode&gt; gobjectResult = WTF::getPtr(item-&gt;putForwardsNullableAttribute(isNull));
+    return WebKit::kit(gobjectResult.get());
+}
+
</ins></span></pre></div>
<a id="trunkSourceWebCorebindingsscriptstestGObjectWebKitDOMTestObjh"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/bindings/scripts/test/GObject/WebKitDOMTestObj.h (190029 => 190030)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/bindings/scripts/test/GObject/WebKitDOMTestObj.h        2015-09-20 16:41:46 UTC (rev 190029)
+++ trunk/Source/WebCore/bindings/scripts/test/GObject/WebKitDOMTestObj.h        2015-09-20 16:43:55 UTC (rev 190030)
</span><span class="lines">@@ -1714,6 +1714,17 @@
</span><span class="cx"> WEBKIT_API WebKitDOMTestNode*
</span><span class="cx"> webkit_dom_test_obj_get_put_forwards_attribute(WebKitDOMTestObj* self);
</span><span class="cx"> 
</span><ins>+/**
+ * webkit_dom_test_obj_get_put_forwards_nullable_attribute:
+ * @self: A #WebKitDOMTestObj
+ *
+ * Returns: (transfer none): A #WebKitDOMTestNode
+ *
+ * Stability: Unstable
+**/
+WEBKIT_API WebKitDOMTestNode*
+webkit_dom_test_obj_get_put_forwards_nullable_attribute(WebKitDOMTestObj* self);
+
</ins><span class="cx"> G_END_DECLS
</span><span class="cx"> 
</span><span class="cx"> #endif /* WEBKIT_DOM_USE_UNSTABLE_API */
</span></span></pre></div>
<a id="trunkSourceWebCorebindingsscriptstestJSJSTestObjcpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/bindings/scripts/test/JS/JSTestObj.cpp (190029 => 190030)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/bindings/scripts/test/JS/JSTestObj.cpp        2015-09-20 16:41:46 UTC (rev 190029)
+++ trunk/Source/WebCore/bindings/scripts/test/JS/JSTestObj.cpp        2015-09-20 16:43:55 UTC (rev 190030)
</span><span class="lines">@@ -312,6 +312,8 @@
</span><span class="cx"> void setJSTestObjAttributeWithReservedEnumType(JSC::ExecState*, JSC::JSObject*, JSC::EncodedJSValue, JSC::EncodedJSValue);
</span><span class="cx"> JSC::EncodedJSValue jsTestObjPutForwardsAttribute(JSC::ExecState*, JSC::JSObject*, JSC::EncodedJSValue, JSC::PropertyName);
</span><span class="cx"> void setJSTestObjPutForwardsAttribute(JSC::ExecState*, JSC::JSObject*, JSC::EncodedJSValue, JSC::EncodedJSValue);
</span><ins>+JSC::EncodedJSValue jsTestObjPutForwardsNullableAttribute(JSC::ExecState*, JSC::JSObject*, JSC::EncodedJSValue, JSC::PropertyName);
+void setJSTestObjPutForwardsNullableAttribute(JSC::ExecState*, JSC::JSObject*, JSC::EncodedJSValue, JSC::EncodedJSValue);
</ins><span class="cx"> JSC::EncodedJSValue jsTestObjConstructor(JSC::ExecState*, JSC::JSObject*, JSC::EncodedJSValue, JSC::PropertyName);
</span><span class="cx"> 
</span><span class="cx"> class JSTestObjPrototype : public JSC::JSNonFinalObject {
</span><span class="lines">@@ -580,6 +582,7 @@
</span><span class="cx">     { &quot;attribute&quot;, DontDelete | ReadOnly | CustomAccessor, NoIntrinsic, { (intptr_t)static_cast&lt;PropertySlot::GetValueFunc&gt;(jsTestObjAttribute), (intptr_t) static_cast&lt;PutPropertySlot::PutValueFunc&gt;(0) } },
</span><span class="cx">     { &quot;attributeWithReservedEnumType&quot;, DontDelete | CustomAccessor, NoIntrinsic, { (intptr_t)static_cast&lt;PropertySlot::GetValueFunc&gt;(jsTestObjAttributeWithReservedEnumType), (intptr_t) static_cast&lt;PutPropertySlot::PutValueFunc&gt;(setJSTestObjAttributeWithReservedEnumType) } },
</span><span class="cx">     { &quot;putForwardsAttribute&quot;, DontDelete | CustomAccessor, NoIntrinsic, { (intptr_t)static_cast&lt;PropertySlot::GetValueFunc&gt;(jsTestObjPutForwardsAttribute), (intptr_t) static_cast&lt;PutPropertySlot::PutValueFunc&gt;(setJSTestObjPutForwardsAttribute) } },
</span><ins>+    { &quot;putForwardsNullableAttribute&quot;, DontDelete | CustomAccessor, NoIntrinsic, { (intptr_t)static_cast&lt;PropertySlot::GetValueFunc&gt;(jsTestObjPutForwardsNullableAttribute), (intptr_t) static_cast&lt;PutPropertySlot::PutValueFunc&gt;(setJSTestObjPutForwardsNullableAttribute) } },
</ins><span class="cx"> #if ENABLE(Condition1)
</span><span class="cx">     { &quot;CONDITIONAL_CONST&quot;, DontDelete | ReadOnly | ConstantInteger, NoIntrinsic, { (long long)(0) } },
</span><span class="cx"> #else
</span><span class="lines">@@ -1963,6 +1966,23 @@
</span><span class="cx"> }
</span><span class="cx"> 
</span><span class="cx"> 
</span><ins>+EncodedJSValue jsTestObjPutForwardsNullableAttribute(ExecState* state, JSObject* slotBase, EncodedJSValue thisValue, PropertyName)
+{
+    UNUSED_PARAM(state);
+    UNUSED_PARAM(slotBase);
+    UNUSED_PARAM(thisValue);
+    JSTestObj* castedThis = jsDynamicCast&lt;JSTestObj*&gt;(JSValue::decode(thisValue));
+    if (UNLIKELY(!castedThis)) {
+        if (jsDynamicCast&lt;JSTestObjPrototype*&gt;(slotBase))
+            return reportDeprecatedGetterError(*state, &quot;TestObj&quot;, &quot;putForwardsNullableAttribute&quot;);
+        return throwGetterTypeError(*state, &quot;TestObj&quot;, &quot;putForwardsNullableAttribute&quot;);
+    }
+    auto&amp; impl = castedThis-&gt;impl();
+    JSValue result = toJS(state, castedThis-&gt;globalObject(), WTF::getPtr(impl.putForwardsNullableAttribute()));
+    return JSValue::encode(result);
+}
+
+
</ins><span class="cx"> EncodedJSValue jsTestObjConstructor(ExecState* state, JSObject* baseValue, EncodedJSValue, PropertyName)
</span><span class="cx"> {
</span><span class="cx">     JSTestObjPrototype* domObject = jsDynamicCast&lt;JSTestObjPrototype*&gt;(baseValue);
</span><span class="lines">@@ -3090,7 +3110,27 @@
</span><span class="cx">             throwSetterTypeError(*state, &quot;TestObj&quot;, &quot;putForwardsAttribute&quot;);
</span><span class="cx">         return;
</span><span class="cx">     }
</span><del>-    auto* forwardedImpl = castedThis-&gt;impl().putForwardsAttribute();
</del><ins>+    TestNode&amp; impl = castedThis-&gt;impl().putForwardsAttribute();
+    String nativeValue = value.toString(state)-&gt;value(state);
+    if (UNLIKELY(state-&gt;hadException()))
+        return;
+    impl.setName(nativeValue);
+}
+
+
+void setJSTestObjPutForwardsNullableAttribute(ExecState* state, JSObject* baseObject, EncodedJSValue thisValue, EncodedJSValue encodedValue)
+{
+    JSValue value = JSValue::decode(encodedValue);
+    UNUSED_PARAM(baseObject);
+    JSTestObj* castedThis = jsDynamicCast&lt;JSTestObj*&gt;(JSValue::decode(thisValue));
+    if (UNLIKELY(!castedThis)) {
+        if (jsDynamicCast&lt;JSTestObjPrototype*&gt;(JSValue::decode(thisValue)))
+            reportDeprecatedSetterError(*state, &quot;TestObj&quot;, &quot;putForwardsNullableAttribute&quot;);
+        else
+            throwSetterTypeError(*state, &quot;TestObj&quot;, &quot;putForwardsNullableAttribute&quot;);
+        return;
+    }
+    auto* forwardedImpl = castedThis-&gt;impl().putForwardsNullableAttribute();
</ins><span class="cx">     if (!forwardedImpl)
</span><span class="cx">         return;
</span><span class="cx">     auto&amp; impl = *forwardedImpl;
</span></span></pre></div>
<a id="trunkSourceWebCorebindingsscriptstestObjCDOMTestObjh"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/bindings/scripts/test/ObjC/DOMTestObj.h (190029 => 190030)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/bindings/scripts/test/ObjC/DOMTestObj.h        2015-09-20 16:41:46 UTC (rev 190029)
+++ trunk/Source/WebCore/bindings/scripts/test/ObjC/DOMTestObj.h        2015-09-20 16:43:55 UTC (rev 190030)
</span><span class="lines">@@ -123,6 +123,7 @@
</span><span class="cx"> @property int nullableStringValue;
</span><span class="cx"> @property (readonly, copy) NSString *attribute;
</span><span class="cx"> @property (readonly, strong) DOMTestNode *putForwardsAttribute;
</span><ins>+@property (readonly, strong) DOMTestNode *putForwardsNullableAttribute;
</ins><span class="cx"> 
</span><span class="cx"> - (void)voidMethod;
</span><span class="cx"> - (void)voidMethodWithArgs:(int)longArg strArg:(NSString *)strArg objArg:(DOMTestObj *)objArg;
</span></span></pre></div>
<a id="trunkSourceWebCorebindingsscriptstestObjCDOMTestObjmm"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/bindings/scripts/test/ObjC/DOMTestObj.mm (190029 => 190030)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/bindings/scripts/test/ObjC/DOMTestObj.mm        2015-09-20 16:41:46 UTC (rev 190029)
+++ trunk/Source/WebCore/bindings/scripts/test/ObjC/DOMTestObj.mm        2015-09-20 16:43:55 UTC (rev 190030)
</span><span class="lines">@@ -836,6 +836,12 @@
</span><span class="cx">     return kit(WTF::getPtr(IMPL-&gt;putForwardsAttribute()));
</span><span class="cx"> }
</span><span class="cx"> 
</span><ins>+- (DOMTestNode *)putForwardsNullableAttribute
+{
+    WebCore::JSMainThreadNullState state;
+    return kit(WTF::getPtr(IMPL-&gt;putForwardsNullableAttribute(isNull)));
+}
+
</ins><span class="cx"> - (void)voidMethod
</span><span class="cx"> {
</span><span class="cx">     WebCore::JSMainThreadNullState state;
</span></span></pre></div>
<a id="trunkSourceWebCorebindingsscriptstestTestObjidl"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/bindings/scripts/test/TestObj.idl (190029 => 190030)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/bindings/scripts/test/TestObj.idl        2015-09-20 16:41:46 UTC (rev 190029)
+++ trunk/Source/WebCore/bindings/scripts/test/TestObj.idl        2015-09-20 16:43:55 UTC (rev 190030)
</span><span class="lines">@@ -302,6 +302,7 @@
</span><span class="cx"> 
</span><span class="cx">     // PutForwards
</span><span class="cx">     [PutForwards=name] readonly attribute TestNode putForwardsAttribute;
</span><ins>+    [PutForwards=name] readonly attribute TestNode? putForwardsNullableAttribute;
</ins><span class="cx"> };
</span><span class="cx"> 
</span><span class="cx"> // The following comment should not generate any code.
</span></span></pre></div>
<a id="trunkSourceWebCoredomDocumentidl"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/dom/Document.idl (190029 => 190030)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/dom/Document.idl        2015-09-20 16:41:46 UTC (rev 190029)
+++ trunk/Source/WebCore/dom/Document.idl        2015-09-20 16:43:55 UTC (rev 190030)
</span><span class="lines">@@ -170,7 +170,7 @@
</span><span class="cx">     NodeList getElementsByName([Default=Undefined,AtomicString] optional DOMString elementName);
</span><span class="cx"> 
</span><span class="cx"> #if defined(LANGUAGE_JAVASCRIPT) &amp;&amp; LANGUAGE_JAVASCRIPT
</span><del>-    [PutForwards=href, Unforgeable] readonly attribute Location location;
</del><ins>+    [PutForwards=href, Unforgeable] readonly attribute Location? location;
</ins><span class="cx"> #endif
</span><span class="cx"> 
</span><span class="cx">     // IE extensions
</span></span></pre></div>
<a id="trunkSourceWebCorehtmlHTMLAnchorElementidl"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/html/HTMLAnchorElement.idl (190029 => 190030)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/html/HTMLAnchorElement.idl        2015-09-20 16:41:46 UTC (rev 190029)
+++ trunk/Source/WebCore/html/HTMLAnchorElement.idl        2015-09-20 16:43:55 UTC (rev 190030)
</span><span class="lines">@@ -25,7 +25,11 @@
</span><span class="cx">     [Reflect, URL] attribute DOMString href;
</span><span class="cx">     [Reflect] attribute DOMString hreflang;
</span><span class="cx">     [Reflect] attribute DOMString name;
</span><ins>+
+    // FIXME: This is supposed to be:
+    // [PutForwards=value] readonly attribute DOMSettableTokenList ping;
</ins><span class="cx">     [Reflect] attribute DOMString ping;
</span><ins>+
</ins><span class="cx">     [Reflect] attribute DOMString rel;
</span><span class="cx">     [Reflect] attribute DOMString rev;
</span><span class="cx">     [Reflect] attribute DOMString shape;
</span></span></pre></div>
<a id="trunkSourceWebCorehtmlHTMLAreaElementidl"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/html/HTMLAreaElement.idl (190029 => 190030)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/html/HTMLAreaElement.idl        2015-09-20 16:41:46 UTC (rev 190029)
+++ trunk/Source/WebCore/html/HTMLAreaElement.idl        2015-09-20 16:43:55 UTC (rev 190030)
</span><span class="lines">@@ -23,7 +23,11 @@
</span><span class="cx">     [Reflect] attribute DOMString coords;
</span><span class="cx">     [Reflect, URL] attribute DOMString href;
</span><span class="cx">     [Reflect] attribute boolean noHref;
</span><ins>+
+    // FIXME: This is supposed to be:
+    // [PutForwards=value] readonly attribute DOMSettableTokenList ping;
</ins><span class="cx">     [Reflect] attribute DOMString ping;
</span><ins>+
</ins><span class="cx">     [Reflect] attribute DOMString rel;
</span><span class="cx">     [Reflect] attribute DOMString shape;
</span><span class="cx">     [Reflect] attribute DOMString target;
</span></span></pre></div>
<a id="trunkSourceWebCorehtmlHTMLElementidl"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/html/HTMLElement.idl (190029 => 190030)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/html/HTMLElement.idl        2015-09-20 16:41:46 UTC (rev 190029)
+++ trunk/Source/WebCore/html/HTMLElement.idl        2015-09-20 16:43:55 UTC (rev 190030)
</span><span class="lines">@@ -33,7 +33,11 @@
</span><span class="cx"> 
</span><span class="cx">              attribute long              tabIndex;
</span><span class="cx">              attribute boolean           draggable;
</span><ins>+
</ins><span class="cx">              [Reflect] attribute DOMString webkitdropzone;
</span><ins>+             // FIXME: Support the standard HTML equivalent.
+             // [PutForwards=value] readonly attribute DOMSettableTokenList dropzone;
+
</ins><span class="cx">              [Reflect] attribute boolean hidden;
</span><span class="cx">              [Reflect] attribute DOMString accessKey;
</span><span class="cx"> 
</span></span></pre></div>
<a id="trunkSourceWebCorehtmlHTMLIFrameElementidl"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/html/HTMLIFrameElement.idl (190029 => 190030)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/html/HTMLIFrameElement.idl        2015-09-20 16:41:46 UTC (rev 190029)
+++ trunk/Source/WebCore/html/HTMLIFrameElement.idl        2015-09-20 16:43:55 UTC (rev 190030)
</span><span class="lines">@@ -26,7 +26,11 @@
</span><span class="cx">     [Reflect] attribute DOMString marginHeight;
</span><span class="cx">     [Reflect] attribute DOMString marginWidth;
</span><span class="cx">     [Reflect] attribute DOMString name;
</span><ins>+
+    // FIXME: This is supposed to be:
+    // [PutForwards=value] readonly attribute DOMSettableTokenList sandbox;
</ins><span class="cx">     [Reflect] attribute DOMString sandbox;
</span><ins>+
</ins><span class="cx">     [Reflect] attribute DOMString scrolling;
</span><span class="cx">     [Reflect, URL] attribute DOMString src;
</span><span class="cx">     [Reflect] attribute DOMString srcdoc;
</span></span></pre></div>
<a id="trunkSourceWebCorehtmlHTMLLinkElementcpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/html/HTMLLinkElement.cpp (190029 => 190030)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/html/HTMLLinkElement.cpp        2015-09-20 16:41:46 UTC (rev 190029)
+++ trunk/Source/WebCore/html/HTMLLinkElement.cpp        2015-09-20 16:43:55 UTC (rev 190030)
</span><span class="lines">@@ -159,7 +159,7 @@
</span><span class="cx">         return;
</span><span class="cx">     }
</span><span class="cx">     if (name == sizesAttr) {
</span><del>-        setSizes(value);
</del><ins>+        m_sizes-&gt;setValue(value);
</ins><span class="cx">         process();
</span><span class="cx">         return;
</span><span class="cx">     }
</span><span class="lines">@@ -530,9 +530,4 @@
</span><span class="cx">         : DocumentStyleSheetCollection::RemovePendingSheetNotifyLater);
</span><span class="cx"> }
</span><span class="cx"> 
</span><del>-void HTMLLinkElement::setSizes(const String&amp; value)
-{
-    m_sizes-&gt;setValue(value);
-}
-
</del><span class="cx"> } // namespace WebCore
</span></span></pre></div>
<a id="trunkSourceWebCorehtmlHTMLLinkElementh"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/html/HTMLLinkElement.h (190029 => 190030)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/html/HTMLLinkElement.h        2015-09-20 16:41:46 UTC (rev 190029)
+++ trunk/Source/WebCore/html/HTMLLinkElement.h        2015-09-20 16:43:55 UTC (rev 190030)
</span><span class="lines">@@ -65,7 +65,6 @@
</span><span class="cx"> 
</span><span class="cx">     bool isDisabled() const { return m_disabledState == Disabled; }
</span><span class="cx">     bool isEnabledViaScript() const { return m_disabledState == EnabledViaScript; }
</span><del>-    void setSizes(const String&amp;);
</del><span class="cx">     DOMSettableTokenList&amp; sizes() { return m_sizes.get(); }
</span><span class="cx"> 
</span><span class="cx">     void dispatchPendingEvent(LinkEventSender*);
</span></span></pre></div>
<a id="trunkSourceWebCorehtmlHTMLLinkElementidl"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/html/HTMLLinkElement.idl (190029 => 190030)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/html/HTMLLinkElement.idl        2015-09-20 16:41:46 UTC (rev 190029)
+++ trunk/Source/WebCore/html/HTMLLinkElement.idl        2015-09-20 16:43:55 UTC (rev 190030)
</span><span class="lines">@@ -28,7 +28,7 @@
</span><span class="cx">     [Reflect] attribute DOMString rel;
</span><span class="cx">     [Reflect] attribute DOMString rev;
</span><span class="cx"> #if (defined(LANGUAGE_JAVASCRIPT) &amp;&amp; LANGUAGE_JAVASCRIPT) || (defined(LANGUAGE_GOBJECT) || LANGUAGE_GOBJECT)
</span><del>-    [CustomSetter] attribute DOMSettableTokenList sizes;
</del><ins>+    [PutForwards=value] readonly attribute DOMSettableTokenList sizes;
</ins><span class="cx"> #endif
</span><span class="cx">     [Reflect] attribute DOMString target;
</span><span class="cx">     [Reflect] attribute DOMString type;
</span></span></pre></div>
<a id="trunkSourceWebCorehtmlHTMLOutputElementidl"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/html/HTMLOutputElement.idl (190029 => 190030)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/html/HTMLOutputElement.idl        2015-09-20 16:41:46 UTC (rev 190029)
+++ trunk/Source/WebCore/html/HTMLOutputElement.idl        2015-09-20 16:43:55 UTC (rev 190030)
</span><span class="lines">@@ -23,7 +23,10 @@
</span><span class="cx">  */
</span><span class="cx"> 
</span><span class="cx"> interface HTMLOutputElement : HTMLElement {
</span><ins>+    // FIXME: This is supposed to be:
+    // [PutForwards=value] readonly attribute DOMSettableTokenList htmlFor;
</ins><span class="cx">     readonly attribute DOMSettableTokenList htmlFor;
</span><ins>+
</ins><span class="cx">     readonly attribute HTMLFormElement form;
</span><span class="cx">     [Reflect] attribute DOMString name;
</span><span class="cx"> 
</span></span></pre></div>
<a id="trunkSourceWebCorehtmlHTMLTableCellElementidl"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/html/HTMLTableCellElement.idl (190029 => 190030)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/html/HTMLTableCellElement.idl        2015-09-20 16:41:46 UTC (rev 190029)
+++ trunk/Source/WebCore/html/HTMLTableCellElement.idl        2015-09-20 16:43:55 UTC (rev 190030)
</span><span class="lines">@@ -27,7 +27,11 @@
</span><span class="cx">     [Reflect=char] attribute DOMString ch;
</span><span class="cx">     [Reflect=charoff] attribute DOMString chOff;
</span><span class="cx">     attribute long colSpan;
</span><ins>+
+    // FIXME: This is supposed to be:
+    // [PutForwards=value] readonly attribute DOMSettableTokenList headers;
</ins><span class="cx">     [Reflect] attribute DOMString headers;
</span><ins>+
</ins><span class="cx">     [Reflect] attribute DOMString height;
</span><span class="cx">     [Reflect] attribute boolean noWrap;
</span><span class="cx">     attribute long rowSpan;
</span></span></pre>
</div>
</div>

</body>
</html>