mirror of https://git.ffmpeg.org/ffmpeg.git
Merge commit '8ddc32629a6d6be77256694c9e322dde134609f3'
* commit '8ddc32629a6d6be77256694c9e322dde134609f3': mem: add av_strndup() for duplicating substrings Conflicts: libavutil/mem.c libavutil/mem.h libavutil/version.h Merged-by: Michael Niedermayer <michaelni@gmx.at>
This commit is contained in:
commit
c8571c61ec
|
@ -15,6 +15,9 @@ libavutil: 2014-08-09
|
|||
|
||||
API changes, most recent first:
|
||||
|
||||
2014-08-xx - xxxxxxx - lavu 54.03.0 - mem.h
|
||||
Add av_strndup().
|
||||
|
||||
2014-xx-xx - xxxxxxx - lavu 54.02.0 - opt.h
|
||||
Add av_opt_get_dict_val/set_dict_val with AV_OPT_TYPE_DICT to support
|
||||
dictionary types being set as options.
|
||||
|
|
|
@ -267,6 +267,26 @@ char *av_strdup(const char *s)
|
|||
return ptr;
|
||||
}
|
||||
|
||||
char *av_strndup(const char *s, size_t len)
|
||||
{
|
||||
char *ret = NULL, *end;
|
||||
|
||||
if (!s)
|
||||
return NULL;
|
||||
|
||||
end = memchr(s, 0, len);
|
||||
if (end)
|
||||
len = end - s;
|
||||
|
||||
ret = av_realloc(NULL, len + 1);
|
||||
if (!ret)
|
||||
return NULL;
|
||||
|
||||
memcpy(ret, s, len);
|
||||
ret[len] = 0;
|
||||
return ret;
|
||||
}
|
||||
|
||||
void *av_memdup(const void *p, size_t size)
|
||||
{
|
||||
void *ptr = NULL;
|
||||
|
|
|
@ -240,6 +240,16 @@ av_alloc_size(1, 2) static inline void *av_mallocz_array(size_t nmemb, size_t si
|
|||
*/
|
||||
char *av_strdup(const char *s) av_malloc_attrib;
|
||||
|
||||
/**
|
||||
* Duplicate a substring of the string s.
|
||||
* @param s string to be duplicated
|
||||
* @param len the maximum length of the resulting string (not counting the
|
||||
* terminating byte).
|
||||
* @return Pointer to a newly-allocated string containing a
|
||||
* copy of s or NULL if the string cannot be allocated.
|
||||
*/
|
||||
char *av_strndup(const char *s, size_t len) av_malloc_attrib;
|
||||
|
||||
/**
|
||||
* Duplicate the buffer p.
|
||||
* @param p buffer to be duplicated
|
||||
|
|
|
@ -56,7 +56,7 @@
|
|||
*/
|
||||
|
||||
#define LIBAVUTIL_VERSION_MAJOR 54
|
||||
#define LIBAVUTIL_VERSION_MINOR 2
|
||||
#define LIBAVUTIL_VERSION_MINOR 3
|
||||
#define LIBAVUTIL_VERSION_MICRO 100
|
||||
|
||||
#define LIBAVUTIL_VERSION_INT AV_VERSION_INT(LIBAVUTIL_VERSION_MAJOR, \
|
||||
|
|
Loading…
Reference in New Issue