Fix listener leak