[html5] r8310 - [giow] (2) Prevent dead Blobs and Files from being cloned Fixing https://www.w3. [...]
whatwg at whatwg.org
whatwg at whatwg.org
Fri Nov 22 12:18:57 PST 2013
Author: ianh
Date: 2013-11-22 12:18:56 -0800 (Fri, 22 Nov 2013)
New Revision: 8310
Modified:
complete.html
index
source
Log:
[giow] (2) Prevent dead Blobs and Files from being cloned
Fixing https://www.w3.org/Bugs/Public/show_bug.cgi?id=23417
Affected topics: Canvas, DOM APIs
Modified: complete.html
===================================================================
--- complete.html 2013-11-22 20:13:18 UTC (rev 8309)
+++ complete.html 2013-11-22 20:18:56 UTC (rev 8310)
@@ -3820,8 +3820,8 @@
<ul class=brief><li><dfn id=blob><code>Blob</code></dfn></li>
<li><dfn id=file><code>File</code></dfn></li>
<li><dfn id=filelist><code>FileList</code></dfn></li>
- <li><dfn id=blob.close()><code title=dom-Blob-close>Blob.close()</code></dfn></li>
- <li><dfn id=blob.type><code title=dom-Blob-type>Blob.type</code></dfn></li>
+ <li><dfn id=dom-blob-close title=dom-Blob-close><code>Blob.close()</code></dfn></li>
+ <li><dfn id=dom-blob-type title=dom-Blob-type><code>Blob.type</code></dfn></li>
<li>The concept of <dfn id=file-error-read title=file-error-read>read errors</dfn></li>
</ul></dd>
@@ -8183,9 +8183,8 @@
<dt>If <var title="">input</var> is a <code><a href=#blob>Blob</a></code> object</dt>
-<!--CLEANUP-->
- <dd><p>Let <var title="">output</var> be a newly constructed object of the same class as <var title="">input</var>,
- corresponding to the same underlying data.</dd>
+ <dd><p><p>If <var title="">input</var> has been disabled through the <code title=dom-Blob-close><a href=#dom-blob-close>close()</a></code> method, throw a <code><a href=#datacloneerror>DataCloneError</a></code> exception
+ and abort the overall <a href=#structured-clone>structured clone</a> algorithm. Otherwise, let <var title="">output</var> be a newly constructed object of the same class as <var title="">input</var>, corresponding to the same underlying data.</dd>
<dt>If <var title="">input</var> is a <code><a href=#filelist>FileList</a></code> object</dt>
@@ -8208,6 +8207,7 @@
<dt>If <var title="">input</var> is an <code><a href=#arraybuffer>ArrayBuffer</a></code> object</dt>
+<!--CLEANUP-->
<dd><p>If <var title="">input</var> has been <a href=#concept-transferable-neutered title=concept-Transferable-neutered>neutered</a>, throw a <code><a href=#datacloneerror>DataCloneError</a></code>
exception and abort the overall <a href=#structured-clone>structured clone</a> algorithm. Otherwise, let <var title="">output</var> be a newly constructed <code><a href=#arraybuffer>ArrayBuffer</a></code> object whose contents are
a copy of <var title="">input</var>'s contents, with the same length.</dd>
@@ -74532,7 +74532,7 @@
<ol><li><p>If either the <var title="">sw</var> or <var title="">sh</var> arguments are specified
but zero, throw an <code><a href=#indexsizeerror>IndexSizeError</a></code> exception and abort these steps.</li>
- <li><p>If the <code><a href=#blob>Blob</a></code> object has been disabled through the <code title=dom-Blob-close>close</code> method, then throw an <code><a href=#invalidstateerror>InvalidStateError</a></code>
+ <li><p>If the <code><a href=#blob>Blob</a></code> object has been disabled through the <code title=dom-Blob-close><a href=#dom-blob-close>close()</a></code> method, then throw an <code><a href=#invalidstateerror>InvalidStateError</a></code>
exception and abort these steps.</li>
<li><p>Return a new <code><a href=#promise>Promise</a></code>, but continue running these steps asynchronously.</li>
@@ -74543,7 +74543,7 @@
<li><p>Apply the <a href=#content-type-sniffing:-image title="Content-Type sniffing: image">image sniffing rules</a> to
determine the file format of the image data, with MIME type of the <code><a href=#blob>Blob</a></code> (as given
- by the <code><a href=#blob>Blob</a></code> object's <code title=dom-Blob-type>type</code> attribute) giving the
+ by the <code><a href=#blob>Blob</a></code> object's <code title=dom-Blob-type><a href=#dom-blob-type>type</a></code> attribute) giving the
official type.</li>
<li><p>If the image data is not in a supported file format (e.g. it's not actually an image at
@@ -76615,7 +76615,7 @@
<p>Add an item to the <a href=#drag-data-store-item-list>drag data store item list</a> whose <a href=#the-drag-data-item-kind title="the drag data
item kind">kind</a> is <i><a href=#file>File</a></i>, whose <a href=#the-drag-data-item-type-string title="the drag data item type string">type
- string</a> is the <code title=dom-Blob-type>type</code> of the <code><a href=#file>File</a></code>,
+ string</a> is the <code title=dom-Blob-type><a href=#dom-blob-type>type</a></code> of the <code><a href=#file>File</a></code>,
<a href=#converted-to-ascii-lowercase>converted to ASCII lowercase</a>, and whose data is the same as the
<code><a href=#file>File</a></code>'s data.</p>
Modified: index
===================================================================
--- index 2013-11-22 20:13:18 UTC (rev 8309)
+++ index 2013-11-22 20:18:56 UTC (rev 8310)
@@ -3820,8 +3820,8 @@
<ul class=brief><li><dfn id=blob><code>Blob</code></dfn></li>
<li><dfn id=file><code>File</code></dfn></li>
<li><dfn id=filelist><code>FileList</code></dfn></li>
- <li><dfn id=blob.close()><code title=dom-Blob-close>Blob.close()</code></dfn></li>
- <li><dfn id=blob.type><code title=dom-Blob-type>Blob.type</code></dfn></li>
+ <li><dfn id=dom-blob-close title=dom-Blob-close><code>Blob.close()</code></dfn></li>
+ <li><dfn id=dom-blob-type title=dom-Blob-type><code>Blob.type</code></dfn></li>
<li>The concept of <dfn id=file-error-read title=file-error-read>read errors</dfn></li>
</ul></dd>
@@ -8183,9 +8183,8 @@
<dt>If <var title="">input</var> is a <code><a href=#blob>Blob</a></code> object</dt>
-<!--CLEANUP-->
- <dd><p>Let <var title="">output</var> be a newly constructed object of the same class as <var title="">input</var>,
- corresponding to the same underlying data.</dd>
+ <dd><p><p>If <var title="">input</var> has been disabled through the <code title=dom-Blob-close><a href=#dom-blob-close>close()</a></code> method, throw a <code><a href=#datacloneerror>DataCloneError</a></code> exception
+ and abort the overall <a href=#structured-clone>structured clone</a> algorithm. Otherwise, let <var title="">output</var> be a newly constructed object of the same class as <var title="">input</var>, corresponding to the same underlying data.</dd>
<dt>If <var title="">input</var> is a <code><a href=#filelist>FileList</a></code> object</dt>
@@ -8208,6 +8207,7 @@
<dt>If <var title="">input</var> is an <code><a href=#arraybuffer>ArrayBuffer</a></code> object</dt>
+<!--CLEANUP-->
<dd><p>If <var title="">input</var> has been <a href=#concept-transferable-neutered title=concept-Transferable-neutered>neutered</a>, throw a <code><a href=#datacloneerror>DataCloneError</a></code>
exception and abort the overall <a href=#structured-clone>structured clone</a> algorithm. Otherwise, let <var title="">output</var> be a newly constructed <code><a href=#arraybuffer>ArrayBuffer</a></code> object whose contents are
a copy of <var title="">input</var>'s contents, with the same length.</dd>
@@ -74532,7 +74532,7 @@
<ol><li><p>If either the <var title="">sw</var> or <var title="">sh</var> arguments are specified
but zero, throw an <code><a href=#indexsizeerror>IndexSizeError</a></code> exception and abort these steps.</li>
- <li><p>If the <code><a href=#blob>Blob</a></code> object has been disabled through the <code title=dom-Blob-close>close</code> method, then throw an <code><a href=#invalidstateerror>InvalidStateError</a></code>
+ <li><p>If the <code><a href=#blob>Blob</a></code> object has been disabled through the <code title=dom-Blob-close><a href=#dom-blob-close>close()</a></code> method, then throw an <code><a href=#invalidstateerror>InvalidStateError</a></code>
exception and abort these steps.</li>
<li><p>Return a new <code><a href=#promise>Promise</a></code>, but continue running these steps asynchronously.</li>
@@ -74543,7 +74543,7 @@
<li><p>Apply the <a href=#content-type-sniffing:-image title="Content-Type sniffing: image">image sniffing rules</a> to
determine the file format of the image data, with MIME type of the <code><a href=#blob>Blob</a></code> (as given
- by the <code><a href=#blob>Blob</a></code> object's <code title=dom-Blob-type>type</code> attribute) giving the
+ by the <code><a href=#blob>Blob</a></code> object's <code title=dom-Blob-type><a href=#dom-blob-type>type</a></code> attribute) giving the
official type.</li>
<li><p>If the image data is not in a supported file format (e.g. it's not actually an image at
@@ -76615,7 +76615,7 @@
<p>Add an item to the <a href=#drag-data-store-item-list>drag data store item list</a> whose <a href=#the-drag-data-item-kind title="the drag data
item kind">kind</a> is <i><a href=#file>File</a></i>, whose <a href=#the-drag-data-item-type-string title="the drag data item type string">type
- string</a> is the <code title=dom-Blob-type>type</code> of the <code><a href=#file>File</a></code>,
+ string</a> is the <code title=dom-Blob-type><a href=#dom-blob-type>type</a></code> of the <code><a href=#file>File</a></code>,
<a href=#converted-to-ascii-lowercase>converted to ASCII lowercase</a>, and whose data is the same as the
<code><a href=#file>File</a></code>'s data.</p>
Modified: source
===================================================================
--- source 2013-11-22 20:13:18 UTC (rev 8309)
+++ source 2013-11-22 20:18:56 UTC (rev 8310)
@@ -2596,8 +2596,8 @@
<li><dfn><code>Blob</code></dfn></li>
<li><dfn><code>File</code></dfn></li>
<li><dfn><code>FileList</code></dfn></li>
- <li><dfn><code data-x="dom-Blob-close">Blob.close()</code></dfn></li>
- <li><dfn><code data-x="dom-Blob-type">Blob.type</code></dfn></li>
+ <li><dfn data-x="dom-Blob-close"><code>Blob.close()</code></dfn></li>
+ <li><dfn data-x="dom-Blob-type"><code>Blob.type</code></dfn></li>
<li>The concept of <dfn data-x="file-error-read">read errors</dfn></li>
</ul>
@@ -7785,9 +7785,11 @@
<dt>If <var data-x="">input</var> is a <code>Blob</code> object</dt>
-<!--CLEANUP-->
- <dd><p>Let <var data-x="">output</var> be a newly constructed object of the same class as <var data-x="">input</var>,
- corresponding to the same underlying data.</p></dd>
+ <dd><p><p>If <var data-x="">input</var> has been disabled through the <code
+ data-x="dom-Blob-close">close()</code> method, throw a <code>DataCloneError</code> exception
+ and abort the overall <span>structured clone</span> algorithm. Otherwise, let <var
+ data-x="">output</var> be a newly constructed object of the same class as <var
+ data-x="">input</var>, corresponding to the same underlying data.</p></dd>
<dt>If <var data-x="">input</var> is a <code>FileList</code> object</dt>
@@ -7816,6 +7818,7 @@
<dt>If <var data-x="">input</var> is an <code>ArrayBuffer</code> object</dt>
+<!--CLEANUP-->
<dd><p>If <var data-x="">input</var> has been <span
data-x="concept-Transferable-neutered">neutered</span>, throw a <code>DataCloneError</code>
exception and abort the overall <span>structured clone</span> algorithm. Otherwise, let <var
@@ -83315,7 +83318,7 @@
but zero, throw an <code>IndexSizeError</code> exception and abort these steps.</p></li>
<li><p>If the <code>Blob</code> object has been disabled through the <code
- data-x="dom-Blob-close">close</code> method, then throw an <code>InvalidStateError</code>
+ data-x="dom-Blob-close">close()</code> method, then throw an <code>InvalidStateError</code>
exception and abort these steps.</p></li>
<li><p>Return a new <code>Promise</code>, but continue running these steps asynchronously.</p></li>
More information about the Commit-Watchers
mailing list