summaryrefslogtreecommitdiff
path: root/Build/source/libs/gd/libgd-src/tests/gdimagesetinterpolationmethod/github_bug_00584.c
diff options
context:
space:
mode:
Diffstat (limited to 'Build/source/libs/gd/libgd-src/tests/gdimagesetinterpolationmethod/github_bug_00584.c')
-rw-r--r--Build/source/libs/gd/libgd-src/tests/gdimagesetinterpolationmethod/github_bug_00584.c31
1 files changed, 31 insertions, 0 deletions
diff --git a/Build/source/libs/gd/libgd-src/tests/gdimagesetinterpolationmethod/github_bug_00584.c b/Build/source/libs/gd/libgd-src/tests/gdimagesetinterpolationmethod/github_bug_00584.c
new file mode 100644
index 00000000000..e11f9f06331
--- /dev/null
+++ b/Build/source/libs/gd/libgd-src/tests/gdimagesetinterpolationmethod/github_bug_00584.c
@@ -0,0 +1,31 @@
+/**
+ * Test that gdImageSetInterpolationMethod(im, GD_DEFAULT) is consistent
+ *
+ * See <https://github.com/libgd/libgd/issues/584>
+ */
+
+#include "gd.h"
+#include "gdtest.h"
+
+
+int main()
+{
+ gdImagePtr im;
+ gdInterpolationMethod old_m, new_m;
+ interpolation_method old_f, new_f;
+
+ im = gdImageCreateTrueColor(8, 8);
+ gdTestAssert(im != NULL);
+ gdTestAssert(gdImageSetInterpolationMethod(im, GD_SINC));
+ old_m = gdImageGetInterpolationMethod(im);
+ gdTestAssert(old_m == GD_SINC);
+ old_f = im->interpolation;
+ gdTestAssert(gdImageSetInterpolationMethod(im, GD_DEFAULT));
+ new_m = gdImageGetInterpolationMethod(im);
+ gdTestAssert(new_m == GD_LINEAR);
+ new_f = im->interpolation;
+ gdTestAssert(new_m != old_m);
+ gdTestAssert(new_f != old_f);
+ gdImageDestroy(im);
+ return gdNumFailures();
+}