summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2015-02-22merge revision(s) 49675:naruse
* re.c (match_aref): RMatch::regexp is Qnil after matching by a string since r45451. [ruby-core:68209] [Bug #10877] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_2@49690 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2015-02-22merge revision(s) 49411,49419,49451,49485,49489:naruse
configure.in: check dtace -G * configure.in (RUBY_DTRACE_POSTPROCESS): check if the object file is really modified by `dtrace -G`, this command is very system dependent. * common.mk (ruby-glommed.o): dependency on $(OBJ) should be written in common.mk (in which OBJ is defined) because of Makefile include and parse order. This partly reverts r49419. [ruby-dev:48849] [Bug #10808] * Makefile.in (ruby-glommed.o): ditto. * Makefile.in (ruby-glommed.o): remove excess $(DTRACE_OBJ) because it is included in $(OBJS) since r49451. * Makefile.in (probes.o): should depend on $(DTRACE_DEPENDENT_OBJS) * Makefile.in (probes.stamp): rebuild dtrace dependent objects only when `dtrace -G` modifies its input files. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_2@49686 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2015-02-21merge revision(s) 49661,49662,49664:naruse
test_file_exhaustive.rb: remove useless assignment * test/ruby/test_file_exhaustive.rb (make_tmp_filename): not assign to instance variable, @hardlinkfile. * file.c (rb_file_identical_p): fix handle leak, ensure to close the handle of the first argument. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_2@49677 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2015-02-21merge revision(s) 49660:naruse
test_file.rb: just skip assertion * test/ruby/test_file.rb (TestFile#test_stat): skip an assertion only, not making the entire test skipped git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_2@49676 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2015-02-21merge revision(s) 49634,49658,49663: [Backport #10865]naruse
* win32/win32.c (wrename): return EXDEV if moving a directory to another drive, since MoveFileExW does not set proper error code. [ruby-core:68162] [Bug #10865] * win32/win32.c (different_device_p): compare by volume serial numbers, not by path names. numbers, not by path names. [ruby-core:68162] [Bug #10865] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_2@49672 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2015-02-21merge revision(s) 49618,49640: [Backport #10858]naruse
* win32/file.c (rb_file_expand_path_internal): do not make invalid (or ADS) path if the path has a drive letter, the result also should have be under it. [ruby-core:68130] [Bug #10858] * win32/file.c (rb_file_expand_path_internal): neither the drive of base directory nor the current drive are involved in the result if different than the drive of path. [ruby-core:68130] [Bug #10858] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_2@49671 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2015-02-21merge revision(s) 49491: [Backport #10823]naruse
* ext/bigdecimal/bigdecimal.c (VpSetPTR): fix a typo, 'expoennt' to 'exponent'. [ruby-core:67980] [Bug #10823] [Fix GH-825] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_2@49670 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2015-02-20merge revision(s) 49386:naruse
hash.c: move Hash specific functions * hash.c (rb_ident_hash): move compare_by_identity specific function from st.c. * hash.c (rb_ident_hash_new): ditto from thread.c. * st.c (st_numhash): remove ruby's Hash specific implementation. * thread.c (recursive_list_access): use rb_ident_hash_new(). git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_2@49668 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2015-02-20merge revision(s) 49532:naruse
dir.c: fix escaping multibyte char * dir.c (has_magic): fix escaping multibyte char, with glob meta-char in trailing bytes, e.g., Shift-JIS git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_2@49667 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2015-02-20merge revision(s) 49517: [Backport #10831]naruse
* vm_core.h (rb_call_info_kw_arg_struct): make keywords a symbols list to get rid of inadvertent creation by variable keyword arguments. [ruby-core:68031] [Bug #10831] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_2@49666 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2015-02-20merge revision(s) 49528:naruse
dir.c: preserve encoding * dir.c (sys_enc_warning_in): preserve encoding of path name in warning messages. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_2@49665 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2015-02-20merge revision(s) 49479,49483,49526,49527:naruse
remove duplication in warning * dir.c (sys_warning_1): remove duplication in the message. * error.c (rb_mod_sys_fail_str): ditto. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_2@49657 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2015-02-20merge revision(s) 49478,49536,49533,49537: [Backport #10819]naruse
* dir.c (glob_helper): obtain real name with FindFirstFile API instead of matchin all entries, on Windows. [ruby-core:67954] [Bug #10819] * dir.c (has_magic): always get long path name on Windows even if no tilde is there. [ruby-core:68011] [Bug #10819] * dir.c (replace_real_basename): FindFirstFile ignore redirection character, check if exists before call it. cf. [Bug #8597] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_2@49656 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2015-02-20merge revision(s) 49171:naruse
dir.c: use macros * dir.c (replace_real_basename): use macros for getattrlist buffer. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_2@49655 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2015-02-20merge revision(s) 49170:naruse
* dir.c (dir_initialize): workaround of opendir failure at symlink directories on Windows via CIFS. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_2@49654 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2015-02-20merge revision(s) 49169,49477:naruse
dir.c: GC guard * dir.c (dir_initialize): add GC guard for retrying. the argument of RSTRING_PTR() may be eliminated by optimization. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_2@49653 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2015-02-19merge revision(s) 49402,49403,49414:naruse
cstr.c: get rid of exception * ext/-test-/string/cstr.c (bug_str_cstr_term_char): get rid of invalid byte sequence exception. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_2@49650 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2015-02-19merge revision(s) 49503:naruse
* class.c (rb_obj_singleton_methods): should use RTEST() to convert VALUE to int. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_2@49649 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2015-02-19merge revision(s) 49222:naruse
method.h: UNDEFINED_REFINED_METHOD_P * method.h (UNDEFINED_REFINED_METHOD_P): macro to tell if refined original method is defined. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_2@49648 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2015-02-19merge revision(s) 49480,49493: [Backport #10765]naruse
* vm_method.c (remove_method): When remove refined method, raise a NameError if the method is not defined in refined class. But if the method is defined in refined class, it should keep refined method and remove original method. Patch by Seiei Higa. [ruby-core:67722] [Bug #10765] * class.c (method_entry_i, class_instance_method_list, rb_obj_singleton_methods): should not include methods of superclasses if recur is false. [ruby-dev:48854] [Bug #10826] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_2@49647 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2015-02-19merge revision(s) 49259: [Backport #10744]naruse
* proc.c (rb_obj_singleton_method): Kernel#singleton_method should not use refinements, as well as Kernel#method. [ruby-core:67603] [Bug #10744] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_2@49646 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2015-02-19merge revision(s) 49494: [Backport #10825]naruse
_sdbm.c: fix pointers to shift * ext/sdbm/_sdbm.c (delpair): dst and src point at the ends of each data, whereas memmove requires pointers to the beginnings. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_2@49645 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2015-02-19merge revision(s) 49405-49408:naruse
* string.c (str_make_independent_expand): terminate String when moved from heap to embedded. [Fix GH-821]. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_2@49644 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2015-02-19merge revision(s) 49490: [Backport #10825]naruse
* ext/sdbm/_sdbm.c: include ruby/ruby.h for PRIdPTRDIFF when a macro `DEBUG` is defined. based on the patch by Owen Rodley in [ruby-core:67987]. [Bug #10825] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_2@49643 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2015-02-18merge revision(s) 49579: [Backport #10839]naruse
test_cipher.rb: ignore wrap mode erros * test/openssl/test_cipher.rb (test_ciphers): ignore wrap mode errors if "wrap" is contained in the name. seems no explicit rules. http://rubyci.blob.core.windows.net/fedora21/ruby-trunk/log/20150213T001502Z.fail.html.gz git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_2@49636 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2015-02-17merge revision(s) 49620: [Backport #10857]naruse
* lib/resolv.rb (Resolv::DNS::Resource#==, #hash): elements returned by Kernel#instance_variables are Symbols now. [ruby-core:68128] [Bug #10857] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_2@49627 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2015-02-17merge revision(s) 49542: [Backport #10820]naruse
* ext/win32/lib/win32/registry.rb (Win32::Registry::API): use wide versions of RegDeleteValue and RegDeleteKey. [ruby-core:67958] [Bug #10820] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_2@49622 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2015-02-17merge revision(s) 49586: [Backport #10853]naruse
* string.c (str_discard): does not free for STR_NOFREE string. [Bug #10853][ruby-core:68110] * bootstraptest/test_string.rb: test for above. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_2@49621 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2015-02-15merge revision(s) 49543: [Backport #10854]naruse
* ext/socket/getaddrinfo.c (get_addr): reject too long hostname to get rid of GHOST vulnerability on very old platforms. * ext/socket/raddrinfo.c (make_hostent_internal): ditto, paranoic check for the canonnical name. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_2@49605 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2015-02-14merge revision(s) 49499,49500,49501,49502,49504,49505,49506,49507: [Backport ↵naruse
#10828] * vm_insnhelper.c: Fix one type of symbol leak with +send+ * vm_insnhelper.c: Fix symbol leak with +send+ [Bug #10828] * vm_insnhelper.c (ci_missing_reason): return the reason of method missing in call info. * vm_insnhelper.c (vm_call_opt_send): re-apply r49500 with the proper missing reason. [Bug #10828] * vm_eval.c (send_internal), vm_insnhelper.c (vm_call_opt_send): convert String method name into a Symbol, as method_missing method expects its first argument to be a Symbol. [Bug #10828] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_2@49598 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2015-02-13merge revision(s) 49493: [Backport #10826]naruse
* class.c (method_entry_i, class_instance_method_list, rb_obj_singleton_methods): should not include methods of superclasses if recur is false. [ruby-dev:48854] [Bug #10826] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_2@49592 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2015-02-13merge revision(s) 49525,49575: [Backport #10839]naruse
test_cipher.rb: OpenSSL 1.0.2 * test/openssl/test_cipher.rb (OpenSSL::TestCipher#test_ciphers): OpenSSL 1.0.2 does not allow wrap mode. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_2@49584 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2015-02-13merge revision(s) 49482,49487: [Backport #10821]naruse
* lib/mkmf.rb (try_cppflags, try_cflags, try_ldflags): get rid of interference by modifying global variables in have_devel? method. [ruby-core:67962] [Bug #10821] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_2@49581 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2015-02-12merge revision(s) 49452: [Backport #10813]naruse
* thread_pthread.c (reserve_stack): fix intermittent SIGBUS on Linux, by reserving the stack virtual address space at process start up so that it will not clash with the heap space. [Fix GH-822] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_2@49578 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2015-02-06merge revision(s) 49463: [Backport #10814]naruse
signal.c: SIGBUS by stack overflow on Funtoo * signal.c (sigbus): seems that Funtoo Linux also delivers SIGBUS at stack overflow. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_2@49530 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2015-02-06merge revision(s) 49180: [Backport #10794]naruse
* test/ruby/test_symbol.rb (TestSymbol#test_symbol_fstr_leak): get rid of a false positive on mswin CI. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_2@49523 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2015-02-06merge revision(s) 49428: [Backport #10694]naruse
* thread.c: Improve documentation for Thread#value [Bug #10694][ruby-core:67324][ci skip] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_2@49522 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2015-02-06merge revision(s) 49397: [Backport #10780]naruse
* ext/fiddle/win32/libffi.mk.tmpl: assemble without directory prefix. workaround of a bug of VC12 ml, by unak at [ruby-core:67792]. [ruby-core:67789] [Bug #10780] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_2@49521 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2015-02-05merge revision(s) 49376,49387,49389: [Backport #10761]naruse
* st.c (st_numhash): mix float value for flonum * hash.c (rb_any_hash): ditto * benchmark/bm_hash_aref_flo.rb: new benchmark * benchmark/bm_hash_ident_flo.rb: ditto [Bug #10761] * benchmark/bm_marshal_dump_flo.rb: new benchmark for [Bug #10761] * marshal.c (w_object, marshal_dump): use indetity tables for arbitrary VALUE keys, because of performance of FLONUM. [Bug #10761] * marshal.c (obj_alloc_by_klass, marshal_load): ditto. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_2@49513 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2015-02-05merge revision(s) 49082: [Backport #10661]naruse
* parse.y (gettable_gen): disable warnings of possible reference to a local variable defined in a past scope. [ruby-core:67162] [Bug #10661] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_2@49509 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2015-01-26merge revision(s) 49322: [Backport #10753]naruse
* vm_method.c (check_definition): Module#public_method_defined?, Module#private_method_defined?, Module#protected_method_defined? should not use refinements. [ruby-core:67656] [Bug #10753] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_2@49409 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2015-01-22merge revision(s) 49056: [Backport #10671]naruse
* doc/syntax/literals.rdoc (Symbols): now Symbols created by interpolation can be garbage collected. patch by Yihang Ho in [ruby-core:67194]. [Bug #10671] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_2@49375 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2015-01-22merge revision(s) 49266: [Backport #10689]naruse
* eval_intern.h, vm.c, vm_eval.c, vm_insnhelper.c: change throw mechanism (not save target ep, but save target cfp). It fixes `unexpected break' bug that occurs when TracePoint#binding is called. [ruby-dev:48797] [Bug #10689] * test/ruby/test_settracefunc.rb: add a test. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_2@49374 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2015-01-20merge revision(s) 49315: [Backport #10697]naruse
* ext/win32ole/win32ole.c (ole_invoke): avoid SEGV when VT_RECORD variable is passed by reference. [ruby-dev:48803] [Bug #10697] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_2@49352 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2015-01-20merge revision(s) 49340:naruse
Use master instead of HEAD git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_2@49341 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2015-01-19merge revision(s) 49184: [Backport #10707]naruse
* vm_method.c (rb_method_entry): if no super class, no original method entry. [ruby-core:67389] [Bug #10707] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_2@49331 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2015-01-19merge revision(s) 49321: [Backport #10752]naruse
* vm_dump.c (rb_vm_bugreport): check by configured result instead of system name for old FreeBSD. based on a patch by Steve Wills at [ruby-core:67655]. [Bug #10752] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_2@49330 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2015-01-19merge revision(s) 49306: [Backport #10750]naruse
* configure.in: get rid of pattern substitution, which is not supported by ash, and ash on NetBSD parses whole source first and fails to start. [ruby-dev:48823] [Bug #10750] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_2@49329 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2015-01-19merge revision(s) 49192: [Backport #10716]naruse
* configure.in (RUBY_SETJMP_TYPE): Remove superfluous semicolon which causes a syntax error with autoconf 2.63. [ruby-core:67429] [Bug #10716] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_2@49328 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2015-01-19merge revision(s) 49223: [Backport #10732]naruse
* lib/rdoc/text.rb (expand_tabs): get rid of infinite loop with CR. should check if substitution occurred too. [ruby-dev:48813] [Bug #10732] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_2@49327 b2dd03c8-39d4-4d8f-98ff-823fe69b080e