Only free data if it is a copy
Implement convert function