diff --git a/ChangeLog b/ChangeLog index 0f8b7f34a0..b0b263c200 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,9 @@ +Sat Jan 10 12:32:44 2015 NAKAMURA Usaku + + * eval_error.c (error_print): pos and len parameters of rb_str_substr() + are counted by characters, not bytes. use rb_str_subseq() instead. + [Bug #10727] [ruby-core:67473] + Sat Jan 10 10:58:55 2015 SHIBATA Hiroshi * complex.c: removed commented-out code. diff --git a/eval_error.c b/eval_error.c index 12cfe36571..405d738236 100644 --- a/eval_error.c +++ b/eval_error.c @@ -169,7 +169,7 @@ error_print(void) warn_print(")\n"); } if (tail) { - warn_print_str(rb_str_substr(e, tail - einfo, elen - len - 1)); + warn_print_str(rb_str_subseq(e, tail - einfo, elen - len - 1)); } if (tail ? einfo[elen-1] != '\n' : !epath) warn_print2("\n", 1); }