io.c: keep fptr read-closed

* io.c (rb_io_close_read): keep fptr in write_io to be discarded, to
  fix freed pointer access when it is in use by other threads, and get
  rid of potential memory/fd leak.

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

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43113 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
io.c: get rid of race condition

* io.c (rb_io_close_write): detach tied IO for writing before closing
  to get rid of race condition.  [ruby-list:49598]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43114 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Add NEWS about RbConfig::SIZEOF

https://bugs.ruby-lang.org/issues/8568

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43115 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* vm_core.h: use __has_attribute() instead of __clang__major__ because
  clang says "Note that marketing version numbers should not be used
  to check for language features, as different vendors use different
  numbering schemes. Instead, use the Feature Checking Macros."
  http://clang.llvm.org/docs/LanguageExtensions.html

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43116 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
io.c: wait child process after close_read

* io.c (rb_io_close_read): duplex IO should wait its child process
  even after close_read.

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

* test/ruby/test_io.rb (tesst_pid_after_close_read): test for r43117.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43118 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* gc.c: relax GC condition due to malloc_limit.
* gc.c (GC_MALLOC_LIMIT_MAX): change default value
  (256MB -> 512MB) and permit zero to ignore max value.
* gc.c (vm_malloc_increase, vm_xrealloc): do not cause GC on realloc.
* gc.c (gc_before_sweep): change debug messages.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43119 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* random.c (make_seed_value): a local array declaration was accessed
  out of scope.  Coverity Scan found this bug.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43120 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* ext/socket/ifaddr.c (rsock_getifaddrs): fix possible memory leak.
  When a system had no interface, this function used xmalloc for root
  but did not return any reference to it.  This patch fixes it by
  immediately returning an empty array if no interface is found.
  Coverity Scan found this bug.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43121 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* misc/ruby-additional.el: Properly quote the body.  An unquoted
  body given to eval-after-load is evaluated immediately!

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

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43123 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* ext/thread/thread.c (Init_thread): move outer module condition.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43124 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* ext/thread/thread.c (ALIAS_GLOBAL_CONST): fix typo, GLOBCAL.

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

* tool/rbinstall.rb: install default targets (:local, :ext) first,
  very time consuming tasks later.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43126 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* hash.c (env_update): [DOC] fix expected output, should be 0 instead
  of 10. Patch by @yakko. [GH-411]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43127 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
thread_pthread.c: set thread name

* thread_pthread.c (thread_timer): set timer thread name on OSX too.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43128 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
common.mk: use RUNRUBY for test-sample

* common.mk (yes-test-sample): use RUNRUBY instead of MINIRUBY to set
  runtime library path and run the built ruby.  [Bug #8971]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43129 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* gc.c: define gc_profile_record::allocated_size if
  CALC_EXACT_MALLOC_SIZE is true.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43130 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
win32.c: disable console colorizing

* win32/win32.c (console_emulator_p, constat_handle): disable built-in
  console colorizing when console-emulator-like DLL is injected.
  [Feature #8201]

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