Why don't you break the loop if you hit a catchError?