memalign() is not guranteed to be compatible with free() or realloc() and for platforms in this category we have --enable-memalign-hack (which should be enabled automatically if such system is detected) Trying to somehow half support systems that can free() memalign memory but not reallocate it seems not worth the amount of work needed to keep 2 then incompatible allocation systems and ensure their seperation. That is unless this would affect a major platform on which we want to avoid the memalign hack code
Signed-off-by: Michael Niedermayer <michae...@gmx.at> --- libavutil/mem.h | 24 ------------------------ 1 file changed, 24 deletions(-) diff --git a/libavutil/mem.h b/libavutil/mem.h index 2a1e36d..761d3c6 100644 --- a/libavutil/mem.h +++ b/libavutil/mem.h @@ -107,12 +107,6 @@ av_alloc_size(1, 2) static inline void *av_malloc_array(size_t nmemb, size_t siz * reallocated. * @return Pointer to a newly-reallocated block or NULL if the block * cannot be reallocated or the function is used to free the memory block. - * @warning Pointers originating from the av_malloc() family of functions must - * not be passed to av_realloc(). The former can be implemented using - * memalign() (or other functions), and there is no guarantee that - * pointers from such functions can be passed to realloc() at all. - * The situation is undefined according to POSIX and may crash with - * some libc implementations. * @see av_fast_realloc() */ void *av_realloc(void *ptr, size_t size) av_alloc_size(2); @@ -137,12 +131,6 @@ void *av_realloc_f(void *ptr, size_t nelem, size_t elsize); * @param size Size in bytes for the memory block to be allocated or * reallocated * @return Zero on success, an AVERROR error code on failure. - * @warning Pointers originating from the av_malloc() family of functions must - * not be passed to av_reallocp(). The former can be implemented using - * memalign() (or other functions), and there is no guarantee that - * pointers from such functions can be passed to realloc() at all. - * The situation is undefined according to POSIX and may crash with - * some libc implementations. */ int av_reallocp(void *ptr, size_t size); @@ -156,12 +144,6 @@ int av_reallocp(void *ptr, size_t size); * @param size Size of the single element * @return Pointer to a newly-reallocated block or NULL if the block * cannot be reallocated or the function is used to free the memory block. - * @warning Pointers originating from the av_malloc() family of functions must - * not be passed to av_realloc(). The former can be implemented using - * memalign() (or other functions), and there is no guarantee that - * pointers from such functions can be passed to realloc() at all. - * The situation is undefined according to POSIX and may crash with - * some libc implementations. */ av_alloc_size(2, 3) void *av_realloc_array(void *ptr, size_t nmemb, size_t size); @@ -175,12 +157,6 @@ av_alloc_size(2, 3) void *av_realloc_array(void *ptr, size_t nmemb, size_t size) * @param nmemb Number of elements * @param size Size of the single element * @return Zero on success, an AVERROR error code on failure. - * @warning Pointers originating from the av_malloc() family of functions must - * not be passed to av_realloc(). The former can be implemented using - * memalign() (or other functions), and there is no guarantee that - * pointers from such functions can be passed to realloc() at all. - * The situation is undefined according to POSIX and may crash with - * some libc implementations. */ av_alloc_size(2, 3) int av_reallocp_array(void *ptr, size_t nmemb, size_t size); -- 1.7.9.5 _______________________________________________ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org http://ffmpeg.org/mailman/listinfo/ffmpeg-devel