diff --git a/mozilla/xpcom/proxy/src/nsProxyEvent.cpp b/mozilla/xpcom/proxy/src/nsProxyEvent.cpp index 464c9dff9ef..9fbc309cd7a 100644 --- a/mozilla/xpcom/proxy/src/nsProxyEvent.cpp +++ b/mozilla/xpcom/proxy/src/nsProxyEvent.cpp @@ -431,8 +431,11 @@ nsProxyObject::LockedFind(REFNSIID aIID, void **aResult) peo = new nsProxyEventObject(this, pec, already_AddRefed(newInterface), &rv); - if (!peo) + if (!peo) { + NS_RELEASE(newInterface); return NS_ERROR_OUT_OF_MEMORY; + } + if (NS_FAILED(rv)) { delete peo; return rv;