Commit graph

34260 commits

Author SHA1 Message Date
nagachika
0c5503923b merge revision(s) r45954: [Backport #8358]
* configure.in: enable SSE2 on mingw. target='i386-pc-mingw32'.
	  [ruby-core:62095] [Bug #8358]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_1@46467 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-06-19 15:22:15 +00:00
nagachika
5a2f6a4af8 merge revision(s) r45724: [Backport #9776]
* compile.c (compile_array_): make copy a first hash not to modify
	  the argument itself.  keyword splat should be non-destructive.
	  [ruby-core:62161] [Bug #9776]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_1@46451 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-06-16 15:59:16 +00:00
nagachika
12285fc109 merge revision(s) r45521,r45523,r45551: [Backport #9699]
win32.c: wchar conversion

	* win32/win32.c (rb_w32_wstr_to_mbstr, rb_w32_mbstr_to_wstr): make
  WCHAR/mb conversion functions public.
	* dln.c (dln_load): use wchar version to load a library in
	  non-ascii path on Windows.  based on the patch by Bugra Barin
	  <bugrabarin AT hotmail.com> in [ruby-core:61845].  [Bug #9699]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_1@46450 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-06-16 15:42:56 +00:00
nagachika
7fd56bd30f merge revision(s) r45287,r45288,r45289,r45290: [Backport #9600]
process.c: tmp buffer instead of alloca

	* process.c (OBJ2UID1, OBJ2GID1): separate from OBJ2UID and
  OBJ2GID respectively, need given buffers.

	* process.c (OBJ2UID, OBJ2GID): no longer need PREPARE_GETPWNAM
  and PREPARE_GETGRNAM.

	* process.c (obj2uid, obj2gid): use tmp buffer instead of alloca
  to get rid of potential stack overflow.
	* process.c (obj2uid, obj2gid): now getpwnam_r() and getgrnam_r()
	  may need larger buffers than sysconf values, so retry with
	  expanding the buffer when ERANGE is returned.
	  [ruby-core:61325] [Bug #9600]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_1@46449 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-06-16 15:33:10 +00:00
nagachika
b92e03c5fd merge revision(s) r45224,r45228: [Backport #9838]
* gc.c (ruby_gc_set_params): fix building without RGenGC

	* gc.c (ruby_gc_set_params): simplify condition


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_1@46407 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-06-11 14:21:53 +00:00
nagachika
ad5214df98 merge revision(s) r45308,r45316: [Backport #9621]
* ext/objspace/objspace_dump.c: Check fptr before trying to dump RFILE
	  object fd. [GH-562]

	* test/objspace/test_objspace.rb: add test

	* test/objspace/test_objspace.rb (TestObjSpace#test_dump_uninitialized_file):
	  remove dependency on json library.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_1@46403 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-06-10 17:43:49 +00:00
nagachika
089d93ca1d merge revision(s) r45378: [Backport #9658] [Backport #9866]
* configure.in: Fix a build problem with clang and --with-opt-dir.
	  If ruby is configured with --with-opt-dir=dir when using clang
	  as compiler, a warning `clang: warning: argument unused during
	  compilation: '-I dir'` is emitted almost every time clang
	  compiles a file.  Unfortunately, RUBY_CHECK_PRINTF_PREFIX takes
	  any output from the compiler as fatal error, and the check thus
	  fails due to the warning.  This is an attempt to fix the problem
	  by adding a flag -Qunused-arguments to CFLAGS locally in the
	  function to suppress the warning. [ruby-dev:48062] [Bug #9658]
	  [Fixes GH-571] https://github.com/ruby/ruby/pull/571


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_1@46402 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-06-10 17:35:07 +00:00
nagachika
00e41e7174 merge revision(s) r45207,r45208,r45209,r45210: [Backport #9575]
* numeric.c: Create var for rb_intern("<=>")
	* numeric.c: Fix Numeric#step with 0 unit [Bug #9575]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_1@46401 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-06-10 17:24:24 +00:00
nagachika
dcdf8e1c85 * test/ruby/test_string (test_LSHIFT_neary_long_max): extend timeout.
this test fails on some CI environment by timeout.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_1@46398 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-06-10 15:38:34 +00:00
nagachika
1b32155cf8 merge revision(s) r45517,r45544,r45924:
signal.c: check stack overflow by SP

	* signal.c (check_stack_overflow): raise SystemStackError if SP
  register and fault address is in the same page, on x86 linux.
  [EXPERIMENTAL]
	* signal.c (check_stack_overflow): Don't use ucontext_t if ucontext.h
	  is not available.
	  Fixes build on Android (x86).


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_1@46367 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-06-06 16:23:54 +00:00
nagachika
1631809445 merge revision(s) r45302: [Backport #9616]
* class.c (rb_class_subclass_add): use xmalloc

	* class.c (rb_module_add_to_subclasses_list): ditto

	* class.c (rb_class_remove_from_super_subclasses): use xfree

	* class.c (rb_class_remove_from_module_subclasses): ditto
	  [Bug #9616]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_1@46319 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-06-02 15:48:24 +00:00
nagachika
e373773ab3 merge revision(s) r45471: [Backport #9688]
* win32/win32.c (rb_w32_accept, open_ifs_socket, socketpair_internal):
	  reset inherit flag of socket to avoid unintentional inheritance of
	  socket.  note that the return value of SetHandleInformation() is not
	  verified intentionally because old Windows may return an error.
	  [Bug #9688] [ruby-core:61754]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_1@46305 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-06-01 17:21:10 +00:00
nagachika
282462b206 merge revision(s) r45364,r45395,r45396,r45403,r45406: [Backport #9652]
* time.c (time_mload): freeze and preserve marshal-loaded time zone

	* test/ruby/test_time.rb: add test for GC on loaded object
	  [Bug #9652]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_1@46304 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-06-01 17:17:44 +00:00
nagachika
52950d94d1 merge revision(s) r45365: [Backport #9656]
dl/extconf.rb: check for -fno-defer-pop option

	* ext/dl/extconf.rb: check for -fno-defer-pop option, since clang
  5.1 no longer support -fno-defer-pop option.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_1@46303 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-06-01 17:07:21 +00:00
nagachika
5d2ea90418 merge revision(s) r45320,r45321: [Backport #9622]
* vm_insnhelper.c (vm_callee_setup_arg): turn a macro into an
	  inline function.

	* vm_insnhelper.c (vm_callee_setup_arg): disable fastpath if splat
	  argument, since argc may differ for each calls.
	  [ruby-core:61422] [Bug #9622]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_1@46302 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-06-01 17:03:53 +00:00
nagachika
5a22835c22 merge revision(s) r45350: [Backport #9645]
* variable.c (rb_const_set): delete existing entry on redefinition
	  [Bug #9645]

	* test/ruby/test_const.rb (test_redefinition): test for leak


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_1@46301 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-06-01 16:55:58 +00:00
nagachika
fca433e2fd merge revision(s) r45178,r45180,r45183: [Backport #9568]
eval.c: remove unneeded GC guard

	* eval.c (setup_exception): remove RB_GC_GUARD which is no longer
  needed since r41598.
	* eval.c (setup_exception): preserve errinfo across calling #to_s
	  method on the exception.  [ruby-core:61091] [Bug #9568]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_1@46236 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-05-29 15:19:03 +00:00
nagachika
74d6b68229 merge revision(s) r45187,r45205,r45206,r45212,r45213: [Backport #9570]
* numeric.c (ruby_num_interval_step_size): check signs and get rid
	  of implementation dependent behavior of negative division.
	  [ruby-core:61106] [Bug #9570]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_1@46226 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-05-29 12:07:33 +00:00
nagachika
60eeeb70df merge revision(s) r45716: [Backport #9665]
* configure.in (rb_cv_func___builtin_unreachable): try with an
	  external variable not only by a warning, which might not be
	  shown due to the optimization.  [ruby-core:61647] [Bug #9665]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_1@46215 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-05-28 14:54:49 +00:00
nagachika
b6fe6d591c merge revision(s) r45701: [Backport #9771]
* ext/openssl/ossl_asn1.c (ossl_asn1_initialize): SYMID on a value
	  other than Symbol is an undefined behavior.  fix up r31699.
	  [ruby-core:62142] [Bug #9771]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_1@46214 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-05-28 14:44:07 +00:00
nagachika
fc9677332a merge revision(s) r45646: [Backport #9765]
* ext/stringio/stringio.c (strio_putc): fix for non-ascii
	  encoding, like as IO#putc.  [ruby-dev:48114] [Bug #9765]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_1@46213 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-05-28 14:38:54 +00:00
nagachika
7ebed66e59 merge revision(s) r45604: [Backport #9748]
* lib/fileutils.rb (FileUtils#copy_entry): update rdoc about
	  preserve option and permissions, following r31123.
	  [ruby-core:62065] [Bug #9748]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_1@46192 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-05-27 16:05:13 +00:00
nagachika
69eab6991a merge revision(s) r45179,r45564,r45565,r45584,r45585: [Backport #9721]
envutil.rb: move labeled_module and labeled_class

	* test/ruby/envutil.rb (labeled_module, labeled_class): move from
  test/ruby/test_module.rb.
	* proc.c (rb_method_call_with_block, umethod_bind): call with
	  IClass including the module for a module instance method.
	  [ruby-core:61936] [Bug #9721]

	* vm_insnhelper.c (vm_search_super_method): allow bound
	  UnboundMethod case.

	* proc.c (umethod_bind): use the ancestor iclass instead of new
	  iclass to get rid of infinite recursion, if the defined module
	  is already included.  [ruby-core:62014] [Bug #9721]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_1@46190 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-05-27 16:03:12 +00:00
nagachika
41fd33e5fe merge revision(s) r45562: [Backport #9727]
* array.c (ary_reject): may be turned into a shared array during
	  the given block.  [ruby-dev:48101] [Bug #9727]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_1@46188 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-05-27 15:44:36 +00:00
nagachika
cd0a89b093 merge revision(s) r45534: [Backport #9709]
* string.c (str_buf_cat): should round up the capacity by 4KiB,
	  but not number of rooms.  [ruby-core:61886] [Bug #9709]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_1@46187 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-05-27 15:36:32 +00:00
nagachika
909291085c merge revision(s) r45529: [Backport #8182]
* lib/xmlrpc/client.rb (do_rpc): don't check body length.
	  If HTTP content-encoding is used, the length may be different.
	  [Bug #8182] [ruby-core:53811]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_1@46186 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-05-27 15:26:28 +00:00
nagachika
1c9a3e6eb8 merge revision(s) r45520: [Backport #9706]
* ext/date/date_core.c (d_lite_cmp): should compare with #<.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_1@46185 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-05-27 15:19:53 +00:00
nagachika
e60ec9551c merge revision(s) r45045,r45046,r45530: [Backport #9697]
* ext/socket/ipsocket.c (ip_s_getaddress): Don't access freed memory.

	* ext/socket: Wrap struct addrinfo by struct rb_addrinfo.

	* ext/socket/socket.c (sock_s_getnameinfo): Save errno for EAI_SYSTEM.
	  Reported by Saravana kumar.  [ruby-core:61820] [Bug #9697]
	  Fixed by Heesob Park.  [ruby-core:61868]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_1@46054 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-05-22 15:24:30 +00:00
nagachika
a3d95003e1 merge revision(s) r46010:
envutil.rb: fix argument

	* test/ruby/envutil.rb (assert_separately): fix missing `message`
  argument to FailDesc.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_1@46023 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-05-19 14:31:55 +00:00
nagachika
161d6bfe22 merge revision(s) r45553,r45554,r45557,r45558,r45561,r45566,r45567: [Backport #9718]
* array.c (rb_ary_modify): remember shared array owner if a shared
	  array owner is promoted and a shared array is not promoted.
	  Now, shared array is WB-unprotected so that shared arrays are not
	  promoted.  All objects referred from shared array should be marked
	  correctly.
	  [ruby-core:61919] [ruby-trunk - Bug #9718]

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

	* test/ruby/test_array.rb: remove useless `assert'.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_1@46006 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-05-18 15:54:39 +00:00
nagachika
4e71ea3a1a merge revision(s) r45405,r45408: [Backport #9669] [Backport #9740]
* parse.y (lex_state_e, parser_params, f_arglist, parser_yylex):
	  separate EXPR_LABELARG from EXPR_BEG and let newline significant,
	  so that required keyword argument can place at the end of
	  argument list without parentheses.  [ruby-core:61658] [Bug #9669]

	* parse.y (parser_yylex): only a newline after label should be
	  significant.  [ruby-core:61658] [Bug #9669]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_1@46005 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-05-18 15:36:58 +00:00
nagachika
a9006d3af0 merge revision(s) r45374: [Backport #8405]
* lib/csv.rb: Fixed a broken regular expression that was causing
	  CSV to miss escaping some special meaning characters when used
	  in parsing.
	  Reported by David Unric
	  [ruby-core:54986] [Bug #8405]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_1@45956 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-05-15 15:28:16 +00:00
nagachika
67f5f1be20 merge revision(s) r45367,r45387,r45388,r45389: [Backport #9475]
* vm_method.c (rb_method_entry_get_without_cache): get rid of
	  infinite recursion at aliases in a subclass and a superclass.
	  return actually defined class for other than singleton class.
	  [ruby-core:60431] [Bug #9475]

	* vm_method.c (rb_method_entry_get_without_cache): me->klass is 0
	  for a method aliased in a module.  [ruby-core:61636] [Bug #9663]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_1@45955 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-05-15 15:24:05 +00:00
nagachika
d5cf6c1128 merge revision(s) r45637: [Backport #9726]
* parse.y (primary): flush cmdarg flags inside left-paren in a
	  command argument, to allow parenthesed do-block as an argument
	  without arguments parentheses.  [ruby-core:61950] [Bug #9726]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_1@45929 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-05-12 14:04:24 +00:00
nagachika
86f8f5d94e merge revision(s) r45758,r45759: [Backport #9759]
* vm.c (invoke_block_from_c): add VM_FRAME_FLAG_BMETHOD to record
	  it is bmethod frame.

	* vm.c (vm_exec): invoke RUBY_EVENT_RETURN event if rollbacked frame
	  is VM_FRAME_FLAG_BMETHOD.
	  [Bug #9759]

	* test/ruby/test_settracefunc.rb: add a test for TracePoint/set_trace_func.

	* vm_core.h: rename rb_thread_t::passed_me to
	  rb_thread_t::passed_bmethod_me to clarify the usage.

	* vm_insnhelper.c (vm_call_bmethod_body): use renamed member.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_1@45928 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-05-12 13:49:33 +00:00
nagachika
3cbfd63479 merge revision(s) r45360,r45361: [Backport #9651]
* vm_eval.c (eval_string_with_cref): Use file path even if scope is
	  given. Related to [ruby-core:56099] [Bug #8662] and r42103.

	* vm_eval.c (eval_string_with_cref): Unify to use NIL_P.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_1@45927 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-05-12 13:18:13 +00:00
nagachika
78358a72be merge revision(s) r45901:
envutil.rb: successfully terminated process

	* test/ruby/envutil.rb (FailDesc): allow successfully terminated
  process without a signal.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_1@45908 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-05-10 15:01:24 +00:00
nagachika
4b1eca7ea0 merge revision(s) r45891,r45893,r45895:
test_beginendblock.rb, test_signal.rb: run with default handler

	* test/ruby/test_beginendblock.rb (test_propagate_signaled): run
  with default handler.

	* test/ruby/test_signal.rb (test_hup_me): ditto.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_1@45905 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-05-10 14:25:23 +00:00
nagachika
65b76d92a4 merge revision(s) r45190,r45202,r45204,r45713: [Backport #9586]
configure.in: define SET_THREAD_NAME

	* configure.in (SET_THREAD_NAME): define according to
  pthread_setname_np variations.
	* configure.in: correct pthread_setname_np's prototype on NetBSD.
	  [Bug #9586]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_1@45867 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-05-07 16:21:02 +00:00
nagachika
b494603551 merge revision(s) r44619:
test_gc.rb: relax assertion

	* test/ruby/test_gc.rb (test_profiler_total_time): GC time may be
  shorter than the timer resolution.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_1@45866 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-05-07 15:49:11 +00:00
nagachika
de94db5d61 merge revision(s) r45760: [Backport #9796]
* gc.c (gc_after_sweep): suppress unnecessary expanding heap.
	  Tomb heap pages are freed pages here, so expanding heap is
	  not required.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_1@45833 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-05-05 16:16:48 +00:00
nagachika
01cf2127bd merge revision(s) r45595: [Backport #9743] [Backport #9745]
* ext/openssl/ossl_pkey.c (ossl_pkey_verify): as EVP_VerifyFinal()
	  finalizes only a copy of the digest context, the context must be
	  cleaned up after initialization by EVP_MD_CTX_cleanup() or a
	  memory leak will occur.  [ruby-core:62038] [Bug #9743]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_1@45821 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-05-04 17:44:00 +00:00
nagachika
acd893d175 merge revision(s) r45291,r45299,r45314,r45325: [Backport #9518]
* ext/dl/cptr.c (dlptr_free), ext/dl/handle.c (dlhandle_free),
	  ext/fiddle/handle.c (fiddle_handle_free),
	  ext/fiddle/pointer.c (fiddle_ptr_free): fix memory leak.
	  based on the patch Heesob Park at [ruby-dev:48021] [Bug #9599].


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_1@45820 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-05-04 17:32:44 +00:00
nagachika
647b55f64a merge revision(s) r45298,r45311: [Backport #9518]
test/ruby/envutil.rb: compare RSS to check memory leak

	* test/ruby/envutil.rb (Test::Test#assert_no_memory_leak): compare
  also RSS if available.

	* test/ruby/memory_status.rb (Memory::Status.parse): read string
  form of an instance.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_1@45819 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-05-04 17:19:20 +00:00
nagachika
cd705d115a merge revision(s) r45638: [Backport #9518]
* gc.c (rb_gc_writebarrier): drop special case for big hash/array
	  [Bug #9518]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_1@45818 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-05-04 16:26:30 +00:00
nagachika
ac0f8d8045 merge revision(s) r45468: [Backport #9687]
* gc.c (gc_before_sweep): cap `malloc_limit' to
	  gc_params.malloc_limit_max.  It can grow and grow with such case:
	    `loop{"a" * (1024 ** 2)}'
	  [Bug #9687]
	  This issue is pointed by Tim Robertson.
	  http://www.omniref.com/blog/blog/2014/03/27/ruby-garbage-collection-still-not-ready-for-production/


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_1@45817 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-05-04 16:17:08 +00:00
nagachika
efae6ae352 merge revision(s) r45015: [Backport #9657]
* ext/bigdecimal/bigdecimal.c (BigDecimal_initialize): Insert GC guard.

	* ext/bigdecimal/bigdecimal.c (BigDecimal_global_new): ditto.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_1@45815 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-05-04 15:55:30 +00:00
nagachika
1dcdd256f7 merge revision(s) r45453,r45455,r45577: [Backport #9798]
* ext/psych/lib/psych.rb: Merge psych-2.0.5. bump version to
	  libyaml-0.1.6 for CVE-2014-2525.

	* ext/psych/yaml/config.h: ditto.

	* ext/psych/yaml/scanner.c: ditto.

	* ext/psych/yaml/yaml_private.h: ditto.

	* ext/psych/psych.gemspec: update gemspec for psych-2.0.5


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_1@45812 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-05-04 15:45:33 +00:00
nagachika
7c89c50847 merge revision(s) r45221: [Backport #9798]
* ext/psych/lib/psych/visitors/yaml_tree.rb: support dumping Encoding
	  objects.

	* ext/psych/lib/psych/visitors/to_ruby.rb: support loading Encoding
	  objects.

	* test/psych/test_encoding.rb: add test

	* ext/psych/lib/psych.rb: add version


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_1@45811 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-05-04 15:40:57 +00:00
nagachika
71fdd26db0 merge revision(s) r45393: [Backport #9668]
* gc.c: Fix up default GC params by @csfrancis [fix GH-556]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_1@45810 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-05-04 15:17:10 +00:00