1
0
mirror of https://github.com/FFmpeg/FFmpeg.git synced 2024-11-21 10:55:51 +02:00

Change the argument of memory allocation functions from unsigned int to size_t

with the next major bump in libavcodec.

Originally committed as revision 25872 to svn://svn.ffmpeg.org/ffmpeg/trunk
This commit is contained in:
Michael Niedermayer 2010-12-04 04:00:21 +00:00
parent b47541c7a3
commit 372c3f82b7
2 changed files with 19 additions and 10 deletions

View File

@ -83,6 +83,12 @@
#define FF_API_OLD_AUDIOCONVERT (LIBAVCODEC_VERSION_MAJOR < 53)
#endif
#if LIBAVCODEC_VERSION_MAJOR < 53
# define FF_INTERNALC_MEM_TYPE unsigned int
#else
# define FF_INTERNALC_MEM_TYPE size_t
#endif
#define AV_NOPTS_VALUE INT64_C(0x8000000000000000)
#define AV_TIME_BASE 1000000
#define AV_TIME_BASE_Q (AVRational){1, AV_TIME_BASE}
@ -4007,7 +4013,7 @@ AVBitStreamFilter *av_bitstream_filter_next(AVBitStreamFilter *f);
*
* @see av_realloc
*/
void *av_fast_realloc(void *ptr, unsigned int *size, unsigned int min_size);
void *av_fast_realloc(void *ptr, unsigned int *size, FF_INTERNALC_MEM_TYPE min_size);
/**
* Allocate a buffer, reusing the given one if large enough.
@ -4021,7 +4027,7 @@ void *av_fast_realloc(void *ptr, unsigned int *size, unsigned int min_size);
* @param min_size minimum size of *ptr buffer after returning, *ptr will be NULL and
* *size 0 if an error occurred.
*/
void av_fast_malloc(void *ptr, unsigned int *size, unsigned int min_size);
void av_fast_malloc(void *ptr, unsigned int *size, FF_INTERNALC_MEM_TYPE min_size);
#if LIBAVCODEC_VERSION_MAJOR < 53
/**

View File

@ -48,29 +48,32 @@ static int volatile entangled_thread_counter=0;
int (*ff_lockmgr_cb)(void **mutex, enum AVLockOp op);
static void *codec_mutex;
void *av_fast_realloc(void *ptr, unsigned int *size, unsigned int min_size)
void *av_fast_realloc(void *ptr, unsigned int *size, FF_INTERNALC_MEM_TYPE min_size)
{
if(min_size < *size)
return ptr;
*size= FFMAX(17*min_size/16 + 32, min_size);
min_size= FFMAX(17*min_size/16 + 32, min_size);
ptr= av_realloc(ptr, *size);
ptr= av_realloc(ptr, min_size);
if(!ptr) //we could set this to the unmodified min_size but this is safer if the user lost the ptr and uses NULL now
*size= 0;
min_size= 0;
*size= min_size;
return ptr;
}
void av_fast_malloc(void *ptr, unsigned int *size, unsigned int min_size)
void av_fast_malloc(void *ptr, unsigned int *size, FF_INTERNALC_MEM_TYPE min_size)
{
void **p = ptr;
if (min_size < *size)
return;
*size= FFMAX(17*min_size/16 + 32, min_size);
min_size= FFMAX(17*min_size/16 + 32, min_size);
av_free(*p);
*p = av_malloc(*size);
if (!*p) *size = 0;
*p = av_malloc(min_size);
if (!*p) min_size = 0;
*size= min_size;
}
/* encoder management */