diff options
author | Kaz Kylheku <kaz@kylheku.com> | 2018-03-26 06:57:02 -0700 |
---|---|---|
committer | Kaz Kylheku <kaz@kylheku.com> | 2018-03-26 06:57:02 -0700 |
commit | 4c854da3960272b1bd9a203242b099dc679bcbb7 (patch) | |
tree | 8e1d25e9f40929b6edfe30d6929297d1ba57a556 | |
parent | c30f0abf8e41b64645168e994c2e75e348726de9 (diff) | |
download | txr-4c854da3960272b1bd9a203242b099dc679bcbb7.tar.gz txr-4c854da3960272b1bd9a203242b099dc679bcbb7.tar.bz2 txr-4c854da3960272b1bd9a203242b099dc679bcbb7.zip |
vm: bugfix: faulty memcpy in closure.
* vm.c (vm_make_closure): Add missing scale factor to memcpy.
This is the memcpy which relocates display frame contents from
the stack to the frame.
-rw-r--r-- | vm.c | 2 |
1 files changed, 1 insertions, 1 deletions
@@ -244,7 +244,7 @@ static val vm_make_closure(struct vm *vm, int frsz) val heap_vec = vector(vec, nil); cdi->vec = heap_vec; cdi->mem = heap_vec->v.vec; - memcpy(heap_vec->v.vec, mem, c_num(vec)); + memcpy(cdi->mem, mem, sizeof *cdi->mem * c_num(vec)); mut(closure); *sdi = *cdi; break; |