fix to use exit(1) instead of abort