Landing fix for bug 323156. XPCDispConvert::JSArrayToCOMArray does not convert empty arrays correctly. Patch by gdavis@nsisoftware.com, r=dbradley@gmail.com, sr=jst@mozilla.org

This commit is contained in:
jst%mozilla.jstenback.com 2006-01-31 01:47:01 +00:00
Родитель 8ae6b9d703
Коммит 390dd19a05
1 изменённых файлов: 13 добавлений и 1 удалений

Просмотреть файл

@ -131,7 +131,19 @@ JSBool XPCDispConvert::JSArrayToCOMArray(XPCCallContext& ccx, JSObject *obj,
++varArray; ++varArray;
} }
} }
SafeArrayUnaccessData(array); if(!array)
{
array = SafeArrayCreateVector(VT_VARIANT, 0, 0);
if(!array)
{
err = NS_ERROR_OUT_OF_MEMORY;
return JS_FALSE;
}
}
else
{
SafeArrayUnaccessData(array);
}
var.vt = VT_ARRAY | VT_VARIANT; var.vt = VT_ARRAY | VT_VARIANT;
var.parray = array; var.parray = array;
return JS_TRUE; return JS_TRUE;