Re: File API: closed Blob objects

On Thu, Dec 12, 2013 at 9:07 AM, Anne van Kesteren <> wrote:

> See for context.
> What's the use case for close()?
> If we are to have close(), let's define it in such a way that once you
> invoke it the Blob represents the empty byte sequence. This way other
> code that takes and operates on Blob objects does not have to special
> case closed Blob objects, but can just treat them as Blob objects that
> happen to be empty.

Also, you can close() a Blob while an async XHR is taking place on it.
 That shouldn't affect the running operation.  It also means you can say"GET", blobURL); blob.close(); and have it work sensibly--the UA
can throw away the data as soon as all current operations on it have

This could be handled by synchronously taking a reference to the underlying
Blob data during the open() call.  (There are other issues about blob URLs
that need this, too, such as if a blob URL is revoked at various times
during fetch.)  If this is handled as part of parsing a URL string to a
logical URL object, and if that's done synchronously, that could take care
of a number of issues without any special casing.

Glenn Maynard

Received on Monday, 16 December 2013 15:49:14 UTC