summaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
-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