aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--ChangeLog6
-rw-r--r--eval_error.c2
2 files changed, 7 insertions, 1 deletions
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 <usa@ruby-lang.org>
+
+ * 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 <shibata.hiroshi@gmail.com>
* 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);
}