summaryrefslogtreecommitdiff
path: root/Build/source/libs/gd/gd-2.0.35/tests/gif/bug00005.c
diff options
context:
space:
mode:
Diffstat (limited to 'Build/source/libs/gd/gd-2.0.35/tests/gif/bug00005.c')
-rw-r--r--Build/source/libs/gd/gd-2.0.35/tests/gif/bug00005.c47
1 files changed, 47 insertions, 0 deletions
diff --git a/Build/source/libs/gd/gd-2.0.35/tests/gif/bug00005.c b/Build/source/libs/gd/gd-2.0.35/tests/gif/bug00005.c
new file mode 100644
index 00000000000..4a678b57094
--- /dev/null
+++ b/Build/source/libs/gd/gd-2.0.35/tests/gif/bug00005.c
@@ -0,0 +1,47 @@
+
+#include "gdtest.h"
+#include "gd.h"
+
+int main()
+{
+ gdImagePtr im;
+ char * giffiles[4] = {"bug00005_0.gif", "bug00005_1.gif", "bug00005_2.gif", "bug00005_3.gif"};
+ int valid[4] = {0, 0, 0, 0};
+ char *exp[4] = {NULL, NULL, "bug00005_2_exp.png", NULL};
+ const int files_cnt = 4;
+ FILE *fp;
+ int i = 0;
+ int error = 0;
+ char path[1024];
+
+ for (i=0; i < files_cnt; i++) {
+ sprintf(path, "%s/gif/%s", GDTEST_TOP_DIR, giffiles[i]);
+
+ fp = fopen(path, "rb");
+ if (!fp) {
+ gdTestErrorMsg("<%s> Input file does not exist!\n", path);
+ return 1;
+ }
+
+ im = gdImageCreateFromGif(fp);
+ fclose(fp);
+
+ if (valid[i]) {
+ if (!im) {
+ error = 1;
+ } else {
+ sprintf(path, "%s/gif/%s", GDTEST_TOP_DIR, exp[i]);
+ if (!gdAssertImageEqualsToFile(path, im)) {
+ error = 1;
+ }
+ gdImageDestroy(im);
+ }
+ } else {
+ if (!gdTestAssert(im == NULL)) {
+ error = 1;
+ }
+ }
+ }
+
+ return error;
+}