summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authormatz <matz@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2008-11-21 11:46:14 +0000
committermatz <matz@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2008-11-21 11:46:14 +0000
commitc7382e101e183feb268e4f9b0869a328269a2516 (patch)
treed7e0df24cb98704ae6d611d74a57692a7409ecf4
parent874b241290647d20c8956b67fa7ca6fb0badda0a (diff)
* vm.c (thread_free): th->vm may be NULL when pthread_create
failed for ENOMEM. [ruby-dev:37095] git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@20291 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
-rw-r--r--ChangeLog5
-rw-r--r--vm.c2
2 files changed, 6 insertions, 1 deletions
diff --git a/ChangeLog b/ChangeLog
index 223e2873f..c7384b5c9 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+Fri Nov 21 16:06:54 2008 Yukihiro Matsumoto <matz@ruby-lang.org>
+
+ * vm.c (thread_free): th->vm may be NULL when pthread_create
+ failed for ENOMEM. [ruby-dev:37095]
+
Thu Nov 20 07:33:15 2008 Yukihiro Matsumoto <matz@ruby-lang.org>
* lib/logger.rb (Logger): should handle the case that cvs/svn do
diff --git a/vm.c b/vm.c
index 5bf684237..2bb050d19 100644
--- a/vm.c
+++ b/vm.c
@@ -1486,7 +1486,7 @@ thread_free(void *ptr)
}
#endif
- if (th->vm->main_thread == th) {
+ if (th->vm && th->vm->main_thread == th) {
RUBY_GC_INFO("main thread\n");
}
else {