Module: wine Branch: master Commit: 8c16ae7a7f89fbf4f07211122b89ebe5fab9942c URL: http://source.winehq.org/git/wine.git/?a=commit;h=8c16ae7a7f89fbf4f07211122b...
Author: Jon Griffiths jon_p_griffiths@yahoo.com Date: Sun Jul 6 08:42:27 2008 -0700
oleaut32: Fix memcpy overlapping ranges in SysReAllocStringLen.
---
dlls/oleaut32/oleaut.c | 4 ++-- 1 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/dlls/oleaut32/oleaut.c b/dlls/oleaut32/oleaut.c index 9fdac76..9884416 100644 --- a/dlls/oleaut32/oleaut.c +++ b/dlls/oleaut32/oleaut.c @@ -287,7 +287,7 @@ BSTR WINAPI SysAllocStringLen(const OLECHAR *str, unsigned int len) * * NOTES * See BSTR(), SysAllocStringByteLen(). - * *pbstr may be changed by this function. + * *old may be changed by this function. */ int WINAPI SysReAllocStringLen(BSTR* old, const OLECHAR* str, unsigned int len) { @@ -301,7 +301,7 @@ int WINAPI SysReAllocStringLen(BSTR* old, const OLECHAR* str, unsigned int len) *old = (BSTR)(ptr+1); *ptr = newbytelen; if (str) { - memcpy(*old, str, newbytelen); + memmove(*old, str, newbytelen); (*old)[len] = 0; } else { /* Subtle hidden feature: The old string data is still there