Browse Source

dict: Change return type of av_dict_copy()

av_dict_set() could return an error, so forward it appropriately.

Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
tags/n3.0
Vittorio Giovara 10 years ago
parent
commit
11c5f438ff
4 changed files with 16 additions and 5 deletions
  1. +4
    -0
      doc/APIchanges
  2. +8
    -3
      libavutil/dict.c
  3. +3
    -1
      libavutil/dict.h
  4. +1
    -1
      libavutil/version.h

+ 4
- 0
doc/APIchanges View File

@@ -13,6 +13,10 @@ libavutil: 2015-08-28

API changes, most recent first:

2015-xx-xx - xxxxxxx - lavu 55.2.0 - dict.h
Change return type of av_dict_copy() from void to int, so that a proper
error code can be reported.

2015-xx-xx - xxxxxxx - lavc 57.0.0 - avcodec.h
Change type of AVPacket.duration from int to int64_t.



+ 8
- 3
libavutil/dict.c View File

@@ -186,10 +186,15 @@ void av_dict_free(AVDictionary **pm)
av_freep(pm);
}

void av_dict_copy(AVDictionary **dst, const AVDictionary *src, int flags)
int av_dict_copy(AVDictionary **dst, const AVDictionary *src, int flags)
{
AVDictionaryEntry *t = NULL;

while ((t = av_dict_get(src, "", t, AV_DICT_IGNORE_SUFFIX)))
av_dict_set(dst, t->key, t->value, flags);
while ((t = av_dict_get(src, "", t, AV_DICT_IGNORE_SUFFIX))) {
int ret = av_dict_set(dst, t->key, t->value, flags);
if (ret < 0)
return ret;
}

return 0;
}

+ 3
- 1
libavutil/dict.h View File

@@ -130,8 +130,10 @@ int av_dict_parse_string(AVDictionary **pm, const char *str,
* @param src pointer to source AVDictionary struct
* @param flags flags to use when setting entries in *dst
* @note metadata is read using the AV_DICT_IGNORE_SUFFIX flag
* @return 0 on success, negative AVERROR code on failure. If dst was allocated
* by this function, callers should free the associated memory.
*/
void av_dict_copy(AVDictionary **dst, const AVDictionary *src, int flags);
int av_dict_copy(AVDictionary **dst, const AVDictionary *src, int flags);

/**
* Free all the memory allocated for an AVDictionary struct


+ 1
- 1
libavutil/version.h View File

@@ -54,7 +54,7 @@
*/

#define LIBAVUTIL_VERSION_MAJOR 55
#define LIBAVUTIL_VERSION_MINOR 1
#define LIBAVUTIL_VERSION_MINOR 2
#define LIBAVUTIL_VERSION_MICRO 0

#define LIBAVUTIL_VERSION_INT AV_VERSION_INT(LIBAVUTIL_VERSION_MAJOR, \


Loading…
Cancel
Save