Commit graph

21841 commits

Author SHA1 Message Date
akr
526d246f71 * ext/pathname/pathname.c (path_each_line): Pathname#each_line
translated from pathname.rb.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@29077 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-08-23 14:16:06 +00:00
nobu
645114b25c * common.mk (version.o): depends on both of version.h and
include/ruby/version.h.   [ruby-dev:42063]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@29076 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-08-23 13:31:10 +00:00
nahi
298a6e1cd5 * backport r29071 from ruby_1_8;
* ext/openssl/ossl_asn1.c (obj_to_asn1bool): fixed ASN1::Boolean 
            encoding issue for OpenSSL 1.0.0 compatibility.
            ASN1::Boolean.new(false).to_der wrongly generated "\1\1\377" which 
            means 'true'. 

            ASN1_TYPE_set of OpenSSL <= 0.9.8 treats value 0x100 as 'false' 
            but OpenSSL >= 1.0.0 treats it as 'true'.  ruby-ossl was using
            0x100 for 'false' for backward compatibility.  Just use 0x0 for
            the case OpenSSL >= OpenSSL 0.9.7.

          * test/openssl/test_asn1.rb: test added.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@29075 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-08-23 04:12:08 +00:00
naruse
d078f51f57 * re.c (rb_reg_search): fix: 4th argument should be regexp
object. patched by shintaro kuwamoto [ruby-dev:41667] #3459

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@29074 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-08-23 03:32:58 +00:00
naruse
815ab02971 * util.c (ruby_strtod): make sure to have digit-sequence after 'p'
for hexadecimal-floating-constant. [ruby-dev:42105]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@29073 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-08-23 03:19:58 +00:00
svn
54f3440959 * 2010-08-23
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@29070 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-08-22 15:24:07 +00:00
tadf
9d2025c881 * lib/date.rb, lib/date/format.rb: [ruby-core:31695]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@29069 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-08-22 15:24:03 +00:00
akr
b25bda4547 * include/ruby/ruby.h (UINT2NUM): fix ifdef condition for LLP64.
reported by Daniel Gutmanas.  [ruby-core:31778]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@29068 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-08-22 00:10:06 +00:00
nobu
119da02e87 * array.c (RAND_UPTO): macro for random number.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@29067 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-08-21 21:46:31 +00:00
nobu
6eb922763f * configure.in: fix typo. a patch from Eric Wong at
[ruby-core:31810].



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@29066 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-08-21 20:55:09 +00:00
wanabe
df5f6825db * test/ruby/test_super.rb: add test.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@29065 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-08-21 14:38:17 +00:00
naruse
72c811a3d8 * vm.c: add missing prototype of rb_iseq_clone for r29063.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@29064 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-08-21 11:10:24 +00:00
wanabe
d1b77f5eee * vm.c (vm_define_method): copy iseq to avoid overwriting iseq->klass.
#2502, #3136. see #2420.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@29063 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-08-21 10:00:55 +00:00
svn
a161f12435 * 2010-08-21
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@29062 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-08-21 08:37:31 +00:00
akr
86b26898eb * ext/pathname/pathname.c (path_split): Pathname#split translated from
pathname.rb.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@29061 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-08-21 08:37:28 +00:00
naruse
b88a5027b8 Add rdoc about Kernel#<=> [ruby-core:31770]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@29060 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-08-20 05:13:39 +00:00
svn
fedc3756fb * 2010-08-20
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@29059 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-08-20 01:40:55 +00:00
akr
19fb560d21 * ext/pathname/pathname.c (path_expand_path): Pathname#expand_path
translated from pathname.rb.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@29058 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-08-20 01:40:51 +00:00
nobu
1fa5a50cd0 * tool/make-snapshot (usage): mention versions.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@29056 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-08-19 13:50:43 +00:00
nobu
b7bc826b9e * tool/make-snapshot (usage): add usage.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@29055 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-08-19 13:45:02 +00:00
nobu
c40c2839d6 * tool/make-snapshot (package): accept revision as BRANCH@REV.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@29054 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-08-19 13:34:40 +00:00
akr
85198c5e3c * ext/socket/ancdata.c (ancillary_timestamp): fix a constant type.
* ext/socket/raddrinfo.c (get_afamily): suppress a warning.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@29053 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-08-19 10:54:56 +00:00
akr
b73ea4b64a * thread_pthread.c (native_sleep): suppress a warning for platforms
which time_t is int.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@29052 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-08-19 10:29:30 +00:00
nobu
46d0e03036 * properties.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@29051 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-08-19 10:26:13 +00:00
naruse
3c9efc1d2d Forgot content of r29049.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@29050 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-08-19 10:16:35 +00:00
naruse
bc6c904a8b * tool/merger.rb: Add a tool to merge commits between branches.
developed by URABE Shyouhei

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@29049 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-08-19 10:14:17 +00:00
nahi
15c39b07bd * backport r28621 and r28632 from ruby_1_8;
* ext/openssl/ossl_config.c, ext/openssl/lib/openssl/config.rb,
            ext/openssl/lib/openssl.rb: reimplement OpenSSL::Config in Ruby. 
            Now it should work on windows. 

          * test/openssl/test_config.rb: added tests for OpenSSL::Config#dup.

          * test/openssl/test_config.rb: added tests for Config#clone.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@29048 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-08-19 08:22:31 +00:00
mrkn
1d04aedb5a * array.c (rb_ary_permutation, rb_ary_repeated_permutation, rb_ary_repeated_combination, rb_ary_product): use ary_make_shared_copy instead of ary_make_substitution. [ruby-dev:42067] [Bug #3708]
* test/ruby/test_array.rb (test_product, test_repeated_permutation, test_repeated_combination): append assertions against [Bug #3708].

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@29044 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-08-19 03:10:15 +00:00
naruse
fee5e4ff5f * enum.c (enum_inject): fix typo of rdoc.
patched by Andrei Kulakov [ruby-core:31768]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@29043 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-08-19 02:12:32 +00:00
akr
078d19b29f * ext/pathname/pathname.c (path_extname): Pathname#extname translated
from pathname.rb.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@29042 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-08-19 01:06:49 +00:00
svn
bacb45c877 * 2010-08-19
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@29041 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-08-18 21:03:36 +00:00
nobu
eba16d7444 * vm_insnhelper.c (vm_push_frame): initialize block_iseq. a patch
from Peter Weldon at [ruby-core:31757].



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@29040 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-08-18 21:03:32 +00:00
mrkn
354e376028 forget to commit.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@29039 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-08-18 10:13:54 +00:00
mrkn
dbb05925f7 * array.c (ary_make_shared): revert r29037, it occurs SEGV some situations.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@29038 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-08-18 10:11:06 +00:00
mrkn
4023ffa92f * array.c (ary_make_shared), test/ruby/test_array.rb (test_permutation): always return the original array when it is shared. [ruby-dev:42067] [Bug #3708]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@29037 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-08-18 09:42:36 +00:00
svn
21cf543d38 * 2010-08-18
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@29024 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-08-17 16:53:28 +00:00
naruse
ce5827c6fb * regcomp.c: revert r26701; it introduces Bug #3681.
[ruby-core:31677]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@29023 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-08-17 16:53:25 +00:00
akr
3eabe19ea9 * test/ruby/test_io.rb (test_threaded_flush): test "hi" is not output
twice.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@29022 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-08-17 11:06:22 +00:00
naruse
e44f5bcbd9 * lib/date.rb: Re-revert the part of r28950.
It reverted the part of r28619.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@29021 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-08-17 06:18:53 +00:00
akr
05745ccfb3 * ext/pathname/pathname.c (path_dirname): Pathname#dirname translated
from pathname.rb.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@29020 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-08-17 04:02:32 +00:00
nobu
1572070fa0 Tue Aug 17 07:50:37 2010 Nobuyoshi Nakada <nobu@ruby-lang.org>
* ext/readline/extconf.rb: check functions more.
	  [ruby-core:31722]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@29019 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-08-16 22:50:40 +00:00
nobu
94fc95c8b0 Tue Aug 17 07:42:43 2010 Nobuyoshi Nakada <nobu@ruby-lang.org>
* string.c (str_make_independent_expand): set capacity properly. a
	  patch from Peter Weldon at [ruby-core:31734].  [ruby-core:31653]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@29018 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-08-16 22:42:46 +00:00
nobu
0afddf7b0a Tue Aug 17 07:38:43 2010 Nobuyoshi Nakada <nobu@ruby-lang.org>
* gem_prelude.rb, lib/rubygems.rb (Gem.suffixes): include empty
	  suffix.  [ruby-core:31730]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@29017 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-08-16 22:38:46 +00:00
akr
adff6d4477 * ext/pathname/pathname.c (path_basename): unused variable removed.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@29015 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-08-16 13:16:41 +00:00
akr
16cd13c051 * ext/pathname/pathname.c (path_basename): Pathname#basename translated
from pathname.rb.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@29014 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-08-16 12:40:10 +00:00
nari
66c25e4ca1 * gc.c (gc_profile_result): Index begins with 1.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@29013 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-08-16 11:31:58 +00:00
nari
a5207399bd * gc.c (gc_profile_result): use size_t. based on patches from
Tomoaki NISHIYAMA <tomoakin@kenroku.kanazawa-u.ac.jp> at
[ruby-dev:42042].

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@29012 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-08-16 11:31:54 +00:00
nobu
a043fb8642 From b80689141673b93e8d12968c3196ec6a2331da45 Mon Sep 17 00:00:00 2001
From: Nobuyoshi Nakada <nobu@ruby-lang.org>
Date: Mon, 16 Aug 2010 18:55:11 +0900
Subject: [PATCH 2/2] 	* util.c (ruby_dtoa, ruby_hdtoa): use same representations for
 	  Infinity and NaN.  a part of a patch from Peter Weldon at
 	  [ruby-core:31725].

---
 util.c |   14 ++++++++------
 1 files changed, 8 insertions(+), 6 deletions(-)

diff --git a/util.c b/util.c
index 065b2f1..76ba457 100644
--- a/util.c
+++ b/util.c
@@ -3145,6 +3145,10 @@ freedtoa(char *s)
 }
 #endif

+static const char INFSTR[] = "Infinity";
+static const char NANSTR[] = "NaN";
+static const char ZEROSTR[] = "0";
+
 /* dtoa for IEEE arithmetic (dmg): convert double to ASCII string.
  *
  * Inspired by "How to Print Floating-Point Numbers Accurately" by
@@ -3263,9 +3267,9 @@ ruby_dtoa(double d_, int mode, int ndigits, int *decpt, int *sign, char **rve)
         *decpt = 9999;
 #ifdef IEEE_Arith
         if (!word1(d) && !(word0(d) & 0xfffff))
-            return rv_strdup("Infinity", rve);
+            return rv_strdup(INFSTR, rve);
 #endif
-        return rv_strdup("NaN", rve);
+        return rv_strdup(NANSTR, rve);
     }
 #endif
 #ifdef IBM
@@ -3273,7 +3277,7 @@ ruby_dtoa(double d_, int mode, int ndigits, int *decpt, int *sign, char **rve)
 #endif
     if (!dval(d)) {
         *decpt = 1;
-        return rv_strdup("0", rve);
+        return rv_strdup(ZEROSTR, rve);
     }

 #ifdef SET_INEXACT
@@ -3897,8 +3901,6 @@ ruby_each_words(const char *str, void (*func)(const char*, int, void*), void *ar

 #define	DBL_MANH_SIZE	20
 #define	DBL_MANL_SIZE	32
-#define	INFSTR	"Infinity"
-#define	NANSTR	"NaN"
 #define	DBL_ADJ	(DBL_MAX_EXP - 2)
 #define	SIGFIGS	((DBL_MANT_DIG + 3) / 4 + 1)
 #define dexp_get(u) ((int)(word0(u) >> Exp_shift) & ~Exp_msk1)
@@ -3959,7 +3961,7 @@ ruby_hdtoa(double d, const char *xdigs, int ndigits, int *decpt, int *sign,
 	}
 	else if (d == 0.0) { /* FP_ZERO */
 	    *decpt = 1;
-	    return rv_strdup("0", rve);
+	    return rv_strdup(ZEROSTR, rve);
 	}
 	else if (dexp_get(u)) { /* FP_NORMAL */
 	    *decpt = dexp_get(u) - DBL_ADJ;
--
1.7.0.4

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@29011 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-08-16 10:23:22 +00:00
nobu
d17ff1a6a5 From 75db84d6ec7c9ef5fd05e5835ac1004df8ea7e2a Mon Sep 17 00:00:00 2001
From: Nobuyoshi Nakada <nobu@ruby-lang.org>
Date: Mon, 16 Aug 2010 18:50:06 +0900
Subject: [PATCH 1/2] 	* util.c (ruby_hdtoa): fixed buffer overrun.  based on a patch
 	  from Peter Weldon at [ruby-core:31725].

---
 util.c |    6 +++---
 1 files changed, 3 insertions(+), 3 deletions(-)

diff --git a/util.c b/util.c
index 97b2d6c..065b2f1 100644
--- a/util.c
+++ b/util.c
@@ -3951,15 +3951,15 @@ ruby_hdtoa(double d, const char *xdigs, int ndigits, int *decpt, int *sign,

 	if (isinf(d)) { /* FP_INFINITE */
 	    *decpt = INT_MAX;
-	    return (nrv_alloc(INFSTR, rve, sizeof(INFSTR) - 1));
+	    return rv_strdup(INFSTR, rve);
 	}
 	else if (isnan(d)) { /* FP_NAN */
 	    *decpt = INT_MAX;
-	    return (nrv_alloc(NANSTR, rve, sizeof(NANSTR) - 1));
+	    return rv_strdup(NANSTR, rve);
 	}
 	else if (d == 0.0) { /* FP_ZERO */
 	    *decpt = 1;
-	    return (nrv_alloc("0", rve, 1));
+	    return rv_strdup("0", rve);
 	}
 	else if (dexp_get(u)) { /* FP_NORMAL */
 	    *decpt = dexp_get(u) - DBL_ADJ;
--
1.7.0.4

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@29010 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-08-16 10:22:36 +00:00
nobu
5269e14162 * ChangeLog: cleaned.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@29009 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-08-16 10:22:33 +00:00