[前][次][番号順一覧][スレッド一覧]

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", "&#x000041;"), bug2953)
+    assert_equal("B", NKF.nkf("-w --numchar-input", "&#0000066;"), bug2953)
+  end
+
 end

--
ML: ruby-changes@q...
Info: http://www.atdot.net/~ko1/quickml/

[前][次][番号順一覧][スレッド一覧]