Commit graph

7105 commits

Author SHA1 Message Date
naruse
856dc678f8 refix the point is seek
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@45664 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-04-22 11:46:24 +00:00
naruse
d863be7cb6 show what filesystem it is on failure
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@45662 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-04-22 10:37:01 +00:00
naruse
035a4e7d72 * file.c: newly added a class File::Statfs. (experimental)
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@45661 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-04-22 10:35:57 +00:00
nobu
c37ac198fc test_io.rb: test with holes
* test/ruby/test_io.rb (test_seek, test_seek_symwhence): add tests
  of SEEK_DATA and SEEK_HOLE with holes.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@45659 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-04-22 02:27:17 +00:00
naruse
c71019f888 * ext/-test-/string/coderange.c: add Bug::String.new#coderange_scan
to explicitly scan coderange.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@45649 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-04-21 10:14:46 +00:00
nobu
90e393b368 stringio.c: non-ascii encoding
* 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/trunk@45646 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-04-21 05:11:50 +00:00
tarui
c94cb8b805 * st.c (st_foreach_check): chnage start point of search at check
from top to current. [ruby-dev:48047] [Bug #9646]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@45642 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-04-20 03:58:22 +00:00
nobu
c501345218 parse.y: allow parenthesed do-block in cmdarg
* 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/trunk@45637 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-04-19 06:38:31 +00:00
nobu
118838ad3a enum.c: fix condition to recycle block argument
* enum.c (dont_recycle_block_arg): fix condition to recycle block
  argument.  lambda with rest can get internal array directly.
  [ruby-core:62060] [Bug #9749]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@45603 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-04-16 14:47:38 +00:00
nobu
fcbd13b10a test_enum.rb: add tests
* test/ruby/test_enum.rb (test_each_slice, test_each_cons): add
  missing tests for Enumerable#each_slice and Enumerable#each_cons.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@45602 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-04-16 14:44:46 +00:00
nobu
4c98e1a2c7 * test/fileutils/test_fileutils.rb: revert r45600.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@45601 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-04-16 14:30:21 +00:00
nobu
a6abfa2da7 test_fileutils.rb: test :preserve option
* test/fileutils/test_fileutils.rb (test_cp_preserve_permissions):
  should test with setting :preserve option.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@45600 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-04-16 14:16:19 +00:00
nobu
a39b88d2fd ossl_pkey.c: fix memory leak
* 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/trunk@45595 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-04-16 00:51:18 +00:00
nobu
160b67df68 proc.c: use already included ancestor iclass
* 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/trunk@45585 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-04-14 08:20:10 +00:00
akr
9aa67e267b * bignum.c (SIZEOF_BDIGIT): Renamed from SIZEOF_BDIGITS.
* internal.h: Ditto.

* marshal.c: Ditto.

* rational.c: Ditto.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@45580 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-04-13 03:48:17 +00:00
nobu
036b55e5a4 test_array.rb: skip if timed out
* test/ruby/test_array.rb (test_shared_marking): skip if timed out,
  this test can just take a lot of time.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@45567 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-04-11 06:53:28 +00:00
nobu
2cabdf2a8e test_array.rb: expand timeout
* test/ruby/test_array.rb (test_shared_marking): expand timeout for
  less powerful machine.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@45566 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-04-11 06:17:17 +00:00
nobu
46f578d806 proc.c: fix super in bound UnboundMethod
* 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.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@45565 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-04-11 06:05:28 +00:00
nobu
2329a1a88d vm_insnhelper.c: preserve encodings
* vm_insnhelper.c (vm_search_super_method): preserve encodings of
  classes in message.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@45564 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-04-11 05:40:52 +00:00
nobu
153fa25658 array.c: maybe shared array
* 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/trunk@45562 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-04-11 03:44:52 +00:00
nobu
48d5eb3d40 test_array.rb: do minor GC
* test/ruby/test_array.rb (test_shared_marking): do minor GC to
  reduce WB-missed messages.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@45561 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-04-11 01:49:04 +00:00
nobu
5a717d95a9 test_array.rb: simplify test_shared_marking
* test/ruby/test_array.rb (test_shared_marking): simplify with
  timeout option and no random, also reduce same messages.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@45558 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-04-11 01:31:03 +00:00
nobu
147365f4e2 envutil.rb: filter kwargs
* test/ruby/envutil.rb (EnvUtil#invoke_ruby): add stdout_filter
  and stderr_filter optional keyword arguments, which filter
  stdout and stderr outputs respectively.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@45557 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-04-11 01:31:00 +00:00
ko1
5877dcbb13 * test/ruby/test_array.rb: remove useless `assert'.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@45554 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-04-10 10:23:23 +00:00
ko1
f19bf5ba5a * 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.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@45553 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-04-10 10:16:24 +00:00
naruse
cf0a0c5a66 explicitly specify ::File
There's Bug::File in test/-ext-/file/test_stat.rb.
It prevent constan search with `File`.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@45551 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-04-10 07:39:44 +00:00
ko1
52b6be0ad3 * test/ruby/test_gc.rb: more long timeout.
This test failed under RGENGC_CHECK_MODE >= 2.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@45538 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-04-09 05:45:01 +00:00
nobu
68537a4219 string.c: fix capacity
* 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/trunk@45534 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-04-09 03:44:55 +00:00
marcandre
d11d87c362 * lib/matrix.rb: Add Matrix#cofactor [fix GH-568]
Patch by gogotanaka

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@45528 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-04-06 17:46:16 +00:00
marcandre
b8ba202301 * lib/matrix.rb: Add first_minor [fix GH-568]
Patch by gogotanaka

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@45527 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-04-06 17:45:54 +00:00
marcandre
1657d516e9 * test/matrix/test_matrix: Add tests for trivial cases [fix GH-576]
Patch by gogotanaka

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@45526 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-04-06 17:45:28 +00:00
marcandre
bcf8dd1096 * lib/matrix: Handle empty diagonal matrix case [fix GH-576]
Patch by gogotanaka

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@45524 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-04-06 17:45:07 +00:00
nobu
a237db5cbc dln.c: non-ascii path on Windows
* 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/trunk@45523 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-04-05 23:52:52 +00:00
tadf
cce3aa754b * ext/date/date_core.c (d_lite_cmp): should compare with #<.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@45520 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-04-05 10:53:16 +00:00
kazu
60d4fc9f68 Fix error with empty args.
* ext/pathname/lib/pathname.rb (Pathname#join): Fix error with
  empty args. Reported by ko1 via IRC.

* test/pathname/test_pathname.rb (TestPathname#test_join): Add the
  test for above case.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@45499 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-04-02 02:51:20 +00:00
jeg2
1170b057e0 * lib/csv.rb: Symbol HeaderConverter: strip leading/trailing space.
Reported by Skye Shaw
  [Fixes GH-575]



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@45498 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-04-01 14:40:48 +00:00
jeg2
7c4d4e1eb2 * lib/csv.rb: Don't attempt to convert nil headers.
Reported by Skye Shaw



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@45497 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-04-01 14:35:03 +00:00
usa
bf905503a0 * test/ruby/memory_status.rb: require envutil before accessing EnvUtil
module.  reported by ko1 via twitter.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@45486 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-03-31 08:24:30 +00:00
nobu
d14458fb41 signal.c: preserve encoding
* signal.c (esignal_init): preserve encoding in error messages.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@45483 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-03-31 02:34:43 +00:00
nobu
03f0ca4c81 vm.c: avoid inadvertent pin-down
* vm.c (vm_stat): get rid of inadvertent dynamic symbol pin-down,
  and preserve encoding in error messages.  also should not use
  RSTRING_PTR macro on function calls.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@45482 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-03-31 02:34:40 +00:00
nobu
a92374677c gc.c: avoid inadvertent pin-down
* gc.c (gc_info_decode): get rid of inadvertent dynamic symbol
  pin-down, and preserve encoding in error messages.  also should
  not use RSTRING_PTR macro on function calls.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@45480 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-03-30 21:55:59 +00:00
nobu
c0dee604fe process.c: preserve encodings
* process.c (rlimit_resource_type, rlimit_resource_value):
  preserve argument encoding in error messages.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@45478 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-03-30 21:00:53 +00:00
nobu
956745eee2 test_process.rb: test if success?
* test/ruby/test_process.rb (test_rlimit_value): should not use
  magic number 0, which may not be EXIT_SUCCESS.  use `success?`
  instead.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@45477 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-03-30 21:00:51 +00:00
nobu
8062cdc6b0 test_member.rb: fix locale depending test failure
* test/-ext-/struct/test_member.rb (test_member_get): set
  default_external encoding to fix locale depending test failure.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@45466 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-03-28 22:43:22 +00:00
nobu
1d223a3bdf struct.c: avoid pinning down
* struct.c (rb_struct_set, rb_struct_aref, rb_struct_aset): get
  rid of pinning down dynamic symbols by SYM2ID.

* struct.c (rb_struct_aref_sym, rb_struct_aset_sym): use Symbol
  instead of ID.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@45465 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-03-28 12:36:27 +00:00
nobu
4a46362239 struct.c: encoding of member name
* struct.c (not_a_member): preserve encoding of member name in
  error messages.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@45463 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-03-28 10:32:36 +00:00
nobu
afb4bcbfd6 struct.c: not_a_member message
* struct.c (not_a_member): extract name error and use same error
  messages.  based on the patch by Marcus Stollsteimer <sto.mar AT
  web.de> at [ruby-core:61721].  [Bug #9684]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@45462 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-03-28 10:32:16 +00:00
nobu
9d1bf5b33a string.c: infect match result
* string.c (rb_pat_search): match result should be infected by the
  pattern.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@45460 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-03-28 02:28:18 +00:00
nobu
2f14bde88f string.c: backref substitution
* re.c (rb_reg_regsub): allow nil regexp for string matching.

* string.c (rb_str_sub_bang, str_gsub): make substitution if
  replacement string has backref escapes.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@45459 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-03-28 02:28:16 +00:00
nobu
2d82342cf2 string.c: unset $~ if unmatch
* string.c (rb_pat_search): unset $~ if the last match failed.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@45458 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-03-28 02:27:14 +00:00