Stefan Leichter <[EMAIL PROTECTED]> writes:

> +    if (pszSubPath && (length = MultiByteToWideChar(CP_ACP, 0, pszSubPath, 
> -1, NULL, 0))) {
> +        pszSubPathW = HeapAlloc(GetProcessHeap(), 0, length * sizeof(WCHAR));
> +        if(!pszSubPathW)
> +            return HRESULT_FROM_WIN32(ERROR_NOT_ENOUGH_MEMORY);

You are leaking memory on error. Also I don't think it makes sense to
test the return value of MultiByteToWideChar, it shouldn't fail in this
case (or if you test it, then you need to handle the error properly, not
use an empty path instead).

-- 
Alexandre Julliard
[EMAIL PROTECTED]


Reply via email to