diff options
Diffstat (limited to 'editors')
-rw-r--r-- | editors/awk.c | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/editors/awk.c b/editors/awk.c index 77784dfc1..8848d94a5 100644 --- a/editors/awk.c +++ b/editors/awk.c | |||
@@ -2784,8 +2784,16 @@ static var *evaluate(node *op, var *res) | |||
2784 | break; | 2784 | break; |
2785 | 2785 | ||
2786 | case F_le: | 2786 | case F_le: |
2787 | if (!op1) | 2787 | debug_printf_eval("length: L.s:'%s'\n", L.s); |
2788 | if (!op1) { | ||
2788 | L.s = getvar_s(intvar[F0]); | 2789 | L.s = getvar_s(intvar[F0]); |
2790 | debug_printf_eval("length: L.s='%s'\n", L.s); | ||
2791 | } | ||
2792 | else if (L.v->type & VF_ARRAY) { | ||
2793 | R_d = L.v->x.array->nel; | ||
2794 | debug_printf_eval("length: array_len:%d\n", L.v->x.array->nel); | ||
2795 | break; | ||
2796 | } | ||
2789 | R_d = strlen(L.s); | 2797 | R_d = strlen(L.s); |
2790 | break; | 2798 | break; |
2791 | 2799 | ||