fix addListener and delListener bug