now theres a memory leak, why not simply pass in NULL?