summaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorYukihiro "Matz" Matsumoto <[email protected]>2018-08-29 13:12:03 +0900
committerYukihiro "Matz" Matsumoto <[email protected]>2018-08-29 13:15:24 +0900
commit2a88a546b220d9abe483b27c81d5f12c3342f37f (patch)
tree02b2475be4574694e2f338ca068379f8363d6bfa
parent6aa091e5aadafa11d9f10d9fa7d821cf5e5e379d (diff)
downloadmruby-2a88a546b220d9abe483b27c81d5f12c3342f37f.tar.gz
mruby-2a88a546b220d9abe483b27c81d5f12c3342f37f.zip
Fix type of `eidx` and `ridx` from `uint8_t` to `uint16_t`; fix #4088
A byte was too small to hold ensure&rescue stacks indexes.
-rw-r--r--include/mruby.h4
1 files changed, 2 insertions, 2 deletions
diff --git a/include/mruby.h b/include/mruby.h
index 1c888bb46..2d30d3d27 100644
--- a/include/mruby.h
+++ b/include/mruby.h
@@ -152,9 +152,9 @@ struct mrb_context {
mrb_callinfo *cibase, *ciend;
uint16_t *rescue; /* exception handler stack */
- int rsize;
+ uint16_t rsize;
struct RProc **ensure; /* ensure handler stack */
- uint8_t esize, eidx;
+ uint16_t esize, eidx;
enum mrb_fiber_state status;
mrb_bool vmexec;