remove old listener on reuse