diff options
author | glass <glass@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2013-01-09 00:59:30 +0000 |
---|---|---|
committer | glass <glass@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2013-01-09 00:59:30 +0000 |
commit | bc0577c6c8607d57a13282a34c80f64fe9bf1eef (patch) | |
tree | 761a7885d5aafcd54a17a68e97b0567689bb2ba6 /load.c | |
parent | 4ddf057b9aace467b707347209bb572ea2643c32 (diff) |
* load.c (load_lock): fix not to delete thread shield twice.
it may break the shield locked by another thread.
[Bug #7530] [ruby-core:50645]
* test/ruby/test_require.rb: a test for above.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38744 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'load.c')
-rw-r--r-- | load.c | 3 |
1 files changed, 0 insertions, 3 deletions
@@ -668,9 +668,6 @@ load_lock(const char *ftptr) } switch (rb_thread_shield_wait((VALUE)data)) { case Qfalse: - data = (st_data_t)ftptr; - st_delete(loading_tbl, &data, 0); - return 0; case Qnil: return 0; } |