diff options
| author | Patrick Walton <pcwalton@mimiga.net> | 2011-07-06 15:06:30 -0700 |
|---|---|---|
| committer | Patrick Walton <pcwalton@mimiga.net> | 2011-07-06 15:07:04 -0700 |
| commit | 91eb63eaee238061d278ecb8609775ac8f7aced8 (patch) | |
| tree | 8a42a6cb705bcde49f17c9d3a114a36bf1d8bbf5 /src/rt/rust_kernel.cpp | |
| parent | 2f7bc90514c650fca4947835998458c56439cf33 (diff) | |
| download | rust-91eb63eaee238061d278ecb8609775ac8f7aced8.tar.gz rust-91eb63eaee238061d278ecb8609775ac8f7aced8.zip | |
rt: Add a stack check to upcall_get_type_desc
Diffstat (limited to 'src/rt/rust_kernel.cpp')
| -rw-r--r-- | src/rt/rust_kernel.cpp | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/src/rt/rust_kernel.cpp b/src/rt/rust_kernel.cpp index 8a75e1adcbc..85a6178ded7 100644 --- a/src/rt/rust_kernel.cpp +++ b/src/rt/rust_kernel.cpp @@ -122,6 +122,17 @@ rust_kernel::log(uint32_t level, char const *fmt, ...) { } void +rust_kernel::fatal(char const *fmt, ...) { + char buf[BUF_BYTES]; + va_list args; + va_start(args, fmt); + vsnprintf(buf, sizeof(buf), fmt, args); + _log.trace_ln(NULL, (uint32_t)0, buf); + exit(1); + va_end(args); +} + +void rust_kernel::pump_message_queues() { for (size_t i = 0; i < message_queues.length(); i++) { rust_message_queue *queue = message_queues[i]; |
