* process.c (rb_daemon): daemon(3) is implemented with fork(2).
  Therefore it needs rb_thread_atfork(). (and revert r41903)

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41910 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
call GC.start before fork-related tests to decrease GC cost on fork children

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41911 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
probes_to_wiki.rb: fix comment and reduce unnecessary array

* tool/probes_to_wiki.rb: fix usage comment.  use Enumerable#grep
  which yields each elements to reduce unnecessary array.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41912 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* bignum.c: Don't use toom3 after once karatsuba is choosen.
  (mulfunc_t): New type.
  (bary_mul_toom3_start): Renamed from bary_mul.
  (bary_mul_karatsuba_start): Renamed from bary_mul.
  (bary_mul_balance_with_mulfunc): Renamed from bary_mul_balance and
  new argument, mulfunc, is added.
  (rb_big_mul_balance): Invoke bary_mul_balance_with_mulfunc with
  bary_mul_toom3_start.
  (bary_mul_karatsuba): Invoke bary_mul_karatsuba_start instead of
  bary_mul.
  (bary_mul_precheck): Extracted from bary_mul.
  (bary_mul_karatsuba_branch): Extracted from bary_mul.
  (bary_mul_karatsuba_start): New function to call bary_mul_precheck
  and bary_mul_karatsuba_branch.
  (bary_mul_toom3_branch): Extracted from bary_mul.
  (bary_mul_toom3_start): New function to call bary_mul_precheck and
  bary_mul_toom3_branch.
  (bary_mul): Just call bary_mul_toom3_start.
  Arguments for work memory are removed.
  (rb_cstr_to_inum): Follow the bary_mul change.
  (bigmul0): Ditto.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41913 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* lib/securerandom.rb: Refactor conditions by Rafal Chmiel
  [Fixes GH-326] https://github.com/ruby/ruby/pull/326


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41914 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* sprintf.c: Fix typo patch by @hynkle [Fixes GH-357]
  https://github.com/ruby/ruby/pull/357


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41915 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* test/drb/ut_eq.rb: Use localhost for drb tests [Bug #7311]
  Patch by Vit Ondruch [ruby-core:49101]
* test/drb/ut_array.rb: ditto
* test/drb/ut_array_drbssl.rb: ditto


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41916 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* array.c: Replace confusing example for #reverse_each in overview
  Patch by Earl St Sauver [Fixes documenting-ruby/ruby-12]
  https://github.com/documenting-ruby/ruby/pull/12


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41917 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
string.c: check null char

* string.c (rb_string_value_cstr): check null char in char, not in
  byte.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41918 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
string.c: multi-byte terminator

* string.c (rb_string_value_cstr): fill minimum length of the encoding
  as the terminator.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41919 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
string.c: multi-byte terminator

* string.c (rb_enc_str_new, rb_str_set_len, rb_str_resize): fill
  minimum length of the encoding as the terminator.
* string.c (str_buf_cat, rb_str_buf_append, rb_str_splice_0): ditto.
* string.c (str_make_independent_expand, rb_str_modify_expand): make
  the capacity enough for multi-byte terminator.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41920 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
transcode.c: fill terminator

* transcode.c (str_encode_associate): fill terminator after conversion.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41921 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
win32/registry.rb: remove workaround

* ext/dl/win32/lib/win32/registry.rb (Win32::Registry::API#make_wstr):
  remove workaround to append WCHAR terminator.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41922 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
win32.c: fix infinite recursion

* win32/win32.c (rb_w32_pow): undef pow to get rid of infinite
  recursive call.  re-fix [Bug #8495].  [ruby-core:55923] [Bug #8621]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41923 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* hash.c (rb_hash_keys): set array capa to RHASH_SIZE().

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41924 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* 2013-07-12

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41925 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* hash.c (rb_hash_values): set array capa to RHASH_SIZE().

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41926 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* hash.c (rb_hash_size): use RHASH_SIZE().

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41927 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* hash.c (recursive_hash): use RHASH_SIZE() to check hash size.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41928 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* hash.c (rb_hash_reject_bang): do not call rb_hash_foreach() if RHash
  has ntbl and it is empty.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41929 b2dd03c8-39d4-4d8f-98ff-823fe69b080e