ruby-changes:16274
From: wyhaines <ko1@a...>
Date: Thu, 10 Jun 2010 06:52:41 +0900 (JST)
Subject: [ruby-changes:16274] Ruby:r28242 (ruby_1_8_6): ext/nkf/nkf-utf8/nkf.c: Backport #2953 ; change nkf_char buffer in numchar_getc() size form 8 to 10 to avoid potential for a segfault.
wyhaines 2010-06-10 06:52:26 +0900 (Thu, 10 Jun 2010) New Revision: 28242 http://svn.ruby-lang.org/cgi-bin/viewvc.cgi?view=rev&revision=28242 Log: ext/nkf/nkf-utf8/nkf.c: Backport #2953 [ruby-dev:40606]; change nkf_char buffer in numchar_getc() size form 8 to 10 to avoid potential for a segfault. test/nkf/test_nkf.rb: Added a test for the change. Modified files: branches/ruby_1_8_6/ChangeLog branches/ruby_1_8_6/ext/nkf/nkf-utf8/nkf.c branches/ruby_1_8_6/test/nkf/test_nkf.rb branches/ruby_1_8_6/version.h Index: ruby_1_8_6/ext/nkf/nkf-utf8/nkf.c =================================================================== --- ruby_1_8_6/ext/nkf/nkf-utf8/nkf.c (revision 28241) +++ ruby_1_8_6/ext/nkf/nkf-utf8/nkf.c (revision 28242) @@ -5004,7 +5004,7 @@ nkf_char (*g)(FILE *) = i_ngetc; nkf_char (*u)(nkf_char c ,FILE *f) = i_nungetc; int i = 0, j; - nkf_char buf[8]; + nkf_char buf[10]; long c = -1; buf[i] = (*g)(f); Index: ruby_1_8_6/ChangeLog =================================================================== --- ruby_1_8_6/ChangeLog (revision 28241) +++ ruby_1_8_6/ChangeLog (revision 28242) @@ -1,6 +1,12 @@ +Thu Jun 10 06:46:00 Kirk Haines <khaines@r...> + + * ext/nkf/nkf-utf8/nkf.c: Backport #2953 [ruby-dev:40606]; change nkf_char buffer in numchar_getc() size form 8 to 10 to avoid potential for a segfault. + + * test/nkf/test_nkf.rb: Added a test for the change. + Thu Jun 10 01:40:00 Kirk Haines <khaines@r...> - * lib/delegate.rb: Backport #1781 [ruby-core:24356]; allow a block to be properly passed through. + * lib/delegate.rb: Backport #1781 [ruby-core:24356]; allow a block to be properly passed through. r28239 Wed Jun 9 04:35:00 Kirk Haines <khaines@r...> Index: ruby_1_8_6/version.h =================================================================== --- ruby_1_8_6/version.h (revision 28241) +++ ruby_1_8_6/version.h (revision 28242) @@ -2,7 +2,7 @@ #define RUBY_RELEASE_DATE "2010-06-10" #define RUBY_VERSION_CODE 186 #define RUBY_RELEASE_CODE 20100610 -#define RUBY_PATCHLEVEL 412 +#define RUBY_PATCHLEVEL 413 #define RUBY_VERSION_MAJOR 1 #define RUBY_VERSION_MINOR 8 Index: ruby_1_8_6/test/nkf/test_nkf.rb =================================================================== --- ruby_1_8_6/test/nkf/test_nkf.rb (revision 28241) +++ ruby_1_8_6/test/nkf/test_nkf.rb (revision 28242) @@ -13,4 +13,10 @@ assert_equal(::NKF::EUC, NKF.guess(str_euc)) end + def test_numchar_input + bug2953 = '[ruby-dev:40606]' + assert_equal("A", NKF.nkf("-w --numchar-input", "A"), bug2953) + assert_equal("B", NKF.nkf("-w --numchar-input", "B"), bug2953) + end + end -- ML: ruby-changes@q... Info: http://www.atdot.net/~ko1/quickml/