* hash.c (rb_hash_flatten): fix behavior of flatten(-1).
  [ruby-dev:47988] [Bug #9533]

* test/ruby/test_array.rb: test for above.

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

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@45058 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* hash.c (rb_hash_flatten): fix behavior of flatten(0).
  [ruby-dev:47988] [Bug #9533]

* test/ruby/test_array.rb: test for above. patch is from
  Takeshi Sasaki.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@45059 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* ext/socket/raddrinfo.c (numeric_getaddrinfo): Use xcalloc.
  Suggested by Eric Wong.
  https://bugs.ruby-lang.org/issues/9525#note-14



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@45063 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
gc.c: RB_GC_GUARD should be robust enough for any compiler

* include/ruby/ruby.h (RB_GC_GUARD):
  use rb_gc_guarded_ptr_val on non-GCC/MSC
* gc.c (rb_gc_guarded_ptr_val): rename and adjust argument.
  RB_GC_GUARD should be robust enough for any compiler.
  [ruby-core:60816] [Bug #7805]

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

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@45065 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
socket: sendmsg/recvmsg only retries blocking on errors

* ext/socket/ancdata.c (bsock_sendmsg_internal): only retry on error
  (bsock_recvmsg_internal): ditto
* test/socket/test_unix.rb: test above for infinite loop

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@45066 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
*  test/monitor/test_monitor.rb: remove unused variabels.
*  test/resolv/test_dns.rb: ditto.
*  test/rexml/test_functions.rb: ditto.
*  test/rss/test_setup_maker_itunes.rb: ditto.

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

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

* test/logger: split for each test cases.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@45070 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
logger.rb: fix midnight log rotation miss

* lib/logger.rb (Logger::LogDevice#check_shift_log): compare the
  current time with the time for the next rotation to fix rotation
  miss when date changed between the comparison and log writing.
  based on the patch by megayu <yuhg2310 AT gmail.com>.
  [Fixes GH-539]

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

* lib/logger.rb (next_rotate_time, previous_period_end): consider
  DST change.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@45072 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
test_logdevice.rb: run iff timezene supported

* test/logger/test_logdevice.rb (test_shifting_dst_change): test
  only on platforms where timezone is supported.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@45073 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
class.c: do nothing if copying self

* class.c (rb_mod_init_copy): do nothing if copying self.
  [ruby-dev:47989] [Bug #9535]
* hash.c (rb_hash_initialize_copy): ditto.

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