| Age | Commit message (Collapse) | Author |
|
* test/ruby/test_file.rb (TestFile#test_stat): fix noatime case.
[ruby-core:77943] [Bug #12903]
* ext/-test/file/fs.c (get_atime_p): Updating of file access times
is enabled or not.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_2@56789 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
error.c: rb_get_backtrace
* error.c (rb_get_backtrace): move from eval_error.c to call
exc_backtrace directly. [ruby-core:78097] [Bug #12925]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_2@56786 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
* proc.c (mnew_internal): follow the original class, not to loop
the prepended module. [ruby-core:77591] [Bug #12832]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_2@56731 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
test_process.rb: fix pgroup test
* test/ruby/test_process.rb (TestProcess#test_execopts_pgroup):
use dynamically assigned pid for the process group, instead of a
magic number 2. [ruby-core:78051] [Bug #12909]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_2@56729 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
* sprintf.c (rb_str_format): format exact number more exactly.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_2@56728 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
* thread.c (rb_thread_pending_interrupt_p): no pending interrupt
before initialization.
* thread.c (thread_raise_m, rb_thread_kill): uninitialized thread
cannot interrupt. [ruby-core:72732] [Bug #11959]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_2@56726 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
* eval_intern.h (TH_PUSH_TAG): Initialize struct rb_vm_tag::tag with
Qundef rather than 0 which is equal to Qfalse. Since Kernel#throw(obj)
searches a tag with rb_vm_tag::tag == obj, throw(false) can
accidentally find an unrelated tag which is not created by
Kernel#catch. [ruby-core:77229] [Bug #12743]
* test/ruby/test_exception.rb (test_throw_false): Add a test case for
this.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_2@56505 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
* variable.c (rb_const_search): raise with the actual class/module
name which defines the private constant.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_2@56309 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
* array.c (flatten): use rb_obj_class instead of rb_class_of
because rb_class_of may return a singleton class.
[ruby-dev:49781] [Bug #12738]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_2@56305 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
* regcomp.c (noname_disable_map): don't optimize out group 0
Ruby's Regexp doesn't allow normal numbered groups if the regexp
has named groups. On such case it optimizes out related NT_ENCLOSE.
But even on the case it can use \g<0>.
This fix not to remove NT_ENCLOSE whose regnum is 0.
[ruby-core:75828] [Bug #12454]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_2@55939 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
* transcode.c (str_transcode0): scrub in the given encoding when
the source encoding is given, not in the encoding of the
receiver. [ruby-core:75732] [Bug #12431]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_2@55936 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
* variable.c (rb_local_constants_i): exclude private constants
when excluding inherited constants too. [Bug #12345]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_2@55930 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
* gc.c (gc_mark_roots): should mark the VM object itself to mark
singleton class of the VM object.
Before this patch, we only set mark bit for the VM object and
invoke mark function separately.
[Bug #12583]
* test/ruby/test_gc.rb: add a test.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_2@55921 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
* vm_args.c (setup_parameters_complex): don't raise ArgumentError
if an array is given for instance_exec with optional argument.
[ruby-core:76300] [Bug #12568]
https://github.com/rails/rails/pull/25699
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_2@55875 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
(cf. [Backport #12340])
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_2@55367 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
* regparse.c (fetch_token_in_cc): raise error if given octal escaped
character is too big. [Bug #12420] [Bug #12423]
* re.c (unescape_nonascii): scan hex up to only 3 characters.
[Bug #12420] [Bug #12423]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_2@55363 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
* process.c (rb_exec_getargs): honor the expected argument types
over the conversion method. the basic language functionality
should be robust. [ruby-core:75388] [Bug #12355]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_2@55362 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
* parse.y (new_if_gen): set newline flag to NODE_IF to trace all
if/elsif statements. [ruby-core:67720] [Bug #10763]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_2@55360 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
* variable.c (rb_local_constants_i): exclude hidden constants.
[ruby-core:75575] [Bug #12389]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_2@55356 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
* regcomp.c (compile_length_tree): return error code immediately
if compile_length_tree raised error [Bug #12418]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_2@55355 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
* insns.def (defineclass): Also raise an error when redeclaring the
superclass of a class as Object and it has another superclass.
[Bug #12367] [ruby-core:75446]
* test/ruby/test_class.rb: test for above.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_2@55351 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
* win32/win32.c, include/ruby/win32.h (rb_w32_utruncate): implements new
truncate alternative which accepts UTF-8 path.
* file.c (truncate): use above function.
[Bug #12340]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_2@55347 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
* test/ruby/test_time_tz.rb: Tests depends on Europe/Moscow removed
to avoid test failures due to the tzdata change.
https://github.com/eggert/tz/commit/8ee11a301cf173afb0c76e0315b9f9ec8ebb9d95
Found by naruse.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_2@54815 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
* ruby.c: cygwin does not use w32_cmdvector, command line can be
other than UTF-8. [ruby-dev:49519] [Bug #12184]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_2@54770 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
* eval_jump.c (exec_end_procs_chain): restore previous error info
for each end procs. [ruby-core:75038] [Bug #12302]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_2@54769 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
* compile.c (iseq_optimize): disable tail call optimization in
rescued, rescue, and ensure blocks.
[ruby-core:73871] [Bug #12082]
* compile.c (new_label_body): initialize bit fields, since
compile_data_alloc does not clear the memory. [Bug #12082]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_2@54698 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
math.c: fix tgamma on mingw
* math.c (mingw_tgamma): tgamma(3) on mingw returns a NaN for a
big number, not infinity.
* math.c (ruby_tgamma): fix tgamma(-0.0) on mingw.
[ruby-core:74817] [Bug #12249]
* math.c (ruby_lgamma_r): fix lgamma(-0.0) on mingw and OSX.
* math.c (ruby_lgamma_r): mswin's lgamma_r also seems to be wrong.
cf. [Bug #12249]
* math.c (ruby_lgamma_r): missing/lgamma_r.c is used on Windows,
since msvcrt does not provide it.
* missing/lgamma_r.c (lgamma_r): fix lgamma(-0.0).
[ruby-core:74823] [Bug #12249]
* configure.in (rb_cv_lgamma_r_m0): check if lgamma_r(-0.0)
returns negative infinity. [Bug #12249]
* math.c (ruby_lgamma_r): define by the configured result.
* configure.in (rb_cv_lgamma_r_m0): fix the condition for
lgamma_r(-0.0). [Bug #12249]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_2@54687 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
* defs/keywords (alias, undef): symbol literals are allowed.
* parse.y (parse_percent): should parse symbol literals for alias
and undef. [ruby-dev:47681] [Bug #8851]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_2@54686 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
* struct.c (struct_make_members_list): extract making member name
list from char* va_list, with creating symbols without
intermediate IDs.
* struct.c (struct_make_members_list, rb_struct_s_def): member
names should be unique. [ruby-core:74971] [Bug #12291]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_2@54685 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
parse.y: simplify local ID condition
* parse.y (tokenize_ident, parse_ident): ident in tokenize_ident()
can be a local id only when called from parse_ident(), but never
from parse_gvar() and parse_atmark().
* parse.y (parse_ident): allow keyword arguments just after a
method where the same name local variable is defined.
[ruby-core:73816] [Bug#12073]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_2@54676 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
* eval.c (setup_exception): set the cause only if it is explicitly
given or not set yet. [Bug #12068]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_2@54675 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
* compile.c (compile_massign_lhs): when index ends with splat,
append rhs value to it like POSTARG, since VM_CALL_ARGS_SPLAT
splats the last argument only. [ruby-core:72777] [Bug #11970]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_2@54671 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
* sprintf.c (rb_str_format): fix buffer overflow, length must be
greater than precision. reported by William Bowling <will AT
wbowling.info>.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_2@54443 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
* test/ruby/test_io.rb: handled rlimit value same as r52277
[Bug #11852][ruby-dev:49446]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_2@54442 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
* string.c (enc_succ_alnum_char): try to skip an invalid character
gap between GREEK CAPITAL RHO and SIGMA.
[ruby-core:74478] [Bug #12204]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_2@54336 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
* marshal.c (r_object0): Fix Marshal crash for corrupt extended object.
* marshal.c (r_object0): raise ArgumentError when linking to undefined
object.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_2@54333 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
* test/ruby/test_process.rb (test_execopts_gid): Skip a test
that is known to fail on AIX. AIX allows setgid to
a supplementary group, but Ruby does not allow the "-e"
option when setgid'ed, so the test does not work as intended.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_2@54328 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
* marshal.c (r_object0): honor Marshal.load post proc
value for TYPE_LINK. by Hiroshi Nakamura <nahi@ruby-lang.org>
https://github.com/ruby/ruby/pull/1204 fix GH-1204
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_2@54068 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_2@54044 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
* process.c: use rb_w32_uchdir() instead of plain chdir() on Windows.
reported by naruse via twitter.
* process.c (rb_execarg_addopt): need to convert to ospath.
* process.c (rb_execarg_parent_start1): need to convert the encoding to
ospath's one.
* process.c (rb_execarg_addopt): need to convert the encoding to
ospath's one.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_2@54043 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
* io.c (io_getpartial): remove unused kwarg from template
* test/ruby/test_io.rb (test_readpartial_bad_args): new
[Bug #11885]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_2@54041 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
* re.c (reg_names_iter): should consider encoding of regexp.
[ruby-core:72185] [Bug #11825]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_2@54036 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
* enc/iso_8859_4.c: Added missing lower/upper-case character
pair (U+014A and U+014B, LATIN CAPITAL/SMALL LETTER ENG)
* enc/iso_8859_13.c: Added three missing lower/upper-case
character pairs (from Kimihito Matsui)
(from Kimihito Matsui)
* enc/windows_1252.c: separate from ISO-8859-1 to fix 0x80..0x9e
range. [ruby-core:64049] [Bug #10097]
* enc/iso_8859_2.c, enc/windows_1250.c: separate Windows-1250
from ISO-8859-2 to fix 0x80..0x9e range (from Kimihito Matsui)
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_2@53896 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
test_m17n.rb: split test_scrub
* test/ruby/test_m17n.rb (TestM17N#test_scrub): split into some
tests.
* include/ruby/ruby.h: add raw FL macros, which assume always the
argument object is not a special constant.
* internal.h (STR_EMBED_P, STR_SHARED_P): valid only for T_STRING.
* string.c: deal with taint flags directly across String instances.
* transcode.c (rb_econv_substr_append, econv_primitive_convert):
the result should be infected by the original string.
* string.c (rb_str_scrub): the result should be infected by the
original string.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_2@53825 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
* vm_insnhelper.c (vm_call_method_each_type): should not set fastpath
with keyword arguments for VM_METHOD_TYPE_ATTRSET type methods.
Normally, we can not use keyword arguments for this kind of methods,
(obj.foo = 1), but we can set alias names for them.
[Bug #11657]
* test/ruby/test_keyword.rb: add a test for this fix.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_2@53567 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
* parse.y (parser_yylex): allow here documents in labeled
argument. [ruby-core:72396] [Bug #11849]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_2@53258 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
* parse.y (parse_percent): Allow %-literals in labeled arg as
r51624 did for parentheses.
Fixes [ruby-core:72084] [Bug #11812].
* test/ruby/test_syntax.rb: fix typo in test
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_2@53257 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
* io.c (parse_mode_enc): fix buffer overflow.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_2@53135 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
* insns.def (opt_case_dispatch): avoid converting Infinity
* test/ruby/test_optimization.rb (test_opt_case_dispatch_inf): new
[ruby-dev:49423] [Bug #11804]'
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_2@53040 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
* insns.def (opt_case_dispatch): check Float#=== redefinition
* test/ruby/test_optimization.rb (test_opt_case_dispatch): new
[ruby-core:71920] [Bug #11784]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_2@52977 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|