replaced free() with wfree() everywhere