summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--ChangeLog5
-rw-r--r--vm.c4
2 files changed, 8 insertions, 1 deletions
diff --git a/ChangeLog b/ChangeLog
index 491e0d881..1749b99b5 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,8 @@
-Fri Aug 1 20:55:27 2008 NARUSE, Yui <naruse@ruby-lang.org>
+Fri Aug 1 21:29:56 2008 Yusuke Endoh <mame@tsg.ne.jp>
+
+ * vm.c (Init_BareVM): check failure of malloc().
+Fri Aug 1 20:55:27 2008 NARUSE, Yui <naruse@ruby-lang.org>
* enc/trans/japanese.c (to_SHIFT_JIS_EF_BF_offsets): add U+FFF3,
U+FFF4, U+FFF5.
diff --git a/vm.c b/vm.c
index 6636a5225..25bf1b093 100644
--- a/vm.c
+++ b/vm.c
@@ -1851,6 +1851,10 @@ Init_BareVM(void)
/* VM bootstrap: phase 1 */
rb_vm_t * vm = malloc(sizeof(*vm));
rb_thread_t * th = malloc(sizeof(*th));
+ if (!vm || !th) {
+ fprintf(stderr, "[FATAL] failed to allocate memory\n");
+ exit(EXIT_FAILURE);
+ }
MEMZERO(th, rb_thread_t, 1);
rb_thread_set_current_raw(th);