#include "desk.h"
+#include <cfgmgr32.h>
+
#define NDEBUG
#include <debug.h>
if (str != NULL)
{
#ifdef UNICODE
- wcscpy(str,
+ StringCbCopyW(str, c * sizeof(WCHAR),
pszSrc);
#else
MultiByteToWideChar(CP_ACP,
PCWSTR pszRet = NULL;
PWSTR pszBuf;
PCDevSettings This = impl_from_IDataObject(iface);
-
+
ZeroMemory(pmedium,
sizeof(STGMEDIUM));
pszRet = szEmpty;
pszBuf = GlobalAlloc(GPTR,
- (_tcslen(pszRet) + 1) * sizeof(WCHAR));
+ (wcslen(pszRet) + 1) * sizeof(WCHAR));
if (pszBuf != NULL)
{
- _tcscpy(pszBuf,
- pszRet);
+ hr = StringCbCopy(pszBuf, (wcslen(pszRet) + 1) * sizeof(WCHAR), pszRet);
+ if (FAILED(hr))
+ {
+ GlobalFree(pszBuf);
+ return hr;
+ }
pmedium->tymed = TYMED_HGLOBAL;
pmedium->hGlobal = pszBuf;