ucrtbase: Add __std_type_info_destroy_list implementation.

Signed-off-by: Piotr Caban <piotr@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
This commit is contained in:
Piotr Caban 2016-08-04 16:28:55 +02:00 committed by Alexandre Julliard
parent 2487168b75
commit 4ba09e11a8
4 changed files with 19 additions and 3 deletions

View File

@ -45,7 +45,7 @@
@ cdecl __std_exception_copy(ptr ptr) ucrtbase.__std_exception_copy @ cdecl __std_exception_copy(ptr ptr) ucrtbase.__std_exception_copy
@ cdecl __std_exception_destroy(ptr) ucrtbase.__std_exception_destroy @ cdecl __std_exception_destroy(ptr) ucrtbase.__std_exception_destroy
@ cdecl __std_type_info_compare(ptr ptr) ucrtbase.__std_type_info_compare @ cdecl __std_type_info_compare(ptr ptr) ucrtbase.__std_type_info_compare
@ stub __std_type_info_destroy_list @ cdecl __std_type_info_destroy_list(ptr) ucrtbase.__std_type_info_destroy_list
@ stub __std_type_info_hash @ stub __std_type_info_hash
@ cdecl __std_type_info_name(ptr ptr) ucrtbase.__std_type_info_name @ cdecl __std_type_info_name(ptr ptr) ucrtbase.__std_type_info_name
@ cdecl __unDName(ptr str long ptr ptr long) ucrtbase.__unDName @ cdecl __unDName(ptr str long ptr ptr long) ucrtbase.__unDName

View File

@ -1572,4 +1572,20 @@ const char* CDECL MSVCRT_type_info_name_list(type_info140 *ti, SLIST_HEADER *hea
TRACE("(%p) returning %s\n", ti, ti->name); TRACE("(%p) returning %s\n", ti, ti->name);
return ti->name; return ti->name;
} }
/******************************************************************
* __std_type_info_destroy_list (UCRTBASE.@)
*/
void CDECL MSVCRT_type_info_destroy_list(SLIST_HEADER *header)
{
SLIST_ENTRY *cur, *next;
TRACE("(%p)\n", header);
for(cur = InterlockedFlushSList(header); cur; cur = next)
{
next = cur->Next;
MSVCRT_free(cur);
}
}
#endif #endif

View File

@ -143,7 +143,7 @@
@ cdecl __std_exception_copy(ptr ptr) MSVCRT___std_exception_copy @ cdecl __std_exception_copy(ptr ptr) MSVCRT___std_exception_copy
@ cdecl __std_exception_destroy(ptr) MSVCRT___std_exception_destroy @ cdecl __std_exception_destroy(ptr) MSVCRT___std_exception_destroy
@ cdecl __std_type_info_compare(ptr ptr) MSVCRT_type_info_compare @ cdecl __std_type_info_compare(ptr ptr) MSVCRT_type_info_compare
@ stub __std_type_info_destroy_list @ cdecl __std_type_info_destroy_list(ptr) MSVCRT_type_info_destroy_list
@ stub __std_type_info_hash @ stub __std_type_info_hash
@ cdecl __std_type_info_name(ptr ptr) MSVCRT_type_info_name_list @ cdecl __std_type_info_name(ptr ptr) MSVCRT_type_info_name_list
@ cdecl __stdio_common_vfprintf(int64 ptr str ptr ptr) MSVCRT__stdio_common_vfprintf @ cdecl __stdio_common_vfprintf(int64 ptr str ptr ptr) MSVCRT__stdio_common_vfprintf

View File

@ -40,7 +40,7 @@
@ cdecl __std_exception_destroy(ptr) ucrtbase.__std_exception_destroy @ cdecl __std_exception_destroy(ptr) ucrtbase.__std_exception_destroy
@ stub __std_terminate @ stub __std_terminate
@ cdecl __std_type_info_compare(ptr ptr) ucrtbase.__std_type_info_compare @ cdecl __std_type_info_compare(ptr ptr) ucrtbase.__std_type_info_compare
@ stub __std_type_info_destroy_list @ cdecl __std_type_info_destroy_list(ptr) ucrtbase.__std_type_info_destroy_list
@ stub __std_type_info_hash @ stub __std_type_info_hash
@ cdecl __std_type_info_name(ptr ptr) ucrtbase.__std_type_info_name @ cdecl __std_type_info_name(ptr ptr) ucrtbase.__std_type_info_name
@ cdecl __telemetry_main_invoke_trigger(ptr) @ cdecl __telemetry_main_invoke_trigger(ptr)