avutil/mem: add av_memdup()
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
This commit is contained in:
parent
663794f63d
commit
89b5039ff2
@ -229,6 +229,17 @@ char *av_strdup(const char *s)
|
|||||||
return ptr;
|
return ptr;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void *av_memdup(const void *p, size_t size)
|
||||||
|
{
|
||||||
|
void *ptr = NULL;
|
||||||
|
if (p) {
|
||||||
|
ptr = av_malloc(size);
|
||||||
|
if (ptr)
|
||||||
|
memcpy(ptr, p, size);
|
||||||
|
}
|
||||||
|
return ptr;
|
||||||
|
}
|
||||||
|
|
||||||
void av_dynarray_add(void *tab_ptr, int *nb_ptr, void *elem)
|
void av_dynarray_add(void *tab_ptr, int *nb_ptr, void *elem)
|
||||||
{
|
{
|
||||||
/* see similar ffmpeg.c:grow_array() */
|
/* see similar ffmpeg.c:grow_array() */
|
||||||
|
@ -179,6 +179,14 @@ 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;
|
char *av_strdup(const char *s) av_malloc_attrib;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Duplicate the buffer p.
|
||||||
|
* @param p buffer to be duplicated
|
||||||
|
* @return Pointer to a newly allocated buffer containing a
|
||||||
|
* copy of p or NULL if the buffer cannot be allocated.
|
||||||
|
*/
|
||||||
|
void *av_memdup(const void *p, size_t size);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Free a memory block which has been allocated with av_malloc(z)() or
|
* Free a memory block which has been allocated with av_malloc(z)() or
|
||||||
* av_realloc() and set the pointer pointing to it to NULL.
|
* av_realloc() and set the pointer pointing to it to NULL.
|
||||||
|
Loading…
x
Reference in New Issue
Block a user