diff --git a/mozilla/js/src/xpconnect/src/xpcwrappedjsclass.cpp b/mozilla/js/src/xpconnect/src/xpcwrappedjsclass.cpp index ee0c764505f..964dd9ee994 100644 --- a/mozilla/js/src/xpconnect/src/xpcwrappedjsclass.cpp +++ b/mozilla/js/src/xpconnect/src/xpcwrappedjsclass.cpp @@ -1497,7 +1497,8 @@ pre_call_clean_up: if(isArray) { - if(!XPCConvert::JSArray2Native(ccx, (void**)&pv->val, val, + if(array_count && + !XPCConvert::JSArray2Native(ccx, (void**)&pv->val, val, array_count, array_count, datum_type, useAllocator, ¶m_iid, diff --git a/mozilla/js/src/xpconnect/src/xpcwrappednative.cpp b/mozilla/js/src/xpconnect/src/xpcwrappednative.cpp index cb249fa0a2d..fb4a1d225d4 100644 --- a/mozilla/js/src/xpconnect/src/xpcwrappednative.cpp +++ b/mozilla/js/src/xpconnect/src/xpcwrappednative.cpp @@ -1979,7 +1979,8 @@ XPCWrappedNative::CallMethod(XPCCallContext& ccx, if(isArray) { - if(!XPCConvert::JSArray2Native(ccx, (void**)&dp->val, src, + if(array_count && + !XPCConvert::JSArray2Native(ccx, (void**)&dp->val, src, array_count, array_capacity, datum_type, useAllocator,