fix bug of wron listener deletion