summaryrefslogtreecommitdiffhomepage
path: root/src
diff options
context:
space:
mode:
authormattn <[email protected]>2013-03-05 10:48:05 +0900
committermattn <[email protected]>2013-03-05 10:48:05 +0900
commit9d3a864a86ffa3f14fa0b9682f950717e603d263 (patch)
treeec59fb3989d7fec92f9d14986f548e695490a9ac /src
parent5a153851c3bc4aa96840438441d5a4c96906b299 (diff)
downloadmruby-9d3a864a86ffa3f14fa0b9682f950717e603d263.tar.gz
mruby-9d3a864a86ffa3f14fa0b9682f950717e603d263.zip
Skip end of loop in mrb_sym2name_len
Diffstat (limited to 'src')
-rw-r--r--src/symbol.c15
1 files changed, 7 insertions, 8 deletions
diff --git a/src/symbol.c b/src/symbol.c
index 81c28d265..72a5bea6b 100644
--- a/src/symbol.c
+++ b/src/symbol.c
@@ -81,16 +81,15 @@ mrb_sym2name_len(mrb_state *mrb, mrb_sym sym, int *lenp)
for (k = kh_begin(h); k != kh_end(h); k++) {
if (kh_exist(h, k)) {
- if (kh_value(h, k) == sym) break;
+ if (kh_value(h, k) == sym) {
+ sname = kh_key(h, k);
+ *lenp = sname.len;
+ return sname.name;
+ }
}
}
- if (k == kh_end(h)) {
- *lenp = 0;
- return NULL; /* missing */
- }
- sname = kh_key(h, k);
- *lenp = sname.len;
- return sname.name;
+ *lenp = 0;
+ return NULL; /* missing */
}
void