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

ruby-changes:8821

From: matz <ko1@a...>
Date: Wed, 26 Nov 2008 00:28:37 +0900 (JST)
Subject: [ruby-changes:8821] Ruby:r20357 (trunk): * strftime.c (STRFTIME): should add padding for %[xXrR] etc.

matz	2008-11-26 00:28:22 +0900 (Wed, 26 Nov 2008)

  New Revision: 20357

  http://svn.ruby-lang.org/cgi-bin/viewvc.cgi?view=rev&revision=20357

  Log:
    * strftime.c (STRFTIME): should add padding for %[xXrR] etc.
      [ruby-dev:37185] fix: #792

  Modified files:
    trunk/ChangeLog
    trunk/strftime.c

Index: ChangeLog
===================================================================
--- ChangeLog	(revision 20356)
+++ ChangeLog	(revision 20357)
@@ -1,3 +1,8 @@
+Wed Nov 26 00:26:30 2008  Yukihiro Matsumoto  <matz@r...>
+
+	* strftime.c (STRFTIME): should add padding for %[xXrR] etc.
+	  [ruby-dev:37185] fix: #792
+
 Tue Nov 25 16:26:12 2008  Yukihiro Matsumoto  <matz@r...>
 
 	* array.c (rb_ary_times): taint (and untrust) status should be
Index: strftime.c
===================================================================
--- strftime.c	(revision 20356)
+++ strftime.c	(revision 20357)
@@ -295,7 +295,12 @@
 		do { \
 			i = strftime(s, endp - s, fmt, tm); \
 			if (!i) return 0; \
-			s += i; \
+			if (precision > i) {\
+				memmove(s + precision - i, s, i);\
+				memset(s, padding ? padding : ' ', precision - i); \
+				s += precision;	\
+	                }\
+			else s += i; \
 		} while (0)
 
 		if (*format != '%') {

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

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