Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
F
ffmpeg
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
Stefan Westerfeld
ffmpeg
Commits
14040a1d
Commit
14040a1d
authored
Mar 06, 2021
by
James Almer
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
avutil/buffer: change public function and struct size parameter types to size_t
Signed-off-by:
James Almer
<
jamrial@gmail.com
>
parent
3e3c408e
Changes
6
Show whitespace changes
Inline
Side-by-side
Showing
6 changed files
with
58 additions
and
12 deletions
+58
-12
APIchanges
doc/APIchanges
+4
-0
buffer.c
libavutil/buffer.c
+7
-7
buffer.h
libavutil/buffer.h
+32
-0
buffer_internal.h
libavutil/buffer_internal.h
+4
-4
internal.h
libavutil/internal.h
+7
-0
version.h
libavutil/version.h
+4
-1
No files found.
doc/APIchanges
View file @
14040a1d
...
...
@@ -15,6 +15,10 @@ libavutil: 2017-10-21
API changes, most recent first:
2021-03-10 - xxxxxxxxxx - lavu 56.68.100 - buffer.h
Change AVBufferRef related function and struct size parameter and fields
type to size_t at next major bump.
2021-03-04 - xxxxxxxxxx - lavc 58.128.101 - avcodec.h
Enable err_recognition to be set for encoders.
...
...
libavutil/buffer.c
View file @
14040a1d
...
...
@@ -26,7 +26,7 @@
#include "mem.h"
#include "thread.h"
AVBufferRef
*
av_buffer_create
(
uint8_t
*
data
,
in
t
size
,
AVBufferRef
*
av_buffer_create
(
uint8_t
*
data
,
buffer_size_
t
size
,
void
(
*
free
)(
void
*
opaque
,
uint8_t
*
data
),
void
*
opaque
,
int
flags
)
{
...
...
@@ -64,7 +64,7 @@ void av_buffer_default_free(void *opaque, uint8_t *data)
av_free
(
data
);
}
AVBufferRef
*
av_buffer_alloc
(
in
t
size
)
AVBufferRef
*
av_buffer_alloc
(
buffer_size_
t
size
)
{
AVBufferRef
*
ret
=
NULL
;
uint8_t
*
data
=
NULL
;
...
...
@@ -80,7 +80,7 @@ AVBufferRef *av_buffer_alloc(int size)
return
ret
;
}
AVBufferRef
*
av_buffer_allocz
(
in
t
size
)
AVBufferRef
*
av_buffer_allocz
(
buffer_size_
t
size
)
{
AVBufferRef
*
ret
=
av_buffer_alloc
(
size
);
if
(
!
ret
)
...
...
@@ -166,7 +166,7 @@ int av_buffer_make_writable(AVBufferRef **pbuf)
return
0
;
}
int
av_buffer_realloc
(
AVBufferRef
**
pbuf
,
in
t
size
)
int
av_buffer_realloc
(
AVBufferRef
**
pbuf
,
buffer_size_
t
size
)
{
AVBufferRef
*
buf
=
*
pbuf
;
uint8_t
*
tmp
;
...
...
@@ -242,8 +242,8 @@ int av_buffer_replace(AVBufferRef **pdst, AVBufferRef *src)
return
0
;
}
AVBufferPool
*
av_buffer_pool_init2
(
in
t
size
,
void
*
opaque
,
AVBufferRef
*
(
*
alloc
)(
void
*
opaque
,
in
t
size
),
AVBufferPool
*
av_buffer_pool_init2
(
buffer_size_
t
size
,
void
*
opaque
,
AVBufferRef
*
(
*
alloc
)(
void
*
opaque
,
buffer_size_
t
size
),
void
(
*
pool_free
)(
void
*
opaque
))
{
AVBufferPool
*
pool
=
av_mallocz
(
sizeof
(
*
pool
));
...
...
@@ -263,7 +263,7 @@ AVBufferPool *av_buffer_pool_init2(int size, void *opaque,
return
pool
;
}
AVBufferPool
*
av_buffer_pool_init
(
int
size
,
AVBufferRef
*
(
*
alloc
)(
in
t
size
))
AVBufferPool
*
av_buffer_pool_init
(
buffer_size_t
size
,
AVBufferRef
*
(
*
alloc
)(
buffer_size_
t
size
))
{
AVBufferPool
*
pool
=
av_mallocz
(
sizeof
(
*
pool
));
if
(
!
pool
)
...
...
libavutil/buffer.h
View file @
14040a1d
...
...
@@ -25,8 +25,11 @@
#ifndef AVUTIL_BUFFER_H
#define AVUTIL_BUFFER_H
#include <stddef.h>
#include <stdint.h>
#include "version.h"
/**
* @defgroup lavu_buffer AVBuffer
* @ingroup lavu_data
...
...
@@ -90,7 +93,11 @@ typedef struct AVBufferRef {
/**
* Size of data in bytes.
*/
#if FF_API_BUFFER_SIZE_T
int
size
;
#else
size_t
size
;
#endif
}
AVBufferRef
;
/**
...
...
@@ -98,13 +105,21 @@ typedef struct AVBufferRef {
*
* @return an AVBufferRef of given size or NULL when out of memory
*/
#if FF_API_BUFFER_SIZE_T
AVBufferRef
*
av_buffer_alloc
(
int
size
);
#else
AVBufferRef
*
av_buffer_alloc
(
size_t
size
);
#endif
/**
* Same as av_buffer_alloc(), except the returned buffer will be initialized
* to zero.
*/
#if FF_API_BUFFER_SIZE_T
AVBufferRef
*
av_buffer_allocz
(
int
size
);
#else
AVBufferRef
*
av_buffer_allocz
(
size_t
size
);
#endif
/**
* Always treat the buffer as read-only, even when it has only one
...
...
@@ -127,7 +142,11 @@ AVBufferRef *av_buffer_allocz(int size);
*
* @return an AVBufferRef referring to data on success, NULL on failure.
*/
#if FF_API_BUFFER_SIZE_T
AVBufferRef
*
av_buffer_create
(
uint8_t
*
data
,
int
size
,
#else
AVBufferRef
*
av_buffer_create
(
uint8_t
*
data
,
size_t
size
,
#endif
void
(
*
free
)(
void
*
opaque
,
uint8_t
*
data
),
void
*
opaque
,
int
flags
);
...
...
@@ -195,7 +214,11 @@ int av_buffer_make_writable(AVBufferRef **buf);
* reference to it (i.e. the one passed to this function). In all other cases
* a new buffer is allocated and the data is copied.
*/
#if FF_API_BUFFER_SIZE_T
int
av_buffer_realloc
(
AVBufferRef
**
buf
,
int
size
);
#else
int
av_buffer_realloc
(
AVBufferRef
**
buf
,
size_t
size
);
#endif
/**
* Ensure dst refers to the same data as src.
...
...
@@ -262,7 +285,11 @@ typedef struct AVBufferPool AVBufferPool;
* (av_buffer_alloc()).
* @return newly created buffer pool on success, NULL on error.
*/
#if FF_API_BUFFER_SIZE_T
AVBufferPool
*
av_buffer_pool_init
(
int
size
,
AVBufferRef
*
(
*
alloc
)(
int
size
));
#else
AVBufferPool
*
av_buffer_pool_init
(
size_t
size
,
AVBufferRef
*
(
*
alloc
)(
size_t
size
));
#endif
/**
* Allocate and initialize a buffer pool with a more complex allocator.
...
...
@@ -279,8 +306,13 @@ AVBufferPool *av_buffer_pool_init(int size, AVBufferRef* (*alloc)(int size));
* data. May be NULL.
* @return newly created buffer pool on success, NULL on error.
*/
#if FF_API_BUFFER_SIZE_T
AVBufferPool
*
av_buffer_pool_init2
(
int
size
,
void
*
opaque
,
AVBufferRef
*
(
*
alloc
)(
void
*
opaque
,
int
size
),
#else
AVBufferPool
*
av_buffer_pool_init2
(
size_t
size
,
void
*
opaque
,
AVBufferRef
*
(
*
alloc
)(
void
*
opaque
,
size_t
size
),
#endif
void
(
*
pool_free
)(
void
*
opaque
));
/**
...
...
libavutil/buffer_internal.h
View file @
14040a1d
...
...
@@ -32,7 +32,7 @@
struct
AVBuffer
{
uint8_t
*
data
;
/**< data described by this buffer */
int
size
;
/**< size of data in bytes */
buffer_size_t
size
;
/**< size of data in bytes */
/**
* number of existing AVBufferRef instances referring to this buffer
...
...
@@ -89,10 +89,10 @@ struct AVBufferPool {
*/
atomic_uint
refcount
;
in
t
size
;
buffer_size_
t
size
;
void
*
opaque
;
AVBufferRef
*
(
*
alloc
)(
in
t
size
);
AVBufferRef
*
(
*
alloc2
)(
void
*
opaque
,
in
t
size
);
AVBufferRef
*
(
*
alloc
)(
buffer_size_
t
size
);
AVBufferRef
*
(
*
alloc2
)(
void
*
opaque
,
buffer_size_
t
size
);
void
(
*
pool_free
)(
void
*
opaque
);
};
...
...
libavutil/internal.h
View file @
14040a1d
...
...
@@ -299,4 +299,11 @@ int avpriv_dict_set_timestamp(AVDictionary **dict, const char *key, int64_t time
#define FF_PSEUDOPAL 0
#endif
// Temporary typedef to simplify porting all AVBufferRef users to size_t
#if FF_API_BUFFER_SIZE_T
typedef
int
buffer_size_t
;
#else
typedef
size_t
buffer_size_t
;
#endif
#endif
/* AVUTIL_INTERNAL_H */
libavutil/version.h
View file @
14040a1d
...
...
@@ -79,7 +79,7 @@
*/
#define LIBAVUTIL_VERSION_MAJOR 56
#define LIBAVUTIL_VERSION_MINOR 6
7
#define LIBAVUTIL_VERSION_MINOR 6
8
#define LIBAVUTIL_VERSION_MICRO 100
#define LIBAVUTIL_VERSION_INT AV_VERSION_INT(LIBAVUTIL_VERSION_MAJOR, \
...
...
@@ -132,6 +132,9 @@
#ifndef FF_API_CHILD_CLASS_NEXT
#define FF_API_CHILD_CLASS_NEXT (LIBAVUTIL_VERSION_MAJOR < 57)
#endif
#ifndef FF_API_BUFFER_SIZE_T
#define FF_API_BUFFER_SIZE_T (LIBAVUTIL_VERSION_MAJOR < 57)
#endif
#ifndef FF_API_D2STR
#define FF_API_D2STR (LIBAVUTIL_VERSION_MAJOR < 58)
#endif
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment