Age | Commit message (Collapse) | Author |
|
* ext/win32/Win32API.rb (initialize): accept both a string and an array
for the arguments of the imported function.
reported by Aaron Stone [ruby-core:68208] [Bug #10876] [Fixes GH-835]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_2@49761 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
* tool/merger.rb: support 2.1+ versioning scheme.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_2@49741 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
* time.c: Zone encoding should be US-ASCII if all 7-bits. Fix r46907.
* test/ruby/test_time.rb, test/ruby/test_time_tz.rb: Update tests.
* time.c (time_zone_name): should be US-ASCII only if all 7-bits,
otherwise locale encoding. [ruby-core:68230] [Bug #10887]
* time.c (time_zone_name): should be US-ASCII only if all 7-bits,
otherwise locale encoding. [ruby-core:68230] [Bug #10887]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_2@49719 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
* string.c (chompped_length): enable smart chomp for all non-dummy
encoding strings, not only default_rs.
[ruby-core:68258] [Bug #10893]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_2@49718 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
* string.c (rb_str_split_m): raise ArgumentError at broken string
not RegexpError, as Regexp is not involved in.
[ruby-core:68229] [Bug #10886]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_2@49717 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
* gc.c (rb_objspace_free): cause rb_bug if lazy sweep is in progress
during rb_objspace_free. Adds extra protection for r46340.
Patch by Vicent Marti. [Bug #10768] [ruby-core:67734]
* gc.c (rb_objspace_call_finalizer): Ensure GC is completed after
finalizers have run. We already call gc_rest() before invoking
finalizers, but finalizer can allocate new objects and start new GC
cycle, so we call gc_rest() again after finalizers are complete.
* gc.c (rb_objspace_call_finalizer): control GC execution during
force firnalizations at the end of interpreter process.
[Bug #10768]
1) Prohibit incremental GC while running Ruby-level finalizers
to avoid any danger.
2) Prohibit GC while invoking T_DATA/T_FILE data structure
because these operations break object relations consistency.
This patch can introduce another memory consuming issue because
Ruby-level finalizers can run after (2), GC is disabled.
However, basically object consistency was broken at (2) as I
described above. So that running Ruby-level finalizers contains
danger originally. Because of this point, I need to suggest to
remove these 3 lines (invoking remaining finalizers). And add a
rule to add that finalizers should not add new finalizers, or
say there is no guarantee to invoke finalizers that added by
another finalizer.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_2@49716 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
* vm_insnhelper.c (rb_vm_rewrite_cref_stack): copy nd_refinements
of orignal crefs. It fixes segmentation fault when calling
refined method in duplicate module. [ruby-dev:48878] [Bug #10885]
* vm_core.h, class.c: change accordingly.
* test/ruby/test_refinement.rb: add a test for above.
of original crefs. It fixes segmentation fault when calling
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_2@49708 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
* 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
|
|
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
|
|
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
|
|
* 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
|
|
* 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
|
|
* 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
|
|
* 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
|
|
* 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
|
|
* 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
|
|
* 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
|
|
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
|
|
* 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
|
|
* 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
|
|
* 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
|
|
* 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
|
|
* 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
|
|
* 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
|
|
* 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
|
|
* 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
|
|
#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
|
|
* 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
|
|
* 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
|
|
* 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
|
|
* 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
|
|
* 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
|
|
* 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
|
|
* 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
|
|
* 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
|
|
* 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
|
|
* 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
|
|
* 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
|
|
* 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
|
|
* 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
|
|
* 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
|
|
* 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
|
|
* 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
|
|
* numeric.c (bit_coerce): use original value for error message
[ruby-core:67405] [Bug #10711]
* test/ruby/test_numeric.rb (test_coerce): check error message
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_2@49313 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
* vm_method.c (rb_alias): raise a NameError when creating alias to
a refined method if the original method of the refined method is
not defined. [ruby-core:67523] [Bug #10731]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_2@49311 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
* dir.c (need_normalization): not only HFS+, CIFS (SMB) is also
decomposed. [Bug #10704]
* dir.c (NORMALIZE_UTF8PATH): Unicode decomposition seems to
perform in an upper layer than file systems on OSX, as all path
names are always decomposed regardless of file system types.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_2@49303 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
* parse.y (assocs, assoc): eliminate splatting empty literal
hashes. [ruby-core:67446] [Bug #10719]
* compile.c (compile_array_): supprt splatted hash in hash type.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_2@49302 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
* ext/readline/readline.c (readline_s_refresh_line): initialize
before rl_refresh_line(), as some function make the internal
state non-clean but rl_refresh_line() does not re-initialize it.
[ruby-core:43957] [Bug #6232]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_2@49299 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
* eval_error.c (error_print): pos and len parameters of rb_str_substr()
are counted by characters, not bytes. use rb_str_subseq() instead.
[Bug #10727] [ruby-core:67473]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_2@49298 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
vm_method.c: fix change refined new method visibility
* vm_method.c (rb_export_method): bail out if the original method
is undefined when the method is refined.
[ruby-core:67387] [Bug #10706]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_2@49297 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|