This doesn't appear to honor listener.isFailOnError().