Why `return` here and not in the success case?