mirror of
https://github.com/FFmpeg/FFmpeg.git
synced 2024-11-21 10:55:51 +02:00
better av_freep()
Originally committed as revision 541 to svn://svn.ffmpeg.org/ffmpeg/trunk
This commit is contained in:
parent
51a4966370
commit
4d7a0a0593
@ -57,14 +57,6 @@ typedef INT32 int32_t;
|
||||
|
||||
#define inline __inline
|
||||
|
||||
/*
|
||||
Disable warning messages:
|
||||
warning C4244: '=' : conversion from 'double' to 'float', possible loss of data
|
||||
warning C4305: 'argument' : truncation from 'const double' to 'float'
|
||||
*/
|
||||
#pragma warning( disable : 4244 )
|
||||
#pragma warning( disable : 4305 )
|
||||
|
||||
#else
|
||||
#define INT64_C(c) (c ## LL)
|
||||
#define UINT64_C(c) (c ## ULL)
|
||||
@ -901,7 +893,8 @@ static inline int clip(int a, int amin, int amax)
|
||||
void *av_malloc(int size);
|
||||
void *av_mallocz(int size);
|
||||
void av_free(void *ptr);
|
||||
#define av_freep(p) do { av_free(*p); *p = NULL; } while (0)
|
||||
void __av_freep(void **ptr);
|
||||
#define av_freep(p) __av_freep((void **)(p))
|
||||
|
||||
/* math */
|
||||
int ff_gcd(int a, int b);
|
||||
|
@ -65,6 +65,13 @@ void av_free(void *ptr)
|
||||
free(ptr);
|
||||
}
|
||||
|
||||
/* cannot call it directly because of 'void **' casting is not automatic */
|
||||
void __av_freep(void **ptr)
|
||||
{
|
||||
av_free(*ptr);
|
||||
*ptr = NULL;
|
||||
}
|
||||
|
||||
/* encoder management */
|
||||
AVCodec *first_avcodec;
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user