bugfix:invalid free/malloc