On 02/08/16 21:28, Anton Khirnov wrote:
> In such a case behave as if the buffer was not reallocatable -- allocate a
> new one and copy the data (preserving just the part described by the
> reference passed to av_buffer_realloc).
> 
> CC: [email protected]
> Reported-By: wm4 <[email protected]>
> ---
>  libavutil/buffer.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/libavutil/buffer.c b/libavutil/buffer.c
> index 6681002..49a1f2d 100644
> --- a/libavutil/buffer.c
> +++ b/libavutil/buffer.c
> @@ -170,7 +170,7 @@ int av_buffer_realloc(AVBufferRef **pbuf, int size)
>          return 0;
>  
>      if (!(buf->buffer->flags & BUFFER_FLAG_REALLOCATABLE) ||
> -        !av_buffer_is_writable(buf)) {
> +        !av_buffer_is_writable(buf) || buf->data != buf->buffer->data) {
>          /* cannot realloc, allocate a new reallocable buffer and copy data */
>          AVBufferRef *new = NULL;
>  
> 

Ok.
_______________________________________________
libav-devel mailing list
[email protected]
https://lists.libav.org/mailman/listinfo/libav-devel

Reply via email to