Change if(x)free(x); to free(x);