Вероятно этот return стоит вынести наружу из if-else.