| Commit message (Collapse) | Author | Age | Files | Lines |
|\
| |
| | |
Fix #847: enable back GD_BICUBIC* interpolation methods
|
|/ |
|
|
|
| |
`gd_webp.c` needs `ssize_t` which is defined in `gd_intern.h` for MSVC.
|
|
|
|
|
| |
This is new in autoconf-2.69 and lets us kill off some boilerplate
in our various library tests.
|
|
|
|
|
|
| |
This was released in 2012, and only developers really need it, so
bump the requirement. This will let us use some newer features
that aren't available in 2.64.
|
|
|
|
|
|
|
| |
This should make it more obvious when we aren't probing for the libs
and headers directy ourselves.
Closes #841.
|
|\
| |
| | |
Fix deprecared function prototypes
|
|/
|
|
|
|
|
| |
Fixes following errors:
error: a function definition without a prototype is deprecated in all versions of C and is not supported in C2x [-Werror,-Wdeprecated-non-prototype]
Signed-off-by: Khem Raj <raj.khem@gmail.com>
|
|\
| |
| | |
Fix #790, don't rotate glyph positions with Raqm 0.9.0+
|
| |
| |
| |
| | |
Raqm will apply the transformation matrix set on the FT_Face itself.
|
|/ |
|
|\
| |
| | |
Fix #831: gdImageAvif memory leak
|
|/
|
|
|
|
|
|
|
|
|
| |
First, we must not forget to call `avifImageDestroy()` when we're
finished with the image.
Then we also need to cater to the allocated `dataBuf`. To keep track
of that, we "extend" `avifIO` as `avifIOCtxReader`. To simplify, and
to avoid unnecessary allocations, we use `realloc()`. To better fit
with GD, we also use the GD memory allocation functions instead of the
ones provided by libavif.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* Enable webpng on MINGW
* Detect GD version using cmake language
* Use _aligned_malloc instead of posix_memalign on Windows
* Include missing "errno.h"
* Fix finding WEBP on MINGW
* Fix finding XPM on MINGW
* Use PkgConfig to find packages on MINGW
* CI: Enable more options for MINGW
|
| |
|
| |
|
| |
|
| |
|
|
|
|
| |
and convenient to handle errors, assert and free used resources on fail assert
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* Partial #818, unused arg
* Partial #818, init var
* partail #818, fix va_args usage
* partail #818, handle f* calls and avoid possible call to malloc with negative values
* partail #818, prevent double free
* partail #818, resource leak if test fail
* partail #818, null deref fix
* partail #818, avoid double free on fp failure
* Partial #818, fix error msg
* Partial #818, leak on error
* Partial #818, null deref
* Partial #818, avoid possible negative index on failure
* partial #818, does not free if we return if requested new size overflow
* partial #818, avoid double free, free where the alloc happened
* partial #818, fix assert logic and test exp_size for <=0
* partial #818, fix assert logic for color idx test
* partial #818, new case for possible leak, improve logic
* partial #818, fix assert logic for color idx test
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* Partial #818, unused arg
* Partial #818, init var
* partail #818, fix va_args usage
* partail #818, handle f* calls and avoid possible call to malloc with negative values
* partail #818, prevent double free
* partail #818, resource leak if test fail
* partail #818, null deref fix
* partail #818, avoid double free on fp failure
* Partial #818, fix error msg
* Partial #818, leak on error
* Partial #818, null deref
* Partial #818, avoid possible negative index on failure
* partial #818, does not free if we return if requested new size overflow
* partial #818, avoid double free, free where the alloc happened
* partial #818, fix assert logic and test exp_size for <=0
* partial #818, fix assert logic for color idx test
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* Partial #818, unused arg
* Partial #818, init var
* partail #818, fix va_args usage
* partail #818, handle f* calls and avoid possible call to malloc with negative values
* partail #818, prevent double free
* partail #818, resource leak if test fail
* partail #818, null deref fix
* partail #818, avoid double free on fp failure
* Partial #818, fix error msg
* Partial #818, leak on error
* Partial #818, null deref
* Partial #818, avoid possible negative index on failure
* partial #818, does not free if we return if requested new size overflow
* partial #818, avoid double free, free where the alloc happened
|
| |
|
|
|
|
|
| |
* Fix #815, gd_topal, explicit null dereferenced (kind of false positive however it does hurt to add that check)
* Fix #815, != NULL
|
| |
|
|
|
|
| |
cherry-pick to 2.3....
|
|
|
|
| |
cherry-pick to 2.3....
|
| |
|
|
|
|
| |
may be leaked
|
| |
|
|
|
|
|
| |
* Fix #806, getPixelInterpolateWeight, getPixelOverflowTC, getPixelOverflowPalette, gdImageRotate* take bgcolor as GD's truecolor, result is a TC image as well.Clean dead code.
* Not needed at this stage
|
|
|
|
| |
may be leaked (#809)
|
|
|
| |
A simple instruction for security researchers.
|
|
|
|
|
| |
* #797 possible leak on png error, returns from setjmp lost the row_pointers ref somehow
* skip that one using mingw until we have a reliable portable FP related tests suites (may never happpen)
|
| |
|
|
|
| |
fix bug #788 in HEIF usage, stride is require
|
| |
|
|
|
|
| |
We did this in other workflows already, just not the coverity one.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Since #737 gdImageColorTransparent does not correctly handle the case that im->transparent = -1
(which is the initial value and used to indicate no transparent colour has been set).
This leads to undefined behaviour via an out-of-bound write:
im->alpha[im->transparent] = gdAlphaOpaque;
(in practice I assume this merely overwrites an earlier struct member)
This can be triggered via loading a gif through gdImageCreateFromGifPtr
third_party/gd/source/gd.c:922:2: runtime error: index -1 out of bounds for type 'int [256]'
#0 0x5629c034a839 in gdImageColorTransparent third_party/gd/source/gd.c:922:29
#1 0x5629c034ebf0 in gdImageCreateFromGifCtx third_party/gd/source/gd_gif_in.c:328:4
#2 0x5629c034f14f in gdImageCreateFromGifPtr third_party/gd/source/gd_gif_in.c:186:7
Fixes #784.
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
There are small typos in:
- examples/copyrotated.c
- src/gd.c
- src/gd.h
- src/gd_avif.c
- src/gd_nnquant.c
- src/gd_tga.c
- src/gd_topal.c
- src/wbmp.c
- tests/avif/compare_avif_to_png.c
Fixes:
- Should read `requires` rather than `reqiures`.
- Should read `of the` rather than `ofthe`.
- Should read `memory` rather than `memmory`.
- Should read `maximum` rather than `maxmum`.
- Should read `intersection` rather than `intertersection`.
- Should read `hypotenuse` rather than `hypothenus`.
- Should read `flexibility` rather than `flexibilty`.
- Should read `always` rather than `alwasy`.
- Should read `also` rather than `alos`.
|
|
|
| |
Bug template
|
|
|
|
| |
installed and check before in case the flow failed previously before the cleanup (#774)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* add AOM dep for libavif
* add ninja build
* add nasm
* sudo ninja install
* we have it installed already on aws/ubuntu graviton
* we have it installed already on aws/ubuntu graviton, at the right step
* install libuv and libavif
* missing dav1d and update step names
* 20.04 does not have dav1d
* dav1d sudo ninja install
* We need shared lib for all codecs
* Enable AVIF in gd and enable deps on Graviton
* attempt to fix prefix install for dav1d and ensure it can be loaded
* ensure AOM codec is installed in /usr
* ensure YUV is installed in /usr
* AWS/Graviton has YUV already
* aom,yuv,avif has been removed from the graviton setup, installing it like on other flows. Keep same version.
* let keep AOM as it is used and installed using HEIF repo, with latest version too
|
|\
| |
| | |
Fix #764 prevent crash in test code when AVIF encode/decode fails, fix leaks in tests
|
| |
| |
| |
| | |
memory leaks
|
|/ |
|