diff options
Diffstat (limited to 'editors')
-rw-r--r-- | editors/awk.c | 12 |
1 files changed, 7 insertions, 5 deletions
diff --git a/editors/awk.c b/editors/awk.c index cef73342c..a8c5476a7 100644 --- a/editors/awk.c +++ b/editors/awk.c | |||
@@ -2393,12 +2393,14 @@ static var *evaluate(node *op, var *res) | |||
2393 | 2393 | ||
2394 | case XC( OC_MOVE ): | 2394 | case XC( OC_MOVE ): |
2395 | /* if source is a temporary string, jusk relink it to dest */ | 2395 | /* if source is a temporary string, jusk relink it to dest */ |
2396 | if (R.v == v1+1 && R.v->string) { | 2396 | //Disabled: if R.v is numeric but happens to have cached R.v->string, |
2397 | res = setvar_p(L.v, R.v->string); | 2397 | //then L.v ends up being a string, which is wrong |
2398 | R.v->string = NULL; | 2398 | // if (R.v == v1+1 && R.v->string) { |
2399 | } else { | 2399 | // res = setvar_p(L.v, R.v->string); |
2400 | // R.v->string = NULL; | ||
2401 | // } else { | ||
2400 | res = copyvar(L.v, R.v); | 2402 | res = copyvar(L.v, R.v); |
2401 | } | 2403 | // } |
2402 | break; | 2404 | break; |
2403 | 2405 | ||
2404 | case XC( OC_TERNARY ): | 2406 | case XC( OC_TERNARY ): |