mirror of
https://github.com/FFmpeg/FFmpeg.git
synced 2025-01-03 05:10:03 +02:00
avformat/tee: Constify AVDictionaryEntry* pointee where possible
This is in preparation for using av_dict_iterate(). Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
This commit is contained in:
parent
583c3d45fa
commit
26f3e79114
@ -158,7 +158,7 @@ static int open_slave(AVFormatContext *avf, char *slave, TeeSlave *tee_slave)
|
||||
{
|
||||
int i, ret;
|
||||
AVDictionary *options = NULL, *bsf_options = NULL;
|
||||
AVDictionaryEntry *entry;
|
||||
const AVDictionaryEntry *entry;
|
||||
char *filename;
|
||||
char *format = NULL, *select = NULL, *on_fail = NULL;
|
||||
char *use_fifo = NULL, *fifo_options_str = NULL;
|
||||
@ -172,15 +172,16 @@ static int open_slave(AVFormatContext *avf, char *slave, TeeSlave *tee_slave)
|
||||
return ret;
|
||||
|
||||
#define CONSUME_OPTION(option, field, action) do { \
|
||||
if ((entry = av_dict_get(options, option, NULL, 0))) { \
|
||||
field = entry->value; \
|
||||
AVDictionaryEntry *en = av_dict_get(options, option, NULL, 0); \
|
||||
if (en) { \
|
||||
field = en->value; \
|
||||
{ action } \
|
||||
av_dict_set(&options, option, NULL, 0); \
|
||||
} \
|
||||
} while (0)
|
||||
#define STEAL_OPTION(option, field) \
|
||||
CONSUME_OPTION(option, field, \
|
||||
entry->value = NULL; /* prevent it from being freed */)
|
||||
en->value = NULL; /* prevent it from being freed */)
|
||||
#define PROCESS_OPTION(option, field, function, on_error) \
|
||||
CONSUME_OPTION(option, field, if ((ret = function) < 0) { { on_error } goto end; })
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user