summaryrefslogtreecommitdiff
path: root/vm_insnhelper.h
diff options
context:
space:
mode:
authorwanabe <wanabe@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2010-01-11 09:33:37 +0000
committerwanabe <wanabe@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2010-01-11 09:33:37 +0000
commit760f0b06476729184aec1715d8da21788e9c8be1 (patch)
treeadef7687a9ff39ac9652ec001c4645391156fb60 /vm_insnhelper.h
parenta3973ab1ba9fe5b836553ba39522307e29929976 (diff)
* vm_insnhelper.h (GET_BLOCK_PTR): return 0 when in class frame.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@26283 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'vm_insnhelper.h')
-rw-r--r--vm_insnhelper.h3
1 files changed, 2 insertions, 1 deletions
diff --git a/vm_insnhelper.h b/vm_insnhelper.h
index 79eb885..095b417 100644
--- a/vm_insnhelper.h
+++ b/vm_insnhelper.h
@@ -168,7 +168,8 @@ extern VALUE ruby_vm_const_missing_count;
} while (0)
#define GET_BLOCK_PTR() \
- ((rb_block_t *)(GC_GUARDED_PTR_REF(GET_LFP()[0])))
+ ((rb_block_t *)(GC_GUARDED_PTR_REF(GET_LFP()[0] & \
+ ((GET_LFP()[0] & 0x02) - 0x02))))
/**********************************************************/
/* deal with control flow 3: exception */