From: NeilBrown Date: Sat, 11 Oct 2014 06:04:11 +0000 (+1100) Subject: oceani: memdup argument strings when assigning to a variable. X-Git-Tag: FallsCreek~7 X-Git-Url: https://ocean-lang.org/code/?p=ocean;a=commitdiff_plain;h=ab9eaaed0253451cd4a7d478d6adf26059dd4a7e oceani: memdup argument strings when assigning to a variable. string values are assumed to be in malloced memory, so when assigning a string from the command line, copy it to malloced memory. Signed-off-by: NeilBrown --- diff --git a/csrc/oceani.mdc b/csrc/oceani.mdc index a202481..bd2c41a 100644 --- a/csrc/oceani.mdc +++ b/csrc/oceani.mdc @@ -400,8 +400,9 @@ when no longer needed. case Vnone: return 0; case Vstr: - vl->str.txt = arg; vl->str.len = strlen(arg); + vl->str.txt = malloc(vl->str.len); + memcpy(vl->str.txt, arg, vl->str.len); break; case Vnum: tx.txt = arg; tx.len = strlen(tx.txt);