Age | Commit message (Collapse) | Author |
|
* ext/socket/ancdata.c (bsock_sendmsg_internal): only retry on error
(bsock_recvmsg_internal): ditto
* test/socket/test_unix.rb: test above for infinite loop
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_0_0@45098 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
* class.c (rb_mod_init_copy): do nothing if copying self.
[ruby-dev:47989] [Bug #9535]
* hash.c (rb_hash_initialize_copy): ditto.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_0_0@45096 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
* vm_insnhelper.c (vm_search_super_method): when super called in a
bound UnboundMethod generated from a module, no superclass is
found since the current defined class is the module, then call
method_missing in that case. [ruby-core:59619] [Bug #9377]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_0_0@45051 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
* lib/optparse.rb: The Integer acceptable now allows binary and
hexadecimal numbers per the documentation. [ruby-trunk - Bug #8865]
DecimalInteger, OctalInteger, DecimalNumeric now validate their input
before converting to a number. [ruby-trunk - Bug #8865]
* test/optparse/test_acceptable.rb: Tests for the above, tests for all
numeric acceptables for existing behavior.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_0_0@45050 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
* thread.c (terminate_atfork_i): fix locking mutexes not unlocked in
forks when not tracked in thread. [ruby-core:55102] [Bug #8433]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_0_0@45049 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
fix warning: shadowing outer local variable - path
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_0_0@45048 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
envutil.rb: encoding
* test/ruby/envutil.rb (Test::Unit::Assertions#assert_separately):
specify the encoding of source.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_0_0@45039 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
* test/ruby/envutil.rb (assert_separately): require envutil in the
child process too.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_0_0@45038 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
Default script encoding is now UTF-8
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_0_0@45035 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
* test/webrick/test_htmlutils.rb: add test for WEBrick::HTMLUtils.
* lib/webrick/htmlutils.rb (WEBrick::HTMLUtils#escape): replace HTML
meta chars even in non-ascii string. [Bug #8425] [ruby-core:55052]
* lib/webrick/httputils.rb (WEBrick::HTTPUtils#{_escape,_unescape}):
fix %-escape encodings. [Bug #8425] [ruby-core:55052]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_0_0@45012 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
* hash.c (rb_hash_rehash): fix to free new st_table when exception
is raised in do_hash(). [Bug #9187]
* hash.c (rb_hash_rehash): make temporary st_table under the control
of GC. [Bug #9187]
* test/ruby/test_hash.rb: add a test for above.
* array.c (rb_hash_rehash): use hash_alloc() instead of rb_hash_new().
[Bug #9187]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_0_0@45011 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
* eval.c (rb_mod_s_constants): return its own constants for other
than Module itself. [ruby-core:59763] [Bug #9413]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_0_0@45010 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
* string.c (rb_str_modify_expand): enable capacity and disable
assocation with packed objects when setting capa, so that
pack("p") string fails to unpack properly after modified.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_0_0@45005 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
object.c: error message encoding
* object.c (convert_type, rb_convert_type, rb_check_convert_type),
(rb_to_integer): preserve class name encoding error messages.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_0_0@44987 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
[Backport #8703]
* hash.c (rb_hash_assoc): performance improvement by replacing
compare function in RHASH(hash)->ntbl->type temporarily.
* hash.c (rb_hash_assoc): aggregate object can be initialized only
with link time constants.
* hash.c (rb_hash_initialize_copy): clear old table before copy new
table.
* hash.c (rb_hash_initialize_copy): copy st_table type even if empty.
[ruby-core:56256] [Bug #8703]
* hash.c (rb_hash_initialize_copy): copy st_table type even if empty.
[ruby-core:56256] [Bug #8703]
* hash.c (rb_hash_initialize_copy): clear old table before copy new
table.
* hash.c (rb_hash_assoc): aggregate object can be initialized only
with link time constants.
* hash.c (rb_hash_assoc): revert r42224. table->type->compare is
called only if hashes are matched.
* test/ruby/test_hash.rb: add a test to check using #== to compare.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_0_0@44979 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
* test/ruby/test_hash.rb: use @cls.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_0_0@44978 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
* parse.y (IDSET_ATTRSET_FOR_INTERN): fix off-by-one bug.
* parse.y (rb_enc_symname_type): junk ID succeeded by '=' is also
attrset ID. [ruby-core:60668] [Bug #8756]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_0_0@44975 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
test_struct.rb: use assert_same
* test/ruby/test_struct.rb (test_question_mark_in_member): true value
has no meanings itself. use assert_same instead.
* test/ruby/test_struct.rb (test_bang_mark_in_member): ditto.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_0_0@44974 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
* test/ruby/test_struct.rb: Add regression test for question marks and
bangs in struct members. [Closes GH-468]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_0_0@44973 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
* struct.c (new_struct): fix warning message, class name and encoding.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_0_0@44972 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
* struct.c (make_struct): avoid inadvertent symbol creation.
(rb_struct_aref): ditto.
(rb_struct_aset): ditto.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_0_0@44968 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
* vm_insnhelper.c (vm_call_method): should check ci->me->flag of
a refining method in case the method is private.
[ruby-core:60111] [Bug #9452]
* vm_method.c (make_method_entry_refined): set me->flag of a refined
method entry to NOEX_PUBLIC in case the original method is private
and it is refined as a public method. The original flag is stored
in me->def->body.orig_me, so it's OK to make a refined method
entry public. [ruby-core:60111] [Bug #9452]
* test/ruby/test_refinement.rb: related tests.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_0_0@44967 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
#8756] [Backport #9248]
* parse.y (rb_enc_symname_type): allow ID_ATTRSET for ID_INSTANCE,
ID_GLOBAL, ID_CLASS, ID_JUNK too. [Bug #8756]
* parse.y (rb_id_attrset): fix inconsistency with literals, allow
ID_ATTRSET and return it itself, but ID_JUNK cannot make ID_ATTRSET.
and raise a NameError instead of rb_bug() for invalid argument.
* parse.y (rb_id_attrset, intern_str): allow junk attrset ID for
Struct.
* parse.y (rb_id_attrset): check if the argument is valid type as an
attribute.
* parse.y (rb_id_attrset): allow other than ID_ATTRSET.
* parse.y (intern_str): ditto. try stem ID for ID_INSTANCE,
ID_GLOBAL, ID_CLASS, ID_JUNK too. [Bug #8756]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_0_0@44911 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
* ext/thread/thread.c (rb_szqueue_clear): notify SZQUEUE_WAITERS
on SizedQueue#clear. [ruby-core:59462] [Bug #9342]
* test/thread/test_queue.rb: add test. the patch is from
Justin Collins.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_0_0@44899 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
* parse.y (local_push_gen, local_pop_gen): save cmdarg_stack to
isolate command argument state from outer scope.
[ruby-core:59342] [Bug #9308]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_0_0@44898 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
* dir.c (glob_helper): don't skip current directories if FNM_DOTMATCH
is given. [ruby-core:53108] [Bug #8006]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_0_0@44897 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
* parse.y (intern_str): sigil only names are junk, at least one
identifier character is needed. [ruby-dev:47723] [Bug #8928]
* parse.y (rb_enc_symname_type): fix out of bound access.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_0_0@44845 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
test_numeric.rb: coercion failures
* test/ruby/test_numeric.rb (test_coerce): new assertions for
failure of coercion.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_0_0@44660 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
/usr/lib/libc.so is not symlink on FreeBSD 10
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_0_0@44655 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
patch inspired from r44260 on trunk. [ruby-core:58652] [Bug #9168]
* gc.c (run_finalizer): clear th->errinfo before invoke finalizer and
restore afterward.
* test/ruby/test_gc.rb (test_exception_in_finalizer): add test for
above.
* vm_trace.c (rb_threadptr_exec_event_hooks_orig): clear th->errinfo
before invoke hook.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_0_0@44576 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
* test/openssl/test_cipher.rb (test_aes_gcm_wrong_tag): Don't use
String#succ because it can make modified (wrong) auth_tag longer
than 16 bytes. The longer auth_tag makes that
EVP_CIPHER_CTX_ctrl (and internally aes_gcm_ctrl) fail.
[ruby-core:55143] [Bug #8439] reported by Vit Ondruch.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_0_0@44566 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
* vm_insnhelper.c (vm_search_super_method): direct superclass of a
module is found when super called in a Method object generated a
method defined in a module, call method_missing in that case.
[ruby-core:59358] [Bug #9315]
* proc.c (mnew_from_me): keep iclass as-is, to make inheritance
chain consistent. [ruby-core:59358] [Bug #9315]
* proc.c (method_owner): return the original defined_class from
prepended iclass, instead.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_0_0@44511 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
* test/net/imap/cacert.pem: generate new CA cert, since the last one
expired. [Bug #9341] [ruby-core:59459]
* test/net/imap/server.crt: new server cert signed with updated CA.
* test/net/imap/Makefile: add `make regen_certs` to automate this
process.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_0_0@44491 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
* lib/net/smtp.rb (Net::SMTP#critical): Always return a
Net::SMTP::Response. Patch by Pawel Veselov.
[ruby-trunk - Bug #9125]
* test/net/smtp/test_smtp.rb: Test for the above.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_0_0@44393 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
* ext/socket/lib/socket.rb: Don't test $! in "ensure" clause because
it may be set before the body.
Reported by ko1 and mrkn. [ruby-core:59088] [Bug #9247]
* lib/cgi/core.rb: Ditto.
* lib/drb/ssl.rb: Ditto.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_0_0@44390 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
* proc.c (mnew_from_me): method by respond_to_missing? should be
owned by the original class.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_0_0@44366 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
* proc.c (method_owner): return the class where alias is defined, not
the class original method is defined.
* vm_method.c (rb_method_entry_make, rb_alias): store the originally
defined class in me. [Bug #7993] [Bug #7842] [Bug #9236]
* vm_method.c (rb_method_entry_get_without_cache): cache included
module but not iclass.
* proc.c (mnew_from_me): achieve the original defined_class from
prepended iclass, to fix inherited owner.
* proc.c (method_owner): return the defined class, but not the
class which the method object is created from.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_0_0@44345 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
* insns.def: Fix optimization bug of Float#/ [Bug #9238]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_0_0@44326 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
* eval_jump.c (rb_exec_end_proc): fix double free or corruption error
when reentering by callcc. [ruby-core:58329] [Bug #9110]
* test/ruby/test_beginendblock.rb: test for above.
* eval_jump.c (rb_exec_end_proc): unlink and free procs data before
calling for each procs. [Bug #9110]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_0_0@44325 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
* lib/resolv.rb (Resolv::Hosts#lazy_initialize): should not
consider encodings in hosts file. [ruby-core:59239] [Bug #9273]
* lib/resolv.rb (Resolv::Config.parse_resolv_conf): ditto.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_0_0@44324 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
test_gc.rb: shorten
* test/ruby/test_gc.rb (test_sweep_in_finalizer): omit iteration number to 2.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_0_0@44322 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
* gc.c (finalize_deferred): flush all deferred finalizers while other
finalizers can get ready to run newly by lazy sweep.
[ruby-core:58833] [Bug #9205]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_0_0@44319 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
test_pty.rb: reap zombie
* test/test_pty.rb (test_cloexec): reap zombie than leaving to
detaching thread.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_0_0@44182 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
* enumerator.c (enumerator_with_index): try to convert given offset to
integer. fix bug introduced in r39594.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_0_0@44150 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
* enumerator.c (enumerator_with_index): should not store local variable
address to memoise the arguments. it is invalidated after the return.
[ruby-core:58692] [Bug #9178]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_0_0@43961 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
* enumerator.c (enumerator_with_index_i): allow Bignum as offset, to
get rid of conversion exception and integer overflow.
[ruby-dev:47131] [Bug #8010]
* enumerator.c (enumerator_with_index): Restore handling of a nil memo
from r39594.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_0_0@43960 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
* file.c (rb_readlink): fix buffer overflow on a long symlink. since
rb_str_modify_expand() expands from its length but not its capacity,
need to set the length properly for each expansion.
[ruby-core:58592] [Bug #9157]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_0_0@43959 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
* util.c (ruby_strtod): ignore too long fraction part, which does not
affect the result.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_0_0@43778 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
time to invocation of signal handler from 0.01 sec to 0.2 sec.
RubyCI report error on mswin. reported by @unak
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_0_0@43732 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
[Backport #9104]
the patch is provided by drbrain (Eric Hodel).
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_0_0@43661 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|