summaryrefslogtreecommitdiffstats
path: root/test/malloc/realloc-can-shrink.c
blob: 33249db420fac378ffa2b3b20b1f52ec8426c89f (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
/* make sure that realloc() can properly shrink buffers */

#include <stdlib.h>

#define LARGE_BUFFER (1 << 20) /* idea is to span a lot of pages */

int main(int argc, char *argv[])
{
	int count = 20;
	char *ptr = NULL;
	while (count--) {
		ptr = realloc(ptr, LARGE_BUFFER);
		ptr = realloc(ptr, 1);
	}
	free(ptr);
	return 0;
}