зеркало из https://github.com/mozilla/gecko-dev.git
b=344914, more canvas getImageData GC rooting fun, r=mrbkap
This commit is contained in:
Родитель
1ae65e3838
Коммит
4acc9c866f
|
@ -2847,14 +2847,16 @@ nsCanvasRenderingContext2D::GetImageData()
|
|||
if (!dataArray)
|
||||
return NS_ERROR_OUT_OF_MEMORY;
|
||||
|
||||
nsAutoGCRoot autoGCRoot(&dataArray, &rv);
|
||||
if (NS_FAILED(rv))
|
||||
return rv;
|
||||
nsAutoGCRoot arrayGCRoot(&dataArray, &rv);
|
||||
NS_ENSURE_SUCCESS(rv, rv);
|
||||
|
||||
JSObject *result = JS_NewObject(ctx, NULL, NULL, NULL);
|
||||
if (!result)
|
||||
return NS_ERROR_OUT_OF_MEMORY;
|
||||
|
||||
nsAutoGCRoot resultGCRoot(&result, &rv);
|
||||
NS_ENSURE_SUCCESS(rv, rv);
|
||||
|
||||
if (!JS_DefineProperty(ctx, result, "width", INT_TO_JSVAL(w), NULL, NULL, 0) ||
|
||||
!JS_DefineProperty(ctx, result, "height", INT_TO_JSVAL(h), NULL, NULL, 0) ||
|
||||
!JS_DefineProperty(ctx, result, "data", OBJECT_TO_JSVAL(dataArray), NULL, NULL, 0))
|
||||
|
|
Загрузка…
Ссылка в новой задаче