Граф коммитов

24620 Коммитов

Автор SHA1 Сообщение Дата
nobu d1c0375526 test_io.rb: defer f_type
* test/ruby/test_io.rb (test_seek, test_seek_symwhence): defer
  File::Statfs#type call which may not be implemented, to mitigate
  errors on platforms where SEEK_DATA is available but f_type in
  struct statfs is not.  [ruby-dev:48154] [Bug #9789]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@45783 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-05-02 02:32:53 +00:00
nobu d42e0ea844 parse.y: turn dynamically interned Symbol into an ID
* parse.y (rb_id_attrset): turn dynamically interned Symbol into
  an ID, since rb_str_dynamic_intern returns a Symbol but not an
  ID.  [ruby-core:62226] [Bug #9787]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@45782 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-05-02 01:37:57 +00:00
kazu da0c358ebe fix typos
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@45776 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-05-01 13:25:44 +00:00
kazu 2957f88f8f * file.c: Change AND condition to nested condition.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@45774 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-05-01 13:25:40 +00:00
ngoto 793d9c14df * file.c (FSTATFS): check availability of struct statfs and
struct statvfs in addition to fstatfs(2) and fstatvfs(2).
  This fixes error in Solaris. [Bug #9788] [ruby-dev:48145]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@45768 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-04-30 15:38:31 +00:00
nari ca319081ce * gc.c (gc_after_sweep): suppress unnecessary expanding heap.
Tomb heap pages are freed pages here, so expanding heap is
  not required.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@45760 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-04-30 10:58:45 +00:00
ko1 ba6b0acdb6 * vm.c (invoke_block_from_c): add VM_FRAME_FLAG_BMETHOD to record
it is bmethod frame.
* vm.c (vm_exec): invoke RUBY_EVENT_RETURN event if rollbacked frame
  is VM_FRAME_FLAG_BMETHOD.
  [Bug #9759]
* test/ruby/test_settracefunc.rb: add a test for TracePoint/set_trace_func.
* vm_core.h: renmae rb_thread_t::passed_me to
  rb_thread_t::passed_bmethod_me to clarify the usage.
* vm_insnhelper.c (vm_call_bmethod_body): use renamed member.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@45758 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-04-30 09:08:10 +00:00
nobu 48384bbab7 parse.y: pin down dynamic symbol only
* parse.y (rb_id_attrset): pin down dynamic symbol only. it is
  possibe that attrset ID can be registered as a static symbol
  after the corresponding attrget ID has been registered as a
  dynamic, and then the latter may be collected.
  [ruby-core:62226] [Bug #9787]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@45756 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-04-30 08:06:51 +00:00
kazu b6d7233d53 fix style of ChangeLog
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@45745 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-04-29 08:42:07 +00:00
akr 07f2563745 * (lib/tmpdir.rb): Rescue LoadError on etc.so for miniruby.
Revert r45707, r45711, r45717.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@45744 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-04-29 05:19:38 +00:00
akr 17a4a9b993 * lib/fileutils.rb: Don't need to define fu_get_gid and fu_get_gid in
rescue LoadError on 'etc'.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@45743 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-04-29 03:51:13 +00:00
ktsj 0f51db6a1e * parse.y (symbols_i): like r45492, call rb_gc_resurrect().
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@45741 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-04-29 01:25:36 +00:00
kazu 7973883c3a new macros for statfs_t
* file.c (HAVE_STRUCT_STATFS_T_F_FSTYPENAME): Add new macro for
  statfs_t.
* file.c (HAVE_STRUCT_STATFS_T_F_TYPE): ditto.

* file.c (rb_io_statfs): check FSTATFS macro only instead of
  HAVE_FSTATFS and HAVE_FSTATVFS.

* file.c (statfs_type): use new macro.
* file.c (statfs_fstypename): ditto.
* file.c (statfs_inspect): ditto.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@45740 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-04-28 19:35:42 +00:00
nobu 37ce765ba3 fix typo [Fix GH-603]
* bootstraptest/test_literal.rb: fix typo of "dynamic".  [ci skip]
* regexp.rdoc: fix typo of "organized".  [ci skip]
* lib/session.rb: fix typo of "recognized".  [ci skip]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@45737 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-04-28 15:20:28 +00:00
naruse 19fac4432f * configure.in (HAVE_STRUCT_STATFS_F_TYPE): check struct statfs.f_type
to support OpenBSD.

* file.c (statfs_type): use above macro to switch.

* file.c (statfs_inspect): ditto.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@45734 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-04-28 12:46:23 +00:00
naruse 559d689ca6 * configure.in: check struct statvfs and struct statvfs.f_fstypename.
* configure.in: on NetBSD fstatfs is obsoleted.

* file.c: support NetBSD for File::Statfs.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@45733 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-04-28 09:08:15 +00:00
nari ec0cfc3a31 * gc.c: This argument must be a pointer.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@45731 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-04-28 08:46:36 +00:00
nari 6ee891d6a7 * gc.c: Fix typos. These are undefined variables.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@45730 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-04-28 08:46:33 +00:00
tadf a3a6da5ec5 trivial change
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@45729 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-04-27 10:45:58 +00:00
tadf bb05bcde01 * ext/date/date_strptime.c (date__strptime_internal): do not overwrite century.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@45728 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-04-27 10:44:23 +00:00
kazu 248fced311 fix indent
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@45726 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-04-27 07:35:11 +00:00
hsbt 2406557794 * test/ruby/test_enum.rb (test_flat_map): Added test for flat_map.
Contribute from @igaiga. [fix GH-598]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@45725 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-04-26 02:53:54 +00:00
nobu 37e432b5bf compile.c: non-destructive keyword splat
* compile.c (compile_array_): make copy a first hash not to modify
  the argument itself.  keyword splat should be non-destructive.
  [ruby-core:62161] [Bug #9776]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@45724 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-04-26 01:55:34 +00:00
akr 79c09eb597 * test/ruby/test_process.rb (test_rlimit_nofile): Don't limit
RLIMIT_NOFILE too small.
  This fix sporadic "[ASYNC BUG] thread_timer: select" on GNU/Linux.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@45721 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-04-25 23:07:28 +00:00
ngoto 1377f38c9b * lib/fileutils.rb (rmdir): rescue Errno::EEXIST in addition to
ENOTEMPTY (and ENOENT), because SUSv3 describes that "If the
  directory is not an empty directory, rmdir() shall fail and set
  errno to [EEXIST] or [ENOTEMPTY]" and Solaris uses EEXIST.
  [Bug #9571] [ruby-dev:48017]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@45720 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-04-25 14:28:56 +00:00
akr 2f60d08519 * lib/webrick/utils.rb: Don't rescue LoadError for 'etc' extension.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@45719 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-04-25 10:17:15 +00:00
nobu e4cde46942 configure.in: refine __builtin_unreachable check
* configure.in (rb_cv_func___builtin_unreachable): try with an
  external variable not only by a warning, which might not be
  shown due to the optimization.  [ruby-core:61647] [Bug #9665]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@45716 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-04-25 05:56:01 +00:00
naruse b4682ea330 * configure.in: NetBSD's ksh, used by configure, needs escapes.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@45715 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-04-25 04:13:56 +00:00
naruse b87df1bf24 * configure.in: correct pthread_setname_np's prototype on NetBSD.
[Bug #9586]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@45713 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-04-25 04:06:45 +00:00
usa 3c00fe9f41 * lib/fileutils.rb (fu_get_uid, fu_get_gid): Etc.getpwnam/getgrnam may
returns nil.

* lib/webrick/utils.rb (su): ditto.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@45712 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-04-24 14:19:21 +00:00
akr a87c3b4869 * bootstraptest/test_io.rb: Add etc.so to $" before require 'tmpdir'.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@45711 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-04-24 13:56:09 +00:00
akr 917681a3b7 revert r45709.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@45710 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-04-24 13:54:07 +00:00
akr b3cd42ede0 * bootstraptest/test_io.rb: Don't use tmpdir because etc.so is not
usable from miniruby.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@45709 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-04-24 13:40:18 +00:00
kazu defcc5aa0f * man/ruby.1: fix broken link.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@45708 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-04-24 12:11:01 +00:00
akr 869c7ce0d1 * lib/tmpdir.rb: Don't need to rescue LoadError for etc.so.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@45707 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-04-24 11:53:31 +00:00
naruse f83d51d814 * file.c (statfs_inspect): suppress warnings.
assume those values won't be larger than LONG_LONG_MAX.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@45704 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-04-24 08:46:56 +00:00
nobu e923de6d4a ossl_asn1.c: fix undefined behavior
* ext/openssl/ossl_asn1.c (ossl_asn1_initialize): SYMID on a value
  other than Symbol is an undefined behavior.  fix up r31699.
  [ruby-core:62142] [Bug #9771]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@45701 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-04-24 02:53:29 +00:00
nobu 34c35bf107 parse.y: check for symbol
* parse.y (rb_sym2id, rb_sym2id_without_pindown): return 0 for
  non-symbol values, for the time being.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@45700 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-04-24 02:21:38 +00:00
naruse 2dca886a07 * parse.y (dsym_node_gen): like r45492, call rb_gc_resurrect().
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@45693 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-04-23 20:59:03 +00:00
akr 708e1bd49d * ext/etc/extconf.rb: Build ext/etc unconditionally.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@45692 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-04-23 11:53:07 +00:00
naruse 297fe29fa9 * file.c (statfs_fsid): remove statfs.f_fsid because it doesn't return
meaningful value portably. http://togetter.com/li/658517

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@45689 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-04-23 05:25:12 +00:00
nobu 2c14872b9f stringio.c: use rb_str_append other than ASCII-8BIT
* ext/stringio/stringio.c (strio_write): use rb_str_append to
  reuse coderange bits other than ASCII-8BIT, and keep
  taintedness.  [ruby-dev:48118] [Bug #9769]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@45677 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-04-23 02:03:43 +00:00
naruse 506c6f52b9 Revert r45670 "stringio.c: use rb_str_append"
It breaks test-all.
http://u64b.rubyci.org/~chkbuild/ruby-trunk/log/20140422T143301Z.diff.html.gz

rb_str_conv_enc() return original string for example when
from ASCII-8BIT to UTF-8 with non ASCII strings

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@45674 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-04-22 18:44:48 +00:00
usa 86dc863bd8 * win32/win32.c, include/ruby/win32.h (ustatfs): implementation of
statfs(2) clone. [EXPERIMENTAL]

* file.c (rb_io_statfs): use above function.

* configure.in, win32/Makefile.sub (struct statfs): available.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@45672 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-04-22 15:45:00 +00:00
usa 900ede4053 * file.c (rb_io_stafs): use statfs(2) if fstatfs(2) is unavailable.
* configure.in (fstatfs): check it.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@45671 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-04-22 14:57:18 +00:00
nobu a197581765 stringio.c: use rb_str_append
* ext/stringio/stringio.c (strio_write): use rb_str_append to
  reuse coderange bits and keep taintedness.
  [ruby-dev:48118] [Bug #9769]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@45670 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-04-22 14:14:30 +00:00
usa 026b0b9469 * file.c (rb_io_statfs): need to define even if the system doesn't have
fstatfs(2).

* test/ruby/test_file.rb (TestFile#test_statfs): skip if IO#stafs is not
  implemented.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@45668 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-04-22 13:19:15 +00:00
kazu 482dd826ee fix a typo
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@45665 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-04-22 12:32: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
ko1 d32ad2efca * gc.c (objspace_malloc_increase): don't cause GC by malloc_increase
when memop type is MEMOP_TYPE_REALLOC.
  GC at realloc is not well maintained.
  We need a time to make it safe.
  [ruby-dev:48117]



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@45656 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-04-21 23:37:18 +00:00