about summary refs log tree commit diff
path: root/src/rt/rust_stack.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/rt/rust_stack.h')
-rw-r--r--src/rt/rust_stack.h5
1 files changed, 4 insertions, 1 deletions
diff --git a/src/rt/rust_stack.h b/src/rt/rust_stack.h
index 34d4dda742d..5431d6ec2ff 100644
--- a/src/rt/rust_stack.h
+++ b/src/rt/rust_stack.h
@@ -17,7 +17,10 @@ template <class T>
 stk_seg *
 create_stack(T allocer, size_t sz) {
   size_t total_sz = sizeof(stk_seg) + sz;
-  return (stk_seg *)allocer->malloc(total_sz, "stack");
+  stk_seg *stk = (stk_seg *)allocer->malloc(total_sz, "stack");
+  memset(stk, 0, sizeof(stk_seg));
+  stk->end = (uintptr_t) &stk->data[sz];
+  return stk;
 }
 
 template <class T>