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

24625 Коммитов

Автор SHA1 Сообщение Дата
kosaki 74a13c7634 * numeric.c (check_uint): fix off-by-one bug of NUM2UINT.
* bignum.c (rb_big2ulong): fix off-by-one bug of NUM2ULONG.

* test/-ext-/num2int/test_num2int.rb: add a testcase for NUM2INT()
  NUM2UINT(), NUM2LONG(), NUM2ULONG(), NUM2LL and NUM2ULL().
* ext/-test-/num2int/depend: ditto.
* ext/-test-/num2int/extconf.rb: ditto.
* ext/-test-/num2int/num2int.c: ditto.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@33739 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-11-14 03:45:47 +00:00
nobu 416778c5d8 * ext/dbm/extconf.rb: use convertible_int.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@33738 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-11-13 14:47:31 +00:00
nobu a0146d1e87 * lib/mkmf.rb (checking_for): should not modify the result.
* lib/mkmf.rb (have_struct_member): accept compiler opttions.
* lib/mkmf.rb (convertible_int): add restricted support of struct
  member, and TYPEOF_ macro.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@33737 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-11-13 14:46:01 +00:00
akr 4b01d611db * ext/gdbm/gdbm.c (fgdbm_reorganize): set close-on-exec flag after
gdbm_reorganize().  gdbm_reorganize() opens a new database internally.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@33736 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-11-13 14:22:17 +00:00
akr abe61eb0d1 update comments.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@33735 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-11-13 12:32:15 +00:00
akr bfed16a21f * ext/dbm/extconf.rb: rollback for each headers for each libraries.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@33734 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-11-13 10:58:18 +00:00
akr e8ca9cc343 * ext/dbm/extconf.rb: treat libc as a choice for a library which
provide ndbm API.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@33733 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-11-13 07:25:40 +00:00
akr 3e5bff7ec1 * ext/dbm/extconf.rb: duplicate $libs and $defs when save them.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@33732 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-11-13 06:41:19 +00:00
akr 2b2ef5cfce * ext/dbm/extconf.rb: rollback $libs and $defs when db detection is
failed.  It fixes -lgdbm -lqdbm when the system has qdbm and gdbm
  without gdbm_compat.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@33731 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-11-13 03:47:07 +00:00
kosaki d3fc4ae7cb * test/webrick/test_cgi.rb (class TestWEBrickCGI): respect
RbConfig::CONFIG["LIBPATHENV"]. [Bug #5135] [ruby-core:38653]
* test/webrick/test_filehandler.rb (class WEBrick): ditto.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@33730 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-11-12 18:03:37 +00:00
svn d956e6dba2 * 2011-11-13
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@33729 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-11-12 17:43:01 +00:00
kosaki 3aaf92b5a1 * test/ruby/test_io.rb (test_fcntl_dupfd): skip if Fcntl::DUPFD
is not defined. Pointed out by CHIKANAGA Tomoyuki. Thanks.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@33728 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-11-12 17:42:57 +00:00
nobu 80c32b2330 * io.c (do_ioctl, ioctl_narg_len, setup_narg, rb_ioctl): use
ioctl_req_t.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@33727 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-11-12 08:26:13 +00:00
nobu 521f420a77 * ext/dbm/extconf.rb (headers.db_check): reduce duplicated code.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@33726 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-11-12 08:01:51 +00:00
akr 0eb08aa068 update comment.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@33725 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-11-12 07:50:12 +00:00
nobu 9998578951 * ChangeLog, io.c: whitespace-cleanup.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@33724 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-11-12 07:49:48 +00:00
akr df2e1f85d2 * ext/dbm/extconf.rb: dbm_clearerr should be available in all ndbm
implementation.  If it is not available, it is caused by
  header/library mismatch such that Berkeley DB header & gdbm library.

* ext/dbm/dbm.c (fdbm_store): use dbm_clearerr() unconditionally.
  gdbm 1.9 provides it as a real function instead of a empty macro.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@33723 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-11-12 07:06:09 +00:00
kosaki 5c29d116c2 * bootstraptest/runner.rb: don't suppress SIGINT.
[Feature #5612] [ruby-dev:44856]



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@33722 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-11-12 04:37:54 +00:00
kosaki 33817fbc29 * io.c (fcntl_narg_len): introduce narg calculation for fcntl instead
of hard coded 256.
* io.c (setup_narg): ditto.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@33721 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-11-12 02:33:58 +00:00
kosaki 632652a244 * test/ruby/test_io.rb (test_fcntl_dupfd): add another fcntl test.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@33720 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-11-12 02:32:16 +00:00
kosaki f2708ce30f * test/ruby/test_io.rb (test_fcntl_lock_freebsd): add a testcase
of fcntl lock for freebsd.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@33719 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-11-12 02:31:15 +00:00
kosaki 791f5449c1 * io.c (ioctl_narg_len): Linux doesn't have IOCPARM_LEN macro, but
has _IOC_SIZE. support it.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@33718 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-11-12 02:29:37 +00:00
kosaki b3027d5929 * io.c (rb_ioctl): don't expose our sanity check value to ruby script.
It may change string value meaning if the value is string.
  (e.g. MacOS X has  F_GETPATH ioctl)
* io.c (rb_fcntl): ditto.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@33717 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-11-12 02:27:51 +00:00
kosaki 7e2f0491ce * io.c (ioctl_req_t): Type of req argument of ioctl() depend on platform.
Moreover almost all linux ioctl can't be represented by 32bit integer
  (i.e. MSB is 1). We need wrap ioctl argument type.
[Bug #5429] [ruby-dev:44589]
* io.c (struct ioctl_arg): ditto.
* io.c (rb_ioctl): ditto.
* test/ruby/test_io.rb (test_ioctl_linux): add a testcase for ioctl



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@33716 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-11-12 02:24:51 +00:00
kosaki fc7bb927a2 * io.c (struct io_cntl_arg): remove io_p member.
* io.c (nogvl_fcntl, do_fcntl, rb_fcntl): separated from ioctl functions.
* io.c (nogvl_io_cntl): remove fcntl depended logic.
* io.c (io_cntl): ditto.
* io.c (rb_io_ctl): ditto.
* io.c (rb_io_ioctl): ditto.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@33715 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-11-12 02:17:41 +00:00
kosaki f13d10a0af * io.c (setup_narg): fix off by one bug.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@33714 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-11-12 02:12:19 +00:00
kosaki eec252e2e5 * io.c (+setup_narg): factor out length calculation logic.
* io.c (rb_io_ctl): ditto.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@33713 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-11-12 02:09:56 +00:00
svn 6ed2a4dfb3 * 2011-11-12
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@33712 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-11-12 02:06:28 +00:00
kosaki 9d16ad639f * io.c (+ioctl_narg_len) new helper function.
* io.c (rb_io_ctl): don't use ioctl specific length check
  if caller is fcntl.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@33711 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-11-12 02:06:23 +00:00
akr db48bbdf0b * ext/dbm/extconf.rb: db_prefix is not required now.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@33710 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-11-11 14:01:25 +00:00
akr 268f6c3680 * ext/gdbm/gdbm.c (fgdbm_initialize): use GDBM_CLOEXEC if available.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@33709 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-11-11 12:14:23 +00:00
akr 266d09839b * ext/dbm/extconf.rb: fix dbm_pagfno and dbm_dirfno detection with
Berkeley DB.  Macro definitions needs arguments to detect correctly.
  SIZEOF_DSIZE needs -DDB_DBM_HSEARCH because db.h defines datum type
  only if DB_DBM_HSEARCH is defined. 



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@33708 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-11-11 12:03:51 +00:00
nobu 6cedbce87d * process.c (proc_seteuid): separate an internal wrapper function
from the method implementation.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@33707 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-11-11 09:42:02 +00:00
nobu 214fd6ce77 * lib/mkmf.rb (have_library, find_library, have_func): allow
arguments of function to be checked.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@33706 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-11-11 08:21:17 +00:00
nobu 05e7354864 * vm_dump.c (HAVE_BACKTRACE): fallback to 0.
* vm_dump.c (rb_vm_bugreport): show "Other runtime information"
  header only when available.
* vm_dump.c (rb_vm_bugreport): get rid of modifying the content of
  VM directly.
* vm_dump.c (rb_vm_bugreport): check if vm is non-null.
  Pointed out by Ikegami Daisuke <ikegami.da@gmail.com>.
  Thank you.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@33705 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-11-11 08:09:48 +00:00
kosaki 0d746627af * io.c (pipe_open): Remove fflush(stdin). it's no effect.
Pointed out by Ikegami Daisuke <ikegami.da@gmail.com>.
  Thank you.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@33704 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-11-11 03:41:13 +00:00
akr 688e1b34a6 add comment.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@33703 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-11-11 03:35:49 +00:00
svn da7cefb0f8 * 2011-11-11
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@33702 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-11-10 23:35:39 +00:00
drbrain 661a936e64 * lib/net/http.rb (Net::HTTP::SSL_ATTRIBUTES): Use symbol keys instead
of string keys to avoid duplicating parameters in
  OpenSSL::SSL:SSLContext#set_params.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@33701 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-11-10 23:35:35 +00:00
akr e68f4ac7dc add comment.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@33700 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-11-10 11:39:16 +00:00
nobu 6c9a235938 * ext/dbm/extconf.rb: set DB_DBM_HSEARCH macro to check dbm_pagfno and
dbm_dirfno on older Debian.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@33699 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-11-10 06:43:46 +00:00
nobu fb1836ab48 * ext/dbm/extconf.rb: check for dsize as LONG_LONG.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@33698 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-11-10 06:43:44 +00:00
nobu fc5f37f0e1 * lib/mkmf.rb (try_func): ignore empty opts.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@33697 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-11-10 06:13:37 +00:00
nobu cfe220d8f3 * lib/mkmf.rb (have_library, have_func, have_var, have_header):
add compiler option parameter.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@33696 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-11-10 06:02:40 +00:00
drbrain a5fc87bd5b * ext/openssl/lib/openssl/ssl.rb (class OpenSSL::SSL::SSLContext):
Document #set_params.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@33695 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-11-09 23:45:39 +00:00
svn b5167b4819 * 2011-11-10
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@33694 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-11-09 17:10:54 +00:00
kosaki 871c6923dc * thread_pthread.c (gvl_yield): don't prevent concurrent sched_yield().
[Bug #5130] [ruby-core:38647]



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@33693 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-11-09 17:10:48 +00:00
nobu c88d35619b * io.c (rb_update_max_fd): fstat(2) can fail with other than
EBADF.  [ruby-dev:44837] [Bug #5593].  Cf.
	  http://pubs.opengroup.org/onlinepubs/9699919799/functions/fstat.html

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@33692 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-11-09 14:23:04 +00:00
nobu 1393e55d09 * io.c (rb_update_max_fd): fstat(2) can fail with other than
EBADF.  [ruby-dev:44837] [Backport #4339].  Cf.
  http://pubs.opengroup.org/onlinepubs/9699919799/functions/fstat.html

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@33691 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-11-09 14:20:27 +00:00
nobu 42b4255d08 * io.c (rb_sysopen): max fd is updated in rb_sysopen_internal()
already.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@33690 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-11-09 13:54:33 +00:00