Module: wine Branch: master Commit: 589f58d806908e506fd52a5ef4760932a612de28 URL: http://source.winehq.org/git/wine.git/?a=commit;h=589f58d806908e506fd52a5ef4...
Author: Martin Storsjo martin@martin.st Date: Fri Dec 5 00:40:51 2014 +0200
msvcr120: Implement the _vacopy function.
---
dlls/msvcr120/msvcr120.spec | 2 +- dlls/msvcrt/misc.c | 8 ++++++++ include/msvcrt/crtdefs.h | 6 ++++++ include/windef.h | 6 ++++++ 4 files changed, 21 insertions(+), 1 deletion(-)
diff --git a/dlls/msvcr120/msvcr120.spec b/dlls/msvcr120/msvcr120.spec index 1b8dc28..d0ba290 100644 --- a/dlls/msvcr120/msvcr120.spec +++ b/dlls/msvcr120/msvcr120.spec @@ -1792,7 +1792,7 @@ @ cdecl _unlock_file(ptr) MSVCRT__unlock_file @ cdecl _utime32(str ptr) @ cdecl _utime64(str ptr) -@ stub _vacopy +@ cdecl _vacopy(ptr ptr) MSVCR120__vacopy @ cdecl _vcprintf(str ptr) @ stub _vcprintf_l @ stub _vcprintf_p diff --git a/dlls/msvcrt/misc.c b/dlls/msvcrt/misc.c index c66152b..4e9f288 100644 --- a/dlls/msvcrt/misc.c +++ b/dlls/msvcrt/misc.c @@ -490,3 +490,11 @@ BOOL CDECL MSVCR110__crtInitializeCriticalSectionEx( TRACE("(%p %x %x)\n", cs, spin_count, flags); return InitializeCriticalSectionEx(cs, spin_count, flags); } + +/********************************************************************* + * _vacopy (MSVCR120.@) + */ +void CDECL MSVCR120__vacopy(__ms_va_list *dest, __ms_va_list src) +{ + __ms_va_copy(*dest, src); +} diff --git a/include/msvcrt/crtdefs.h b/include/msvcrt/crtdefs.h index da278be..f2600ad 100644 --- a/include/msvcrt/crtdefs.h +++ b/include/msvcrt/crtdefs.h @@ -80,10 +80,16 @@ # define __ms_va_list __builtin_ms_va_list # define __ms_va_start(list,arg) __builtin_ms_va_start(list,arg) # define __ms_va_end(list) __builtin_ms_va_end(list) +# define __ms_va_copy(dest,src) __builtin_ms_va_copy(dest,src) # else # define __ms_va_list va_list # define __ms_va_start(list,arg) va_start(list,arg) # define __ms_va_end(list) va_end(list) +# ifdef va_copy +# define __ms_va_copy(dest,src) va_copy(dest,src) +# else +# define __ms_va_copy(dest,src) ((dest) = (src)) +# endif # endif #endif
diff --git a/include/windef.h b/include/windef.h index 9322c41..e914726 100644 --- a/include/windef.h +++ b/include/windef.h @@ -89,10 +89,16 @@ extern "C" { # define __ms_va_list __builtin_ms_va_list # define __ms_va_start(list,arg) __builtin_ms_va_start(list,arg) # define __ms_va_end(list) __builtin_ms_va_end(list) +# define __ms_va_copy(dest,src) __builtin_ms_va_copy(dest,src) # else # define __ms_va_list va_list # define __ms_va_start(list,arg) va_start(list,arg) # define __ms_va_end(list) va_end(list) +# ifdef va_copy +# define __ms_va_copy(dest,src) va_copy(dest,src) +# else +# define __ms_va_copy(dest,src) ((dest) = (src)) +# endif # endif #endif