Lei Zhang : shlwapi: Refactor data return code in IQueryAssociations_fnGetString.
Alexandre Julliard
julliard at winehq.org
Tue Oct 14 08:30:19 CDT 2008
Module: wine
Branch: master
Commit: 58797fc54ce82886a2780a9f7cf6628a63573838
URL: http://source.winehq.org/git/wine.git/?a=commit;h=58797fc54ce82886a2780a9f7cf6628a63573838
Author: Lei Zhang <thestig at google.com>
Date: Mon Oct 13 18:09:28 2008 -0700
shlwapi: Refactor data return code in IQueryAssociations_fnGetString.
---
dlls/shlwapi/assoc.c | 40 ++++++++++++++++++++++++----------------
1 files changed, 24 insertions(+), 16 deletions(-)
diff --git a/dlls/shlwapi/assoc.c b/dlls/shlwapi/assoc.c
index 61ac84b..882b881 100644
--- a/dlls/shlwapi/assoc.c
+++ b/dlls/shlwapi/assoc.c
@@ -670,6 +670,29 @@ static HRESULT ASSOC_GetExecutable(IQueryAssociationsImpl *This,
return S_OK;
}
+static HRESULT ASSOC_ReturnData(LPWSTR out, DWORD *outlen, LPCWSTR data,
+ DWORD datalen)
+{
+ assert(outlen);
+
+ if (out)
+ {
+ if (*outlen < datalen)
+ {
+ *outlen = datalen;
+ return E_POINTER;
+ }
+ *outlen = datalen;
+ lstrcpynW(out, data, datalen);
+ return S_OK;
+ }
+ else
+ {
+ *outlen = datalen;
+ return S_FALSE;
+ }
+}
+
/**************************************************************************
* IQueryAssociations_GetString {SHLWAPI}
*
@@ -718,22 +741,7 @@ static HRESULT WINAPI IQueryAssociations_fnGetString(
if (FAILED(hr))
return hr;
len++;
- if (pszOut)
- {
- if (*pcchOut < len)
- {
- *pcchOut = len;
- return E_POINTER;
- }
- *pcchOut = len;
- lstrcpynW(pszOut, path, len);
- return S_OK;
- }
- else
- {
- *pcchOut = len;
- return S_FALSE;
- }
+ return ASSOC_ReturnData(pszOut, pcchOut, path, len);
break;
}
More information about the wine-cvs
mailing list