Module: wine Branch: stable Commit: 3b86a962ae4e02b1b41641fac36f780d6278d309 URL: https://gitlab.winehq.org/wine/wine/-/commit/3b86a962ae4e02b1b41641fac36f780... Author: Gabriel Ivăncescu <gabrielopcode(a)gmail.com> Date: Fri Jan 7 17:43:44 2022 +0200 mshtml: Fix leak on failure in return_nsstr. Signed-off-by: Gabriel Ivăncescu <gabrielopcode(a)gmail.com> Signed-off-by: Jacek Caban <jacek(a)codeweavers.com> Signed-off-by: Alexandre Julliard <julliard(a)winehq.org> (cherry picked from commit 89317f533b7c6d244301d0a83c20879a209b1409) Signed-off-by: Michael Stefaniuc <mstefani(a)winehq.org> --- dlls/mshtml/nsembed.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/dlls/mshtml/nsembed.c b/dlls/mshtml/nsembed.c index 25ad92d5ddf..32ae792625c 100644 --- a/dlls/mshtml/nsembed.c +++ b/dlls/mshtml/nsembed.c @@ -917,6 +917,7 @@ HRESULT map_nsresult(nsresult nsres) HRESULT return_nsstr(nsresult nsres, nsAString *nsstr, BSTR *p) { const PRUnichar *str; + HRESULT hres = S_OK; if(NS_FAILED(nsres)) { WARN("failed: %08x\n", nsres); @@ -929,13 +930,13 @@ HRESULT return_nsstr(nsresult nsres, nsAString *nsstr, BSTR *p) if(*str) { *p = SysAllocString(str); if(!*p) - return E_OUTOFMEMORY; + hres = E_OUTOFMEMORY; }else { *p = NULL; } nsAString_Finish(nsstr); - return S_OK; + return hres; } HRESULT return_nsstr_variant(nsresult nsres, nsAString *nsstr, unsigned flags, VARIANT *p)