Fix bug, add error listener