From 9d3a864a86ffa3f14fa0b9682f950717e603d263 Mon Sep 17 00:00:00 2001 From: mattn Date: Tue, 5 Mar 2013 10:48:05 +0900 Subject: Skip end of loop in mrb_sym2name_len --- src/symbol.c | 15 +++++++-------- 1 file 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 -- cgit v1.2.3