Bug 1166231 - Make nsIDOMBlob an empty interface, r=ehsan

This commit is contained in:
Andrea Marchesini
2015-05-19 15:36:37 +01:00
parent 07218d9255
commit b45d15ecff
35 changed files with 380 additions and 395 deletions

View File

@@ -606,9 +606,12 @@ HTMLCanvasElement::ToBlob(JSContext* aCx,
nsresult ReceiveBlob(already_AddRefed<Blob> aBlob)
{
nsRefPtr<Blob> blob = aBlob;
uint64_t size;
nsresult rv = blob->GetSize(&size);
if (NS_SUCCEEDED(rv)) {
ErrorResult rv;
uint64_t size = blob->GetSize(rv);
if (rv.Failed()) {
rv.SuppressException();
} else {
AutoJSAPI jsapi;
if (jsapi.Init(mGlobal)) {
JS_updateMallocCounter(jsapi.cx(), size);
@@ -617,13 +620,12 @@ HTMLCanvasElement::ToBlob(JSContext* aCx,
nsRefPtr<Blob> newBlob = Blob::Create(mGlobal, blob->Impl());
mozilla::ErrorResult error;
mFileCallback->Call(*newBlob, error);
mFileCallback->Call(*newBlob, rv);
mGlobal = nullptr;
mFileCallback = nullptr;
return error.StealNSResult();
return rv.StealNSResult();
}
nsCOMPtr<nsIGlobalObject> mGlobal;