From 9ffd060b30b85a1783d6dd81dd41ebf447e9b3e1 Mon Sep 17 00:00:00 2001 From: mame Date: Mon, 15 Nov 2010 14:57:18 +0000 Subject: * eval_intern.h (CHECK_STACK_OVERFLOW): it was not intended to add size_t to a pointer typed VALUE*. Coverity Scan found this defect. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@29800 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- eval_intern.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'eval_intern.h') diff --git a/eval_intern.h b/eval_intern.h index 549953acfc..428a2d81ff 100644 --- a/eval_intern.h +++ b/eval_intern.h @@ -172,7 +172,7 @@ enum ruby_tag_type { #define SCOPE_SET(f) (rb_vm_cref()->nd_visi = (f)) #define CHECK_STACK_OVERFLOW(cfp, margin) do \ - if (((VALUE *)(cfp)->sp) + (margin) + sizeof(rb_control_frame_t) >= ((VALUE *)cfp)) { \ + if ((VALUE *)((char *)(((VALUE *)(cfp)->sp) + (margin)) + sizeof(rb_control_frame_t)) >= ((VALUE *)cfp)) { \ rb_exc_raise(sysstack_error); \ } \ while (0) -- cgit v1.2.3