From fb293bb8540278316620fc6d26ae55e1e5b17181 Mon Sep 17 00:00:00 2001 From: "benjamin%smedbergs.us" Date: Wed, 17 Jan 2007 20:18:44 +0000 Subject: [PATCH] Bug 354307 - newInterface not freed if nsProxyObject::LockedFind fails, r=timeless git-svn-id: svn://10.0.0.236/trunk@218532 18797224-902f-48f8-a5cc-f745e15eee43 --- mozilla/xpcom/proxy/src/nsProxyEvent.cpp | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) 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;