diff options
Diffstat (limited to 'contrib/one-true-awk/tran.c')
-rw-r--r-- | contrib/one-true-awk/tran.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/contrib/one-true-awk/tran.c b/contrib/one-true-awk/tran.c index d8b4a47..c19ce94 100644 --- a/contrib/one-true-awk/tran.c +++ b/contrib/one-true-awk/tran.c @@ -332,10 +332,10 @@ char *setsval(Cell *vp, const char *s) /* set string val of a Cell */ donerec = 1; } t = tostring(s); /* in case it's self-assign */ - vp->tval &= ~NUM; - vp->tval |= STR; if (freeable(vp)) xfree(vp->sval); + vp->tval &= ~NUM; + vp->tval |= STR; vp->tval &= ~DONTFREE; dprintf( ("setsval %p: %s = \"%s (%p) \", t=%o r,f=%d,%d\n", vp, NN(vp->nval), t,t, vp->tval, donerec, donefld) ); |