core: callback_free_key shouldn't point to already free'd value