[WINESYNC] msvcrt: memmove_s shouldn't zero its output buffer on error.

wine commit id 49560458426cf25b6a36bbf9bad35aa75c9f7aa7 by Dan Kegel <dank@kegel.com>
This commit is contained in:
Timo Kreuzer 2012-07-28 19:43:43 +03:00
parent 8fa0886fb9
commit 977e236102

View file

@ -715,20 +715,9 @@ int CDECL MSVCRT_memmove_s(void *dest, MSVCRT_size_t numberOfElements, const voi
if(!count) if(!count)
return 0; return 0;
if(!dest || !src) { if (!MSVCRT_CHECK_PMT(dest != NULL)) return MSVCRT_EINVAL;
if(dest) if (!MSVCRT_CHECK_PMT(src != NULL)) return MSVCRT_EINVAL;
memset(dest, 0, numberOfElements); if (!MSVCRT_CHECK_PMT_ERR( count <= numberOfElements, MSVCRT_ERANGE )) return MSVCRT_ERANGE;
*_errno() = EINVAL;
return EINVAL;
}
if(count > numberOfElements) {
memset(dest, 0, numberOfElements);
*_errno() = ERANGE;
return ERANGE;
}
memmove(dest, src, count); memmove(dest, src, count);
return 0; return 0;