Commit graph

5809 commits

Author SHA1 Message Date
usa
fd9f6bde95 * win32/win32.c, include/win32/win32.h (rb_w32_set_nonblock): new
function to support nonblock-mode of pipes.

* win32/win32.c (rb_w32_read): nonblock-mode pipe returns ERROR_NO_DATA
  if there is no data, but also returns it if remote-end is closed.

* win32/win32.c (rb_w32_write): if cannot to write any data, it may be
  blocking.

* io.c (rb_io_set_nonblock): use rb_w32_set_nonblock for Windows.

* ext/io/nonblock/nonblock.c (rb_io_nonblock_set): use ruby's API when
  setting nonblock-mode.

* test/ruby/test_io.rb: test nonblock pipes on Windows.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48361 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-11-10 10:42:19 +00:00
nobu
6ccf3d68c2 win32.c: login name encoding
* ext/etc/etc.c (etc_getlogin): set login name encoding properly.
  [ruby-core:66163] [Bug #10493]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48360 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-11-10 08:24:36 +00:00
nobu
770128ade3 test_bmethod.rb: block in bmethod test
* test/-ext-/proc/test_bmethod.rb (test_super_in_bmethod): block
  in bmethod test for [Feature #10195].

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48350 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-11-09 14:58:33 +00:00
nobu
26ae645501 vm.c: super in bmethod
* vm_eval.c (vm_call_super): allow bound proc method to call super
  method.
* vm_insnhelper.c (vm_yield_with_cfunc): push defined class and
  bound proc method entry to the control frame.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48348 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-11-09 14:25:52 +00:00
nobu
0066d95fd6 win32/registry.rb: slice in WCHARs
* ext/win32/lib/win32/registry.rb (Win32::Registry::API#Enum{Value,Key):
  ditto.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48333 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-11-09 03:09:40 +00:00
nobu
13d241489a thread.c: no function callsin RARRAY_LEN
* ext/thread/thread.c (queue_length, queue_num_waiting): avoid
  function calls in RARRAY_LEN macro which evaluates the argument
  multiple times.

* ext/thread/thread.c (rb_szqueue_num_waiting): ditto.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48315 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-11-07 16:36:16 +00:00
nobu
3614f8bd1c string.c: wchar terminator
* string.c (rb_str_lstrip_bang, rb_str_rstrip_bang): terminate
  wchar strings with wchar 0.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48275 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-11-05 01:54:22 +00:00
usa
2e5610353f * ext/win32/lib/Win32API.rb: Fiddle::Importer is defined in
fiddle/import.rb and it's not loaded implicitly.

* ext/win32/lib/Win32API.rb (Win32API#initialize): `import` is a string.

* ext/win32/lib/Win32API.rb (Win32API#initialize):
  Fiddle::Importer::CALL_TYPE_TO_ABI is private constant.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48270 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-11-04 12:26:19 +00:00
nobu
2f00182634 suppress warnings
* vm.c (rb_vm_make_proc): cast to suppress warning by VC6.

* ext/-test-/win32/console/attribute.c (console_set_attribute):
  ditto.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48266 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-11-04 07:25:41 +00:00
nobu
dd3aec25d6 Win32API.rb: update message [ci skip]
* ext/win32/lib/Win32API.rb: update warning message for fiddle.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48264 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-11-04 05:25:41 +00:00
nobu
7b011fd11e * ext/-test-/printf/printf.c, test/-ext-/test_printf.rb: remove
test for snprintf(3).

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48263 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-11-04 05:03:50 +00:00
nobu
e3787f8b36 ext/tk/tkutil/tkutil.c: disable untyped data warnings
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48252 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-11-03 06:22:16 +00:00
nobu
30f69beeba tkutil.c: inherit Data
* ext/tk/tkutil/tkutil.c: use Data as super class, not to inherit
  useless methods.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48250 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-11-03 05:36:29 +00:00
nobu
2320264ef6 foreach.c: printf specifier
* ext/-test-/st/foreach/foreach.c: get rid of hard coded "%lu",
  since st_data_t depends on the platforms.  use PRIuVALUE with
  casting VALUE instead since there is no specifier for it.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48249 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-11-03 05:36:18 +00:00
suke
985364954f ext/win32ole/win32ole_variant.c: use typed data.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48218 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-10-31 21:33:51 +00:00
tenderlove
07308c4d30 * ext/dl/*: remove DL as it is replaced by Fiddle.
[Feature #5458] Thanks to Jonan Scheffler <jonanscheffler@gmail.com>
  for this patch

* test/dl/*: ditto.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48217 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-10-31 21:13:09 +00:00
knu
c02fa39463 Make Digest() thread-safe.
* ext/digest/lib/digest.rb (Digest()): This function should now be
  thread-safe.  If you have a problem with regard to on-demand
  loading under a multi-threaded environment, preload "digest/*"
  modules on boot or use this method instead of directly
  referencing Digest::*. [Bug #9494]
  cf. https://github.com/aws/aws-sdk-ruby/issues/525

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48213 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-10-31 13:21:51 +00:00
knu
f701b0dfc4 Bump Syslog::Logger::VERSION to 2.1.0.
* ext/syslog/lib/syslog/logger.rb (Syslog::Logger::VERSION): Bump
  the VERSION to 2.1.0. [ruby-core:64483] [Bug #10159]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48208 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-10-31 07:49:18 +00:00
nobu
c2228158c9 extmk.rb: include UPDATE_LIBRARIES
* ext/extmk.rb: include UPDATE_LIBRARIES in SUBMAKEOPTS for NMAKE
  which does not include macro definitions given by command line
  in MAKEFLAGS.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48204 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-10-31 03:49:43 +00:00
nobu
40cc9231a9 tkutil.c: remove useless branches
* ext/tk/tkutil/tkutil.c (cbsubst_table_setup): remove useless
  branches and get rid of out of bound access.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48195 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-10-30 06:33:11 +00:00
nobu
b5524d9f8a eventids2.c: reduce size
* ext/ripper/eventids2.c (token_assoc): reduce size.  unsigned
  short can hold 65535 at least.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48169 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-10-28 02:53:24 +00:00
nobu
1b132cb254 eventids2.c: reduce size
* ext/ripper/eventids2.c (token_to_eventid): reduce relocations
  and element size.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48156 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-10-27 06:50:49 +00:00
nobu
92c61ca747 ripper/tools/generate.rb: shorten generated source
* ext/ripper/tools/generate.rb (generate_eventids1): shorten
  generated source.

* ext/ripper/tools/generate.rb (generate_eventids2): ditto.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48155 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-10-27 06:38:09 +00:00
nobu
d1ec43ae7a parse.y: Ripper.sexp returns error
* ext/ripper/lib/ripper/sexp.rb (Ripper.sexp, Ripper.sexp_raw):
  return nil on error.  [ruby-dev:48678] [Bug #10405]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48144 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-10-26 03:24:18 +00:00
suke
5d2ce2fb40 ext/win32ole/win32ole.c (ole_val2variant, ole_invoke): refactoring.
use ole_variant2variant to convert WIN32OLE_VARIANT object to
VARIANT object.

ext/win32ole/win32ole_variant.c: refactoring. add
ole_variant2variant.
ext/win32ole/win32ole_variant.h: ditto.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48139 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-10-25 22:46:15 +00:00
nobu
d4c22161f3 test/-ext-/hash/test_delete.rb: assert deleted values
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48115 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-10-23 14:18:32 +00:00
nobu
ca7835bec6 hash.c: rb_hash_delete does not call the block
* hash.c (rb_hash_delete): now does not call the block given to
  the current method.  [ruby-core:65861] [Bug #10413]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48114 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-10-23 12:42:57 +00:00
nagachika
7b0635d157 * ext/openssl/lib/openssl/ssl.rb (DEFAULT_PARAMS): override
options even if OpenSSL::SSL::OP_NO_SSLv3 is not defined.
  this is pointed out by Stephen Touset. [ruby-core:65711] [Bug #9424]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48097 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-10-22 13:55:24 +00:00
kosaki
2f438d6010 * ext/etc/etc.c (etc_nprocessors_affin): maximum "n" should be 16384.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48082 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-10-21 18:48:03 +00:00
kosaki
dfe56d3662 * ext/etc/etc.c (etc_nprocessors_affin): minor spell fix.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48081 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-10-21 18:46:46 +00:00
kosaki
0fa75e813e * ext/etc/etc.c (etc_nprocessors_affin): optimize memory usege a
bit. Typical rubyist never use 8k cpus machine.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48080 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-10-21 18:46:33 +00:00
hsbt
36284e2413 * ext/tk/lib/tkextlib/tile/treeview.rb: fix syntax error.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48024 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-10-19 11:06:07 +00:00
nagai
bf0e2520d7 * ext/tk/tcltklib.c: support Tcl/Tk8.6.
* ext/tk/lib/tk.rb: ditto.
* ext/tk/extconf.rb: ditto.
* ext/tk/lib/tk_mac.rb: add new features of Tcl/Tk8.6.
* ext/tk/lib/tkextlib/tile/treeview.rb: ditto.
* ext/tk/lib/tkextlib/tile/fontchooser.rb: add an alias.
* ext/tk/lib/tk/autoload.rb: ditto.
* ext/tk/lib/tkextlib/tcllib/validator.rb: add a new feature of tklib extension.
* ext/tk/lib/tkextlib/tkimg/dted.rb: a new supported format of Img extension.
* ext/tk/lib/tkextlib/tkimg/raw.rb: ditto.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48018 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-10-19 08:38:35 +00:00
akr
f65a15b0cf update doc.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@47965 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-10-15 23:12:21 +00:00
akr
0621ddc423 * ext/etc/etc.c (etc_nprocessors_affin): Test CPU_ALLOC availability.
CentOS 5 don't have CPU_ALLOC().



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@47943 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-10-15 13:09:23 +00:00
akr
7d9e04de49 * ext/etc/etc.c (etc_nprocessors_affinity): use sched_getaffinity
for getting precious number of available cpus.

* ext/etc/etc.c (etc_nprocessors): use etc_nprocessors_affinity if
  possible.

  [Feature #10267] etc-nprocessors-kosaki2.patch



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@47939 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-10-15 09:41:25 +00:00
suke
fb06f0802e ext/win32ole/win32ole_record.c: use typed data.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@47915 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-10-14 10:16:17 +00:00
zzak
2f00c56eb7 * ext/date/lib/date.rb: fix indent [ci skip]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@47909 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-10-13 20:16:07 +00:00
nagai
7ce520e90a * ext/tk/tcltklib.c: (experimental) support Tcl/Tk8.6.2.
* ext/tk/extconf.rb: ditto.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@47908 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-10-13 17:32:17 +00:00
zzak
6769d5d5ac * ext/date/date_core.c: [DOC] Clean up whitespace, examples, and typos
in date_core based on a patch by @vipulnsward [Fixes GH-724]
  https://github.com/ruby/ruby/pull/724


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@47895 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-10-12 18:21:41 +00:00
yugui
4883d12552 * ext/extmk.rb: generates the rule for extinit.$(OBJEXT).
extinit.$(OBJEXT) used to be generated by the builtin rule, thus
  didn't accept custom $(CC) and caused linkage error for cross
  compiling.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@47883 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-10-11 13:33:19 +00:00
zzak
f21431e574 * ext/socket/unixsocket.c: [DOC] Fix example to render in HTML
properly, with a patch by @eval [Fixes GH-733]
  https://github.com/ruby/ruby/pull/733


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@47871 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-10-11 00:33:08 +00:00
nobu
91e305bcda ruby/io.h: deprecate old macros
* include/ruby/io.h (rb_io_mode_flags, rb_io_modenum_flags):
  deprecate old macros for compatibility for ruby 1.8 and older.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@47861 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-10-10 02:27:41 +00:00
nobu
a9c42d1026 tcltklib.c: typed data
* ext/tk/tcltklib.c (tcltkip_type): use typed data.

* ext/tk/tcltklib.c ({call,eval,invoke}_queue_handler): hide
  internal objects.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@47859 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-10-09 07:53:59 +00:00
normal
f8b219e4d6 st: test packed-to-unpacked transitions during iteration
The st_foreach and st_foreach_check functions support transitioning
from a packed to an unpacked state during iteration.  However, this
functionality did not get exercised by the current test suite until
now.  This should help us prevent breakage when making modifications
to st.

* ext/-test-/st/foreach/extconf.rb: new file
* ext/-test-/st/foreach/foreach.c: ditto
* test/-ext-/st/test_foreach.rb: ditto
  [Feature #10321]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@47856 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-10-09 07:16:19 +00:00
suke
b61cb94e94 ext/win32ole/win32ole_variable.c: use typed data.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@47848 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-10-08 12:44:54 +00:00
normal
7fcf57412a ext/etc/etc.c (etc_systmpdir): set default tmplen correctly
Fixup r47826.

This fixes the following test failure for me:
TestRequire#test_tainted_loadpath [test/ruby/test_require.rb:331]:
SecurityError expected but nothing was raised.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@47841 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-10-07 20:25:07 +00:00
suke
1bb2721e4b ext/win32ole/win32ole_method.c: use typed data.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@47831 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-10-07 13:44:45 +00:00
suke
ab73066cf3 ext/win32ole/win32ole_param.c: refactoring
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@47830 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-10-07 12:47:58 +00:00
svn
cfd359ca28 * remove trailing spaces.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@47829 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-10-07 12:45:10 +00:00