diff options
author | SVN Migration <svn@php.net> | 2003-02-27 17:43:39 +0000 |
---|---|---|
committer | SVN Migration <svn@php.net> | 2003-02-27 17:43:39 +0000 |
commit | 078bcec0997ad0e07b720c43cc9e6d0e046a75ab (patch) | |
tree | 36cb0f6be2ef078fe3374de8c087b93ecf82f812 /ext/mysql/libmysql/my_once.c | |
parent | fd61f69077f6156ca71dde60ecfd9ed9765a02db (diff) | |
download | php-git-PHP-5.tar.gz |
This commit was manufactured by cvs2svn to create branch 'PHP_5'.PHP-5
Diffstat (limited to 'ext/mysql/libmysql/my_once.c')
-rw-r--r-- | ext/mysql/libmysql/my_once.c | 74 |
1 files changed, 0 insertions, 74 deletions
diff --git a/ext/mysql/libmysql/my_once.c b/ext/mysql/libmysql/my_once.c deleted file mode 100644 index 99aad4d4e7..0000000000 --- a/ext/mysql/libmysql/my_once.c +++ /dev/null @@ -1,74 +0,0 @@ -/* Copyright Abandoned 1996 TCX DataKonsult AB & Monty Program KB & Detron HB -This file is public domain and comes with NO WARRANTY of any kind */ - -/* Not MT-SAFE */ - -#ifdef SAFEMALLOC /* We don't need SAFEMALLOC here */ -#undef SAFEMALLOC -#endif - -#include "mysys_priv.h" -#include "my_static.h" -#include "mysys_err.h" - - /* alloc for things we don't nead to free */ - /* No DBUG_ENTER... here to get smaller dbug-startup */ - -gptr my_once_alloc(unsigned int Size, myf MyFlags) -{ - uint get_size,max_left; - gptr point; - reg1 USED_MEM *next; - reg2 USED_MEM **prev; - - Size= ALIGN_SIZE(Size); - prev= &my_once_root_block; - max_left=0; - for (next=my_once_root_block ; next && next->left < Size ; next= next->next) - { - if (next->left > max_left) - max_left=next->left; - prev= &next->next; - } - if (! next) - { /* Time to alloc new block */ - get_size= Size+ALIGN_SIZE(sizeof(USED_MEM)); - if (max_left*4 < my_once_extra && get_size < my_once_extra) - get_size=my_once_extra; /* Normal alloc */ - - if ((next = (USED_MEM*) malloc(get_size)) == 0) - { - my_errno=errno; - if (MyFlags & (MY_FAE+MY_WME)) - my_error(EE_OUTOFMEMORY, MYF(ME_BELL+ME_WAITTANG),get_size); - return((gptr) 0); - } - DBUG_PRINT("test",("my_once_malloc %u byte malloced",get_size)); - next->next= 0; - next->size= get_size; - next->left= get_size-ALIGN_SIZE(sizeof(USED_MEM)); - *prev=next; - } - point= (gptr) ((char*) next+ (next->size-next->left)); - next->left-= Size; - - return(point); -} /* my_once_alloc */ - - - /* deallocate everything used by my_once_alloc */ - -void my_once_free(void) -{ - reg1 USED_MEM *next,*old; - DBUG_ENTER("my_once_free"); - - for (next=my_once_root_block ; next ; ) - { - old=next; next= next->next ; - free((gptr) old); - } - my_once_root_block=0; - - DBUG_VOID_RETURN; -} /* my_once_free */ |