summaryrefslogtreecommitdiff
path: root/Build/source/libs/gd/libgd-src/tests/gdimagerectangle/github_bug_00172.c
blob: 6519342041fe73f725c4a2662c722f804630a158 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
#include <stdio.h>
#include "gd.h"

#include "gdtest.h"

int main() {
	gdImagePtr im;
	int black, white;
	int error = 0;
	int xs = 300, xe = 350, i;
	im = gdImageCreateTrueColor(400, 200);

	if (im == NULL) {
		gdTestErrorMsg("gdImageCreate failed.\n");
		return 1;
	}

	white = gdImageColorAllocate(im, 255,255,255);
	black = gdImageColorAllocate(im, 0,0,0);

	gdImageFilledRectangle(im, 0, 0, 400,200, white);

	gdImageRectangle(im, xs, 95, xe, 95, black);

	for (i = xs; i <= xe; i++) {
		int c = gdImageGetPixel(im, i, 94);
		if (c != white) {
			error |=1;
		}
	}
	for (i = xs; i <= xe; i++) {
		int c = gdImageGetPixel(im, i, 95);
		if (c != black) {
			error |=1;
		}
	}
	for (i = xs; i <= xe; i++) {
		int c = gdImageGetPixel(im, i, 96);
		if (c != white) {
			error |=1;
		}
	}

	if (gdImageGetPixel(im, xs -1, 95) != white) {
		error |=1;
	}
	if (gdImageGetPixel(im, xe +1, 95) != white) {
		error |=1;
	}
	gdImageDestroy(im);

	return error;
}