diff options
| -rw-r--r-- | src/symbol.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/src/symbol.c b/src/symbol.c index 5c55e5b65..1736a12b7 100644 --- a/src/symbol.c +++ b/src/symbol.c @@ -9,6 +9,7 @@ #include "mruby.h" #include "mruby/khash.h" #include "mruby/string.h" +#include "mruby/dump.h" /* ------------------------------------------------------ */ typedef struct symbol_name { @@ -38,7 +39,7 @@ KHASH_DEFINE (n2s, symbol_name, mrb_sym, TRUE, sym_hash_func, sym_hash_equal) static void sym_validate_len(mrb_state *mrb, size_t len) { - if (len > (UINT16_MAX-1)) { /* UINT16_MAX is reverved */ + if (len >= RITE_LV_NULL_MARK) { mrb_raise(mrb, E_ARGUMENT_ERROR, "symbol length too long"); } } |
