reset: free instead of leaking unneeded ref