Module: wine Branch: master Commit: e80000e6ab33f2a863d494fc6721ae78a6608175 URL: http://source.winehq.org/git/wine.git/?a=commit;h=e80000e6ab33f2a863d494fc67... Author: Paul Vriens <paul.vriens.wine(a)gmail.com> Date: Tue Nov 7 21:29:46 2006 +0100 comctl32: Fix return values of string functions. --- dlls/comctl32/string.c | 12 ++++++------ 1 files changed, 6 insertions(+), 6 deletions(-) diff --git a/dlls/comctl32/string.c b/dlls/comctl32/string.c index e083ea6..1c01b08 100644 --- a/dlls/comctl32/string.c +++ b/dlls/comctl32/string.c @@ -165,8 +165,8 @@ INT WINAPI Str_GetPtrA (LPCSTR lpSrc, LP TRACE("(%p %p %d)\n", lpSrc, lpDest, nMaxLen); - if (!lpDest && lpSrc) - return strlen (lpSrc); + if ((!lpDest || nMaxLen == 0) && lpSrc) + return (strlen(lpSrc) + 1); if (nMaxLen == 0) return 0; @@ -176,12 +176,12 @@ INT WINAPI Str_GetPtrA (LPCSTR lpSrc, LP return 0; } - len = strlen (lpSrc); + len = strlen(lpSrc) + 1; if (len >= nMaxLen) - len = nMaxLen - 1; + len = nMaxLen; - RtlMoveMemory (lpDest, lpSrc, len); - lpDest[len] = '\0'; + RtlMoveMemory (lpDest, lpSrc, len - 1); + lpDest[len - 1] = '\0'; return len; }