20#include FT_INTERNAL_DEBUG_H
21#include FT_INTERNAL_MEMORY_H
22#include FT_INTERNAL_OBJECTS_H
33#define FT_COMPONENT trace_memory
104 if ( !
error && new_count > cur_count )
106 ( new_count - cur_count ) * item_size );
128 if ( cur_count < 0 || new_count < 0 || item_size < 0 )
133 else if ( new_count == 0 || item_size == 0 )
138 else if ( new_count >
FT_INT_MAX / item_size )
142 else if ( cur_count == 0 )
153 FT_Long cur_size = cur_count * item_size;
214 while (
size > 1 && *
src != 0 )
239#define FT_COMPONENT trace_list
390 return FT_THROW( Invalid_Argument );
void destroy(_Tp *__pointer)
void user(int argc, const char *argv[])
#define FT_ASSERT(condition)
FT_Error(* FT_List_Iterator)(FT_ListNode node, void *user)
void(* FT_List_Destructor)(FT_Memory memory, void *data, void *user)
#define FT_MEM_ZERO(dest, count)
typedefFT_BEGIN_HEADER struct FT_MemoryRec_ * FT_Memory
ft_mem_qalloc(FT_Memory memory, FT_Long size, FT_Error *p_error)
ft_mem_dup(FT_Memory memory, const void *address, FT_ULong size, FT_Error *p_error)
ft_mem_strdup(FT_Memory memory, const char *str, FT_Error *p_error)
FT_List_Up(FT_List list, FT_ListNode node)
ft_mem_alloc(FT_Memory memory, FT_Long size, FT_Error *p_error)
FT_List_Insert(FT_List list, FT_ListNode node)
FT_List_Find(FT_List list, void *data)
ft_mem_free(FT_Memory memory, const void *P)
ft_mem_strcpyn(char *dst, const char *src, FT_ULong size)
FT_List_Finalize(FT_List list, FT_List_Destructor destroy, FT_Memory memory, void *user)
ft_mem_realloc(FT_Memory memory, FT_Long item_size, FT_Long cur_count, FT_Long new_count, void *block, FT_Error *p_error)
FT_List_Remove(FT_List list, FT_ListNode node)
FT_List_Iterate(FT_List list, FT_List_Iterator iterator, void *user)
ft_mem_qrealloc(FT_Memory memory, FT_Long item_size, FT_Long cur_count, FT_Long new_count, void *block, FT_Error *p_error)
FT_List_Add(FT_List list, FT_ListNode node)
GLint GLenum GLsizei GLsizei GLsizei GLint GLsizei const GLvoid * data
static char memory[1024 *256]
static unsigned __int64 next
__inline int before(__u32 seq1, __u32 seq2)
__inline int after(__u32 seq1, __u32 seq2)
static unsigned int block