On Sun, 24 Jan 2016 13:43:40 +0100 Clément Bœsch <u...@pkh.me> wrote:
> On Sun, Jan 24, 2016 at 12:47:59PM +0100, Nicolas George wrote: > > Le quintidi 5 pluviôse, an CCXXIV, Michael Niedermayer a écrit : > > > --- a/libavformat/avio.h > > > +++ b/libavformat/avio.h > > > @@ -595,6 +595,10 @@ int avio_open(AVIOContext **s, const char *url, int > > > flags); > > > int avio_open2(AVIOContext **s, const char *url, int flags, > > > const AVIOInterruptCB *int_cb, AVDictionary **options); > > > > > > +int avio_open_whitelist(AVIOContext **s, const char *url, int flags, > > > + const AVIOInterruptCB *int_cb, AVDictionary > > > **options, > > > + const char *whitelist); > > > + > > > > Please no! Adding new arguments to a function that already has too many and > > using a string as a structured data structure: two things that are already > > present way too much in the code base and should be avoided for future > > design. > > > > I suggest to put it in a structure, maybe AVIOSettings (or directly > > AVGlobalSettings), as an array of protocols, and with int_cb while we are at > > it: > > > > typedef struct AVIOSettings { > > AVIOInterruptCB *int_cb; > > struct URLProtocol **protocols; > > unsigned nb_protocols; > > } > > > > Then, if someone really like strings for user interface, they can do: > > > > int avio_settings_set_protocols_whitelist_string(AVIOSettings *settings, > > const char *whitelist); > > > > Why not an entry in the AVDictionary options? > Can AVDictionary store pointers? _______________________________________________ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org http://ffmpeg.org/mailman/listinfo/ffmpeg-devel