2012-09-09 Paul Smith * read.c (eval): Use the correct pointer when adding to the variable buffer. Fixes Savannah bug #36106. --- a/read.c +++ b/read.c @@ -1078,12 +1078,12 @@ eval (struct ebuffer *ebuf, int set_default) after it. */ if (semip) { - unsigned int l = p - variable_buffer; + unsigned int l = p2 - variable_buffer; *(--semip) = ';'; collapse_continuations (semip); variable_buffer_output (p2 + strlen (p2), semip, strlen (semip)+1); - p = variable_buffer + l; + p2 = variable_buffer + l; } record_target_var (filenames, p2, vmod.override_v ? o_override : o_file,