/* This test demonstrated an obscure bug in malloclists handling caused by multiple blocks hashing to the same list and one being overwritten at realloc time due to bad ordering of the things happening. Now runs without error. */ #include <stdlib.h> #include <stdio.h> int main ( void ) { char* p; int i; for (i = 0; i < 10000; i++) { p = malloc(10 + 10 * (i % 100)); p = realloc(p, 500); p = realloc(p, 600); free(p); } return 0; }