Module: wine Branch: master Commit: 992ec949ba3a51758033386567a1deda80fa4a6e URL: https://gitlab.winehq.org/wine/wine/-/commit/992ec949ba3a51758033386567a1ded...
Author: Alistair Leslie-Hughes leslie_alistair@hotmail.com Date: Mon May 8 09:05:42 2023 +1000
activeds: Free memory on error paths (coverity).
---
dlls/activeds/pathname.c | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-)
diff --git a/dlls/activeds/pathname.c b/dlls/activeds/pathname.c index 943afd5603d..05db9bc8071 100644 --- a/dlls/activeds/pathname.c +++ b/dlls/activeds/pathname.c @@ -136,7 +136,10 @@ static HRESULT parse_path(BSTR path, BSTR *provider, BSTR *server, BSTR *dn) if (!*p) return S_OK;
if (*p++ != '/' || *p++ != '/' || !*p) + { + SysFreeString(*provider); return E_ADS_BAD_PATHNAME; + }
p_server = p; server_len = 0; @@ -145,7 +148,11 @@ static HRESULT parse_path(BSTR path, BSTR *provider, BSTR *server, BSTR *dn) p++; server_len++; } - if (server_len == 0) return E_ADS_BAD_PATHNAME; + if (server_len == 0) + { + SysFreeString(*provider); + return E_ADS_BAD_PATHNAME; + }
*server = SysAllocStringLen(p_server, server_len); if (!*server)