Age | Commit message (Collapse) | Author |
|
|
|
The doc says those function are like av_free if size or nmemb is
zero. It doesn't match the code. av_realloc() realloc one byte if
size is zero, which was added by 91ff05f6ac5 ten years ago.
realloc() itself in C is implementation-dependent. Make the doc
match the longstanding behaviour.
Signed-off-by: Zhao Zhili <zhilizhao@tencent.com>
|
|
It does the same as av_calloc(), so one of them should be removed.
Given that av_calloc() has the shorter name, it is retained.
Reviewed-by: Paul B Mahol <onemda@gmail.com>
Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
|
|
Incorrect since 4959f18a8e11ad7d3529b1c4fc429f1b6b76ad7c.
Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
|
|
There seems to be no compelling reason for it to be inline.
|
|
Signed-off-by: James Almer <jamrial@gmail.com>
|
|
They are not properly namespaced and not intended for public use.
|
|
The alloc_size attribute is valid only on functions that return a
pointer. GCC 9 (not yet released) warns about invalid usage:
./libavutil/mem.h:342:1: warning: 'alloc_size' attribute ignored on a function returning int' [-Wattributes]
342 | av_alloc_size(2, 3) int av_reallocp_array(void *ptr, size_t nmemb, size_t size);
| ^~~~~~~~~~~~~
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
|
|
The current wording regarding size and min_size is completely wrong and
ignores that min_size is indeed only a desired minimal size, not the
actually allocated size.
Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@googlemail.com>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
|
|
The macro was added in 43171a2a738f5114768d34a7278e56e5fde714bc, but I forgot to add it to the DJGPP architecture in that change.
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
|
|
Variables used in inline assembly need to be marked with attribute((used)).
Static constants already were, via the define of DECLARE_ASM_CONST.
But DECLARE_ALIGNED does not add this attribute, and some of the variables
defined with it are const only used in inline assembly, and therefore
appeared dead. This change adds a macro DECLARE_ASM_ALIGNED that marks
variables as used.
This change makes FFMPEG work with Clang's ThinLTO.
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
|
|
* commit '0af8a72174108b9bb482f1073a1e9a3bc258af51':
build: Drop support for legacy TI ARM compiler
Merged-by: James Almer <jamrial@gmail.com>
|
|
* commit '04b0f0e371ff81b682274b574fb465ba4395c09f':
mem: uninline av_malloc(z)_array()
Merged-by: James Almer <jamrial@gmail.com>
|
|
|
|
Inlining public functions hardcodes their implementation into the ABI,
so it should be avoided unless there is a very good reason for it. No
such reason exists in this case.
|
|
See also https://gcc.gnu.org/bugzilla/show_bug.cgi?id=80208
|
|
* commit 'f637046d3134a331e4b5a7243ac3dfb92735b8a5':
libavutil: Always use some GCC style attributes on clang
Merged-by: Clément Bœsch <cboesch@gopro.com>
|
|
memalign() is not guranteed to be compatible with free() or realloc()
and for platforms in this category we have --enable-memalign-hack
(which should be enabled automatically if such system is detected)
Trying to somehow half support systems that can free() memalign memory
but not reallocate it seems not worth the amount of work needed to
keep 2 then incompatible allocation systems and ensure their
seperation. That is unless this would affect a major platform
on which we want to avoid the memalign hack code
The warnings also cause wasted time and effort as people try
to maintain a separation that does not exist currently.
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
|
|
|
|
|
|
Clang normally disguises as GCC (defining __GNUC__), and thus get
all the normal GCC specific attributes.
Clang can also work as a drop-in replacement for MSVC, and in these
cases, it doesn't define __GNUC__, but defines _MSC_VER instead.
Even in these setups, it still supports the GCC style attributes,
thus use them, especially where there isn't any MSVC specific
version, or where the MSVC specific version doesn't work on clang
(for DECLARE_ASM_CONST).
Signed-off-by: Martin Storsjö <martin@martin.st>
|
|
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
|
|
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
|
|
This adds av_warn_unused_result to functions whose return codes need to
be checked.
Reviewed-by: Michael Niedermayer <michael@niedermayer.cc>
Signed-off-by: Ganesh Ajjanagadde <gajjanagadde@gmail.com>
|
|
* 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>
|
|
|
|
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
|
|
av_dynarray_add_nofree function have similar functionality
as existing av_dynarray_add, but it doesn't deallocate memory
on fails.
Signed-off-by: Lukasz Marek <lukasz.m.luki@gmail.com>
|
|
* commit 'cce3e0a49f0dd030262c28d9c53de0bd2fd909c4':
Move av_fast_{m,re}alloc from lavc to lavu.
Conflicts:
libavcodec/avcodec.h
libavcodec/utils.c
libavutil/mem.c
libavutil/version.h
Merged-by: Michael Niedermayer <michaelni@gmx.at>
|
|
|
|
* commit 'b284e1ffe343d6697fb950d1ee517bafda8a9844':
mem: do not check for negative size
Merged-by: Michael Niedermayer <michaelni@gmx.at>
|
|
size_t is guaranteed to be unsigned
Signed-off-by: Anton Khirnov <anton@khirnov.net>
|
|
* commit '3feb3d6ce4be0a09a9f8f13d613bed25b523b6e7':
mem: Introduce av_reallocp
Conflicts:
doc/APIchanges
libavutil/mem.c
libavutil/mem.h
libavutil/version.h
Merged-by: Michael Niedermayer <michaelni@gmx.at>
|
|
|
|
* qatar/master:
mem: Document the non-compatibility of av_realloc() and av_malloc()
Merged-by: Michael Niedermayer <michaelni@gmx.at>
|
|
|
|
* commit 'b634b36fcebfe16b837b6c4044f5d5cb99a75040':
mem: Improve documentation wording and spelling
Conflicts:
libavutil/mem.c
libavutil/mem.h
Merged-by: Michael Niedermayer <michaelni@gmx.at>
|
|
|
|
* commit 'b4ec7a5fee644ad9882e10c097817b65447b8e55':
mem: Document the av_realloc family of functions properly
Merged-by: Michael Niedermayer <michaelni@gmx.at>
|
|
realloc() does not accept pointers from memalign().
|
|
* commit '3b4feac1ec14f861bdd7f494f288f4d8dd7f449e':
movenc: Keep track of the allocated size for the cluster array
mem: Add av_realloc_array and av_reallocp_array
Conflicts:
doc/APIchanges
libavformat/movenc.c
libavutil/mem.c
libavutil/mem.h
libavutil/version.h
Merged-by: Michael Niedermayer <michaelni@gmx.at>
|
|
These help avoiding overflows and simplify error handling.
Signed-off-by: Martin Storsjö <martin@martin.st>
|
|
Based on a patch by Clément Bœsch.
See thread:
From: Clément Bœsch <ubitux@gmail.com>
Subject: [FFmpeg-devel] [PATCH 1/5] lavu: add av_dynarray_alloc_elem().
Date: Sun, 14 Apr 2013 03:07:54 +0200
|
|
|
|
Also extend documentation accordingly.
|
|
In particular, mention the fact that the amortized element addition cost
is constant.
|
|
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
|
|
* qatar/master:
avutil: Make LZO decoder code configure-time selectable
avutil: Move memcpy_backptr() to mem.c
configure: detect parisc64 automatically
configure: detect ppc64 automatically
configure: detect mips64 automatically
configure: generalise 64-bit test
smoothstreamingenc: Don't assume streams start from timestamp 0
Conflicts:
configure
libavutil/Makefile
libavutil/lzo.c
libavutil/lzo.h
libavutil/mem.c
libavutil/mem.h
Merged-by: Michael Niedermayer <michaelni@gmx.at>
|
|
The function is used elsewhere and does not belong with the LZO code.
|
|
* qatar/master:
configure: Group math functions into a separate variable
avutil/mem: K&R formatting cosmetics
avutil/lzo: K&R formatting cosmetics
Conflicts:
configure
libavutil/mem.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
|