[FFmpeg-devel] [PATCH] Const src in av_packet_clone declaration

Andriy Lysnevych andriy.lysnevych at gmail.com
Fri May 13 14:24:50 CEST 2016


> Anyway, example how this change can break:
>
> typedef struct AVPacket AVPacket;
>
> AVPacket *av_packet_clone_old(AVPacket *src);
> AVPacket *av_packet_clone_new(const AVPacket *src);
>
> AVPacket *(*unsuspecting_api_user)(AVPacket *src);
>
> void set(void)
> {
>     unsuspecting_api_user = av_packet_clone_old;
>
>     unsuspecting_api_user = av_packet_clone_new;
> }
>

You are right. But is this the only example how this change breakes
compatibility? I don't think many (if any) C++ projects use
av_packet_clone this way. Also this incompatibility is very easy to
fix in any project.


More information about the ffmpeg-devel mailing list