Skip to content

Commit e8d190a

Browse files
authored
Merge pull request #649 from DannyBen/run-validate-once
Prevent running validate_* twice
2 parents 9a91983 + 5df4d9c commit e8d190a

File tree

1 file changed

+6
-4
lines changed

1 file changed

+6
-4
lines changed

lib/bashly/views/argument/validations.gtx

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -6,15 +6,17 @@ if validate
66
> values=''
77
> eval "values=(${args['{{ name }}']})"
88
> for value in "${values[@]}"; do
9-
> if [[ -n $(validate_{{ validate }} "$value") ]]; then
10-
> printf "{{ strings[:validation_error] }}\n" "{{ name.upcase }}" "$(validate_{{ validate }} "$value")" >&2
9+
> validation_output="$(validate_{{ validate }} "$value")"
10+
> if [[ -n "$validation_output" ]]; then
11+
> printf "{{ strings[:validation_error] }}\n" "{{ name.upcase }}" "$validation_output" >&2
1112
> exit 1
1213
> fi
1314
> done
1415
> fi
1516
else
16-
> if [[ -v args['{{ name }}'] && -n $(validate_{{ validate }} "${args['{{ name }}']:-}") ]]; then
17-
> printf "{{ strings[:validation_error] }}\n" "{{ name.upcase }}" "$(validate_{{ validate }} "${args['{{ name }}']:-}")" >&2
17+
> validation_output="$(validate_{{ validate }} "${args['{{ name }}']:-}")"
18+
> if [[ -v args['{{ name }}'] && -n "$validation_output" ]]; then
19+
> printf "{{ strings[:validation_error] }}\n" "{{ name.upcase }}" "$validation_output" >&2
1820
> exit 1
1921
> fi
2022
>

0 commit comments

Comments
 (0)