summaryrefslogtreecommitdiffhomepage
path: root/src/variable.c
diff options
context:
space:
mode:
authorKOBAYASHI Shuji <[email protected]>2019-03-17 16:58:31 +0900
committerKOBAYASHI Shuji <[email protected]>2019-03-17 16:58:31 +0900
commitb588e5a5b7cfc0e7a1c84c235a0f5daa5bf83a47 (patch)
tree3452bf56f464cf3556d63782696c42b2bbb4880e /src/variable.c
parent15b6499c8b9197e885713a7896eaf45419fbef47 (diff)
downloadmruby-b588e5a5b7cfc0e7a1c84c235a0f5daa5bf83a47.tar.gz
mruby-b588e5a5b7cfc0e7a1c84c235a0f5daa5bf83a47.zip
Fix class/instance variable name validation
- `@@?` etc are invalid class variable name. - `@1` etc are invalid instance variable name.
Diffstat (limited to 'src/variable.c')
-rw-r--r--src/variable.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/src/variable.c b/src/variable.c
index b712af261..90efe9e0e 100644
--- a/src/variable.c
+++ b/src/variable.c
@@ -437,7 +437,7 @@ mrb_iv_name_sym_p(mrb_state *mrb, mrb_sym iv_name)
s = mrb_sym2name_len(mrb, iv_name, &len);
if (len < 2) return FALSE;
if (s[0] != '@') return FALSE;
- if (s[1] == '@') return FALSE;
+ if (ISDIGIT(s[1])) return FALSE;
return mrb_ident_p(s+1, len-1);
}