diff options
author | Pierre Joye <pierre.php@gmail.com> | 2022-01-23 11:57:49 +0700 |
---|---|---|
committer | GitHub <noreply@github.com> | 2022-01-23 11:57:49 +0700 |
commit | 0956816bc63acadf6208cb1010807735ad6b0597 (patch) | |
tree | d4182ce254a70650ea506ebfca2997d4a92fab24 /tests/gd2/bug797.c | |
parent | 3f872fc931f17244aec542c9e0d6eb1a61bddf05 (diff) | |
download | libgd-0956816bc63acadf6208cb1010807735ad6b0597.tar.gz |
#797 possible leak on png error, returns from setjmp lost the row_poi… (#802)
* #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)
Diffstat (limited to 'tests/gd2/bug797.c')
-rw-r--r-- | tests/gd2/bug797.c | 32 |
1 files changed, 32 insertions, 0 deletions
diff --git a/tests/gd2/bug797.c b/tests/gd2/bug797.c new file mode 100644 index 0000000..89adedd --- /dev/null +++ b/tests/gd2/bug797.c @@ -0,0 +1,32 @@ +/** + * Test that invalid transparent colors can't be read + * + * We're reading a corrupt palette image in GD2 format, which has only a single + * palette entry, but claims that the transparent color would be 1. We check + * that the transparency is simply ignored in this case. + * + * See also <https://github.com/libgd/libgd/issues/383> + */ + + +#include "gd.h" +#include "gdtest.h" + + +int main() +{ + gdImagePtr im; + FILE *fp; + + fp = gdTestFileOpen2("gd2", "bug797.gd2"); + gdTestAssert(fp != NULL); + im = gdImageCreateFromGd2(fp); + gdTestAssert(im != NULL); + fclose(fp); + + gdTestAssert(gdImageGetTransparent(im) == -1); + + gdImageDestroy(im); + + return gdNumFailures(); +} |