Age | Commit message (Collapse) | Author |
|
[#15206] [Fix GH-1976]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65505 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
This reverts commit d2671c96f32e6fbbd39162a2c9042dcaf3bf2d68.
previous reverting is commit miss
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65246 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
This reverts commit 2948d3bd2e78b5b9110454a7135a81c3fecb2575.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65242 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65214 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
Closing a listen socket while entering select(2) may
trigger IOError or even deadlock because another thread
may give the file descriptor to another file description;
meaning the kernel can wait on the wrong description.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@64532 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
IO#close is idempotent, so we don't need to waste bytecode
to check or nil it at shutdown time.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@64531 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
Patch by: yuuji.yaginuma <yuuji.yaginuma@gmail.com>
https://github.com/ruby/ruby/pull/1900
[Fix GH-1900]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@63775 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@62798 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@61516 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
* vm_core.h (rb_vm_t): move `rb_execution_context_t::safe_level` to
`rb_vm_t::safe_level_` because `$SAFE` is a process (VM) global state.
* vm_core.h (rb_proc_t): remove `rb_proc_t::safe_level` because `Proc`
objects don't need to keep `$SAFE` at the creation.
Also make `is_from_method` and `is_lambda` as 1 bit fields.
* cont.c (cont_restore_thread): no need to keep `$SAFE` for Continuation.
* eval.c (ruby_cleanup): use `rb_set_safe_level_force()` instead of access
`vm->safe_level_` directly.
* eval_jump.c: End procs `END{}` doesn't keep `$SAFE`.
* proc.c (proc_dup): removed and introduce `rb_proc_dup` in vm.c.
* safe.c (rb_set_safe_level): don't check `$SAFE` 1 -> 0 changes.
* safe.c (safe_setter): use `rb_set_safe_level()`.
* thread.c (rb_thread_safe_level): `Thread#safe_level` returns `$SAFE`.
It should be obsolete.
* transcode.c (load_transcoder_entry): `rb_safe_level()` only returns
0 or 1 so that this check is not needed.
* vm.c (vm_proc_create_from_captured): don't need to keep `$SAFE` for Proc.
* vm.c (rb_proc_create): renamed to `proc_create`.
* vm.c (rb_proc_dup): moved from proc.c.
* vm.c (vm_invoke_proc): do not need to set and restore `$SAFE`
for `Proc#call`.
* vm_eval.c (rb_eval_cmd): rename a local variable to represent clearer
meaning.
* lib/drb/drb.rb: restore `$SAFE`.
* lib/erb.rb: restore `$SAFE`, too.
* test/lib/leakchecker.rb: check `$SAFE == 0` at the end of tests.
* test/rubygems/test_gem.rb: do not set `$SAFE = 1`.
* bootstraptest/test_proc.rb: catch up this change.
* spec/ruby/optional/capi/string_spec.rb: ditto.
* test/bigdecimal/test_bigdecimal.rb: ditto.
* test/fiddle/test_func.rb: ditto.
* test/fiddle/test_handle.rb: ditto.
* test/net/imap/test_imap_response_parser.rb: ditto.
* test/pathname/test_pathname.rb: ditto.
* test/readline/test_readline.rb: ditto.
* test/ruby/test_file.rb: ditto.
* test/ruby/test_optimization.rb: ditto.
* test/ruby/test_proc.rb: ditto.
* test/ruby/test_require.rb: ditto.
* test/ruby/test_thread.rb: ditto.
* test/rubygems/test_gem_specification.rb: ditto.
* test/test_tempfile.rb: ditto.
* test/test_tmpdir.rb: ditto.
* test/win32ole/test_win32ole.rb: ditto.
* test/win32ole/test_win32ole_event.rb: ditto.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@61510 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
* Patch by @seki:
https://gist.github.com/seki/ae8bef20238c37c94a91b5461c4bfbdd
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@61342 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
* lib/drb/drb.rb: avoid creating a Thread and call the shutdown logic
directly. Do not try to kill or join the current Thread.
Thread.new { stop_service } caused "can't alloc thread (ThreadError)",
which is shown with Thread.report_on_exception = true.
[Bug #14171]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@61184 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@60139 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@56037 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@53963 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
avoid infamous DRb::DRbConnError. [Feature #12101]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@53962 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
When you change this to true, you may need to add more tests.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@53141 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
target problem was misteriously disappeared.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@52515 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
reverted later.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@52442 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
Sockets are close-on-exec by default since Ruby 2.0, so it
is redundant to set it again.
* lib/drb/drb.rb (set_sockopt): remove redundant fcntl call
* lib/drb/unix.rb (set_sockopt): ditto
[ruby-core:69128] [Feature #11137]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@50645 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
In case a process encounters high-numbered FDs, this allows
consistent performance on systems with ppoll support.
[ruby-core:35572]
* ext/socket/lib/socket.rb (connect_nonblock): use IO#wait_writable
* lib/drb/drb.rb (DRB::DRbTCPSocket#alive?): use IO#wait_readable
* lib/webrick/httpserver.rb (run): ditto
* lib/resolv.rb (request): ditto for single socket case
[ruby-core:68943] [Feature #11081]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@50432 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
* lib/drb/drb.rb (stop_service): just stop but do not wait handler
threads.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@49312 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
* lib/drb/drb.rb (stop_service): stop all handler threads started
in main_loop. fix thread leaks.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@49310 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
[fix GH-515]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@49130 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
(DRbTCPSocket#initialize): Create a pipe for shutdown notification.
(DRbTCPSocket#close): Invoke close_shutdown_pipe.
(DRbTCPSocket#close_shutdown_pipe): New private method.
(DRbTCPSocket#accept): Use accept_or_shutdown.
(DRbTCPSocket#accept_or_shutdown): New private method which returns
nil on shutdown.
(DRbServer#stop_service): Use shutdown instead of Thread#kill.
(DRbServer#run): Break infinite loop when main_loop returns nil.
(DRbServer#main_loop): @protocol.accept may return nil.
* lib/drb/ssl.rb: Follow above change.
* lib/drb/unix.rb: Ditto.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@47678 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
[Feature #10172][ruby-core:64582]
* lib/irb/ruby-token.rb: ditto.
* lib/net/telnet.rb: ditto.
* lib/rdoc/ruby_token.rb: ditto.
* lib/thwait.rb: ditto.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@47298 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@47101 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
Based on a patch by @rosenfeld [Fixes GH-514] [ci skip]
https://github.com/ruby/ruby/pull/514
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@44784 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
expression in DRb Logger example. Reported by Chris Pheonix
[Bug #9074]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43632 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
* lib/drb/drb.rb: Documented DRb::DRb#run.
* lib/erb.rb (class ERB): Improved documentation of ERb.
* transcode.c: Documented Encoding::Converter constants.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38948 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
Batts. [ruby-trunk - Bug #7714]
* lib/drb/ssl.rb: ditto.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38938 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
* lib/drb/eq.rb: ditto.
* lib/drb/extserv.rb: ditto.
* lib/drb/gw.rb: ditto.
* lib/drb/invokemethod.rb: ditto.
* lib/drb/observer.rb: ditto.
* lib/drb/ssl.rb: ditto.
* lib/drb/timeridconv.rb: ditto.
* lib/drb/unix.rb: ditto.
* sample/drb/gw_cu.rb: Fixed bug in DRb gateway sample.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38937 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
{const_,instance_variable_}{get,set}. [#7161]
* lib/drb/drb.rb: ditto.
* lib/ipaddr.rb: ditto.
* lib/irb/workspace.rb: ditto.
* lib/monitor.rb: ditto.
* lib/rss/maker/base.rb: ditto.
* lib/rss/rss.rb: ditto.
* lib/xmlrpc/parser.rb: ditto.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37688 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@36750 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
Patch by Zachary Scott. [ruby-trunk - Bug #6544]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@36075 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
Patch by Zachary Scott. [ruby-trunk - Bug #6536]
* lib/drb/drb.rb: ditto.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@36074 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@32308 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@32254 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@32028 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@31641 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
http://redmine.ruby-lang.org/projects/ruby/wiki/DeveloperHowto#coding-style
Patch by Steve Klabnik [Ruby 1.9 - Bug #4730]
Patch by Jason Dew [Ruby 1.9 - Feature #4718]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@31635 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
Patch by Run Paint [ruby-core:30991]
* lib/date.rb: ditto
* lib/debug.rb: ditto
* lib/drb/drb.rb: ditto
* lib/drb/invokemethod.rb: ditto
* lib/irb/ruby-lex.rb: ditto
* lib/irb/slex.rb: ditto
* lib/logger.rb: ditto
* lib/pathname.rb: ditto
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@28619 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
[ruby-dev:41481]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@28316 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
ensure service stops. [ruby-dev:40441]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@26708 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
families problem. a patch from Charl Matthee at [ruby-core:21033].
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@22998 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@22784 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@20257 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
check method names by symbols, not by strings. a patch from
Kazuhiro NISHIYAMA <zn at mbf.nifty.com> in [ruby-dev:34487].
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@16155 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@13975 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
visibility again. we no longer provide __send, __send!.
* eval.c (rb_invoke_method): new method to honor private
visibility. if it's invoked in a function call style, it calls
private methods as well (previous 1.9 send behavior).
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@13824 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|