Alex Henrie : msvcrt: Don' t include MSVC 8.0+ heap functions in SOs for older DLLs.

Alexandre Julliard julliard at winehq.org
Tue Jan 2 13:19:02 CST 2018


Module: wine
Branch: master
Commit: 42ab0af66b74f7572db2f6d0256f49fae7527221
URL:    https://source.winehq.org/git/wine.git/?a=commit;h=42ab0af66b74f7572db2f6d0256f49fae7527221

Author: Alex Henrie <alexhenrie24 at gmail.com>
Date:   Thu Dec 28 10:46:53 2017 -0700

msvcrt: Don't include MSVC 8.0+ heap functions in SOs for older DLLs.

Signed-off-by: Alex Henrie <alexhenrie24 at gmail.com>
Signed-off-by: Piotr Caban <piotr at codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard at winehq.org>

---

 dlls/msvcrt/heap.c | 20 ++++++++++++++++++--
 1 file changed, 18 insertions(+), 2 deletions(-)

diff --git a/dlls/msvcrt/heap.c b/dlls/msvcrt/heap.c
index ed41253..7ea80a3 100644
--- a/dlls/msvcrt/heap.c
+++ b/dlls/msvcrt/heap.c
@@ -373,8 +373,9 @@ MSVCRT_size_t CDECL _msize(void* mem)
   return size;
 }
 
+#if _MSVCR_VER>=80
 /*********************************************************************
- * _aligned_msize (MSVCR100.@)
+ * _aligned_msize (MSVCR80.@)
  */
 size_t CDECL _aligned_msize(void *p, MSVCRT_size_t alignment, MSVCRT_size_t offset)
 {
@@ -388,6 +389,7 @@ size_t CDECL _aligned_msize(void *p, MSVCRT_size_t alignment, MSVCRT_size_t offs
     alloc_ptr = SAVED_PTR(p);
     return _msize(*alloc_ptr)-alignment-sizeof(void*);
 }
+#endif
 
 /*********************************************************************
  *		calloc (MSVCRT.@)
@@ -405,6 +407,7 @@ void* CDECL MSVCRT_calloc(MSVCRT_size_t count, MSVCRT_size_t size)
   return msvcrt_heap_alloc(HEAP_ZERO_MEMORY, bytes);
 }
 
+#if _MSVCR_VER>=140
 /*********************************************************************
  *		_calloc_base (UCRTBASE.@)
  */
@@ -412,6 +415,7 @@ void* CDECL _calloc_base(MSVCRT_size_t count, MSVCRT_size_t size)
 {
   return MSVCRT_calloc(count, size);
 }
+#endif
 
 /*********************************************************************
  *		free (MSVCRT.@)
@@ -421,6 +425,7 @@ void CDECL MSVCRT_free(void* ptr)
   msvcrt_heap_free(ptr);
 }
 
+#if _MSVCR_VER>=140
 /*********************************************************************
  *		_free_base (UCRTBASE.@)
  */
@@ -428,6 +433,7 @@ void CDECL _free_base(void* ptr)
 {
   msvcrt_heap_free(ptr);
 }
+#endif
 
 /*********************************************************************
  *                  malloc (MSVCRT.@)
@@ -440,6 +446,7 @@ void* CDECL MSVCRT_malloc(MSVCRT_size_t size)
   return ret;
 }
 
+#if _MSVCR_VER>=140
 /*********************************************************************
  *                  _malloc_base (UCRTBASE.@)
  */
@@ -447,6 +454,7 @@ void* CDECL _malloc_base(MSVCRT_size_t size)
 {
   return MSVCRT_malloc(size);
 }
+#endif
 
 /*********************************************************************
  *		realloc (MSVCRT.@)
@@ -459,6 +467,7 @@ void* CDECL MSVCRT_realloc(void* ptr, MSVCRT_size_t size)
   return NULL;
 }
 
+#if _MSVCR_VER>=140
 /*********************************************************************
  *		_realloc_base (UCRTBASE.@)
  */
@@ -466,9 +475,11 @@ void* CDECL _realloc_base(void* ptr, MSVCRT_size_t size)
 {
   return MSVCRT_realloc(ptr, size);
 }
+#endif
 
+#if _MSVCR_VER>=80
 /*********************************************************************
- * _recalloc (MSVCR100.@)
+ * _recalloc (MSVCR80.@)
  */
 void* CDECL _recalloc(void *mem, MSVCRT_size_t num, MSVCRT_size_t size)
 {
@@ -491,6 +502,7 @@ void* CDECL _recalloc(void *mem, MSVCRT_size_t num, MSVCRT_size_t size)
         memset((BYTE*)ret+old_size, 0, size-old_size);
     return ret;
 }
+#endif
 
 /*********************************************************************
  *		__p__amblksiz (MSVCRT.@)
@@ -739,6 +751,7 @@ int CDECL MSVCRT_memmove_s(void *dest, MSVCRT_size_t numberOfElements, const voi
     return 0;
 }
 
+#if _MSVCR_VER>=100
 /*********************************************************************
  *              wmemmove_s (MSVCR100.@)
  */
@@ -761,6 +774,7 @@ int CDECL wmemmove_s(MSVCRT_wchar_t *dest, MSVCRT_size_t numberOfElements,
     memmove(dest, src, sizeof(MSVCRT_wchar_t)*count);
     return 0;
 }
+#endif
 
 /*********************************************************************
  *		memcpy_s (MSVCRT.@)
@@ -788,6 +802,7 @@ int CDECL MSVCRT_memcpy_s(void *dest, MSVCRT_size_t numberOfElements, const void
     return 0;
 }
 
+#if _MSVCR_VER>=100
 /*********************************************************************
  *              wmemcpy_s (MSVCR100.@)
  */
@@ -813,6 +828,7 @@ int CDECL wmemcpy_s(MSVCRT_wchar_t *dest, MSVCRT_size_t numberOfElements,
     memcpy(dest, src, sizeof(MSVCRT_wchar_t)*count);
     return 0;
 }
+#endif
 
 /*********************************************************************
  *		strncpy_s (MSVCRT.@)




More information about the wine-cvs mailing list