about summary refs log tree commit diff
path: root/src/rt/rust_upcall.cpp
diff options
context:
space:
mode:
authorPatrick Walton <pcwalton@mimiga.net>2011-08-17 18:14:47 -0700
committerPatrick Walton <pcwalton@mimiga.net>2011-08-17 18:14:57 -0700
commitf17edf9829e88090445a7f8b3e74979ca08ecfa0 (patch)
treefd90dd7fc3cbba3c4aa6efd9cb64525bb359807c /src/rt/rust_upcall.cpp
parent0b7af403843d54c3200f8f9accbd2b279d6a7a0c (diff)
downloadrust-f17edf9829e88090445a7f8b3e74979ca08ecfa0.tar.gz
rust-f17edf9829e88090445a7f8b3e74979ca08ecfa0.zip
rustc: Use obstacks in lieu of dynamically-allocated frames only when the frame is actually dynamically-sized
Diffstat (limited to 'src/rt/rust_upcall.cpp')
-rw-r--r--src/rt/rust_upcall.cpp2
1 files changed, 1 insertions, 1 deletions
diff --git a/src/rt/rust_upcall.cpp b/src/rt/rust_upcall.cpp
index d04de59a4df..ac99f501f25 100644
--- a/src/rt/rust_upcall.cpp
+++ b/src/rt/rust_upcall.cpp
@@ -430,7 +430,7 @@ upcall_dynastack_mark(rust_task *task) {
 /** Allocates space in the dynamic stack and returns it. */
 extern "C" CDECL void *
 upcall_dynastack_alloc(rust_task *task, size_t sz) {
-    return task->dynastack.alloc(sz);
+    return sz ? task->dynastack.alloc(sz) : NULL;
 }
 
 /** Frees space in the dynamic stack. */