From 57d7bf4a6ad4664c571f9530c300ab5d02274526 Mon Sep 17 00:00:00 2001 From: pajoye Date: Mon, 7 May 2007 10:26:44 +0000 Subject: [PATCH] - #79, MFB: - fix hline and vline calls - add test case --- src/gd.c | 5 +++-- src/tests/CMakeLists.txt | 3 ++- src/tests/gdimagearc/CMakeLists.txt | 9 +++++++++ src/tests/gdimagearc/bug00079.c | 26 ++++++++++++++++++++++++++ src/tests/gdimagearc/bug00079_exp.png | Bin 0 -> 2127 bytes 5 files changed, 40 insertions(+), 3 deletions(-) create mode 100644 src/tests/gdimagearc/CMakeLists.txt create mode 100644 src/tests/gdimagearc/bug00079.c create mode 100644 src/tests/gdimagearc/bug00079_exp.png diff --git a/src/gd.c b/src/gd.c index 87f52f5..dcfd63b 100644 --- a/src/gd.c +++ b/src/gd.c @@ -1610,6 +1610,7 @@ BGD_DECLARE(void) gdImageFilledArc (gdImagePtr im, int cx, int cy, int w, int h, { e += 360; } + for (i = s; (i <= e); i++) { int x, y; @@ -3456,10 +3457,10 @@ static void gdImageAALine (gdImagePtr im, int x1, int y1, int x2, int y2, int co /* Axis aligned lines */ if (dx == 0) { - gdImageHLine(im, y1, x1, x2, col); + gdImageVLine(im, x1, y1, y2, col); return; } else if (dy == 0) { - gdImageVLine(im, x1, y1, y2, col); + gdImageHLine(im, y1, x1, x2, col); return; } diff --git a/src/tests/CMakeLists.txt b/src/tests/CMakeLists.txt index 71a28f8..8bce8ff 100644 --- a/src/tests/CMakeLists.txt +++ b/src/tests/CMakeLists.txt @@ -28,6 +28,7 @@ if (BUILD_TEST) SET(TESTS_DIRS gdtest + gdimagearc gdimagecolorclosest gdimagecolorexact gdimagecolorresolve @@ -50,4 +51,4 @@ if (BUILD_TEST) FOREACH(test_dir ${TESTS_DIRS}) add_subdirectory (${test_dir}) ENDFOREACH(test_dir) -endif (BUILD_TEST) \ No newline at end of file +endif (BUILD_TEST) diff --git a/src/tests/gdimagearc/CMakeLists.txt b/src/tests/gdimagearc/CMakeLists.txt new file mode 100644 index 0000000..3ef4fcf --- /dev/null +++ b/src/tests/gdimagearc/CMakeLists.txt @@ -0,0 +1,9 @@ +SET(TESTS_FILES + bug00079 +) + +FOREACH(test_name ${TESTS_FILES}) + add_executable(${test_name} "${test_name}.c") + target_link_libraries (${test_name} gdTest ${GD_LIB}) + ADD_TEST(${test_name} ${EXECUTABLE_OUTPUT_PATH}/${test_name}) +ENDFOREACH(test_name) diff --git a/src/tests/gdimagearc/bug00079.c b/src/tests/gdimagearc/bug00079.c new file mode 100644 index 0000000..b643143 --- /dev/null +++ b/src/tests/gdimagearc/bug00079.c @@ -0,0 +1,26 @@ +#include "gd.h" +#include "gdtest.h" + +int main() +{ + gdImagePtr im; + FILE *fp; + int error = 0; + char path[1024]; + + + im = gdImageCreateTrueColor(300, 300); + gdImageFilledRectangle(im, 0,0, 299,299, 0xFFFFFF); + + gdImageSetAntiAliased(im, 0x000000); + gdImageArc(im, 300, 300, 600,600, 0, 360, gdAntiAliased); + + sprintf(path, "%s/gdimagearc/bug00079_exp.png", GDTEST_TOP_DIR); + if (!gdAssertImageEqualsToFile(path, im)) { + printf("%s failed\n", path); + error = 1; + } + + gdImageDestroy(im); + return error; +} diff --git a/src/tests/gdimagearc/bug00079_exp.png b/src/tests/gdimagearc/bug00079_exp.png new file mode 100644 index 0000000000000000000000000000000000000000..1abfbbfbc5191d2cb69394b9e99e65776f539808 GIT binary patch literal 2127 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 F{U3pUv}FJQ literal 0 HcmV?d00001