Index: src/chext/DropMenuExt.cpp =================================================================== diff -u -N -re701ed2460c2558eeefab55a1f3ed1d2c89a56c0 -r4c272b19c74694c428c943011f279ec064fbd894 --- src/chext/DropMenuExt.cpp (.../DropMenuExt.cpp) (revision e701ed2460c2558eeefab55a1f3ed1d2c89a56c0) +++ src/chext/DropMenuExt.cpp (.../DropMenuExt.cpp) (revision 4c272b19c74694c428c943011f279ec064fbd894) @@ -105,7 +105,7 @@ return MAKE_HRESULT(SEVERITY_SUCCESS, FACILITY_NULL, 0); } -STDMETHODIMP CDropMenuExt::GetCommandString(UINT idCmd, UINT uFlags, UINT* /*pwReserved*/, LPSTR pszName, UINT cchMax) +STDMETHODIMP CDropMenuExt::GetCommandString(UINT_PTR idCmd, UINT uFlags, UINT* /*pwReserved*/, LPSTR pszName, UINT cchMax) { if (uFlags == GCS_HELPTEXTW) { @@ -123,8 +123,11 @@ case 0: case 1: case 2: - wcsncpy(reinterpret_cast(pszName), A2W(pCommand[idCmd].szDesc), cchMax); - break; + { + CT2W ct2w(pCommand[idCmd].szDesc); + wcsncpy(reinterpret_cast(pszName), ct2w, cchMax); + break; + } default: wcsncpy(reinterpret_cast(pszName), L"", cchMax); break; @@ -148,8 +151,11 @@ case 0: case 1: case 2: - strncpy(pszName, pCommand[idCmd].szDesc, cchMax); - break; + { + CT2A ct2a(pCommand[idCmd].szDesc); + strncpy(pszName, ct2a, cchMax); + break; + } default: strncpy(pszName, "", cchMax); break;