23576 Commits

Author SHA1 Message Date
marcandre
3f5e567a47 * random.c: Documentation fix for Random#bytes
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@32255 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-06-27 15:42:37 +00:00
seki
190bc7ae0e fix [Bug #4409]. add DRbServer#here?
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@32254 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-06-27 15:18:22 +00:00
svn
eda3f1be20 * 2011-06-28
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@32253 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-06-27 15:10:32 +00:00
keiju
f3eed6a7d5 * lib/irb/workspace.rb: fix BUG#4793.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@32252 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-06-27 15:10:28 +00:00
kosaki
3639736d5d * thread_pthread.c (consume_communication_pipe): don't use C99
style variable length array.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@32251 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-06-27 13:10:26 +00:00
kosaki
f8cc779680 * thread_pthread.c (consume_communication_pipe): change return
type to void. caller doesn't use it.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@32250 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-06-27 13:05:22 +00:00
kosaki
d647b5358e * thread_pthread.h (rb_global_vm_lock_struct): add volatile to
gvl->waiting. now thread_timer() access it w/o lock.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@32249 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-06-27 12:59:08 +00:00
kosaki
ea3da57e12 * thread_pthread.c: s/__gvl_acquire/gvl_acquire_common/ and
s/__gvl_release/gvl_release_common/.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@32248 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-06-27 12:18:00 +00:00
naruse
c32869dfeb Addtitional fix for previous commit.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@32247 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-06-27 02:45:30 +00:00
naruse
657e9e2879 * thread_pthread.c (rb_thread_create_timer_thread):
the type of retrun value of write(2) is ssize_t.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@32246 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-06-27 02:43:03 +00:00
ko1
f18cf4f023 * thread_pthread.c (rb_thread_create_timer_thread):
Fixes missing initialization of oflags.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@32245 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-06-27 00:59:07 +00:00
ko1
d1d5d5e798 * thread_pthread.c: Stop polling in the timer thread when there are
no waiting thread.  If there are 2 or more runnable threads,
  the timer thread does polling.  Avoid polling makes power save
  for several computers (0.2W per a Ruby process, when I measured).
  If outside-event such as signal or Thread#kill was occuerred
  when the timer thread does not do polling, then wake-up
  the timer thread using communication-pipe (the timer thread
  waits this communication-pipe with select(2)).
  The discussion about this modification can be found from the post
  [ruby-core:33456] and other related posts.
  Note that Eric Wong and KOSAKI Motohiro give us the huge
  contributions for this modification.  Thanks.
* thread_pthread.c (rb_thread_wakeup_timer_thread): add a function.
  This function wakes up the timer thread using communication-pipe.
* thread.c (rb_thread_stop_timer_thread): add a parameter which
  specify closing communication-pipe or not.
* thread.c (rb_thread_terminate_all): do not stop timer thread here
  (ruby_cleanup() terminate timer thread).
* signal.c: wake up timer thread using
  rb_thread_wakeup_timer_thread() from signal handler.
* eval.c (ruby_cleanup): use rb_thread_stop_timer_thread(1).
* process.c: use rb_thread_stop_timer_thread(0)
  (reuse communication-pipe).
* thread_win32.c (rb_thread_wakeup_timer_thread): add a dummy
  function.
* vm_core.h: add and fix decl. of functions.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@32244 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-06-27 00:30:41 +00:00
tadf
8ce62003a0 * ext/date/date_parse.c: should use ALLOCA_N.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@32243 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-06-26 23:01:56 +00:00
nobu
61a34d625e * test/etc/test_etc.rb (TestEtc#test_get{pw,gr}nam): skip entries
start with + sign, which means NIS.  these are returned in the
  case that passwd and group entries in /etc/nsswitch.conf are set
  to use "nis" explicitly on Debian.  fixed #3683

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@32242 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-06-26 16:34:20 +00:00
naruse
e8e7ad8192 Add news about r30188 (Net::HTTPRequest#set_form).
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@32241 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-06-26 15:55:29 +00:00
svn
19ef07bb34 * 2011-06-27
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@32240 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-06-26 15:45:50 +00:00
naruse
8d00a7c274 * parse.y (rb_parser_end_seen_p): fix documentation about return
value. patched by Sho Hashimoto. [Bug #4511]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@32239 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-06-26 15:45:49 +00:00
naruse
145fccbd42 * hash.c (rb_hash_reject): add documentation that Hash#reject
without block returns enumerator.
  patched by Michael Edgar [Bug #4847] [ruby-core:36800]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@32238 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-06-26 15:45:47 +00:00
tadf
a252c17e15 * test/date/test_switch_hitter.rb: added a test.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@32237 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-06-26 14:50:09 +00:00
tadf
51a0501a39 * ext/date/date_core.c: refactoring.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@32236 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-06-26 13:23:00 +00:00
shyouhei
d6e89e0c4e * parse.y: comma at the end of line is no longer allowed.
A patch from Yukihiro Matsumoto  <matz AT ruby-lang.org>.
  (fixed #3456).


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@32235 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-06-26 09:09:49 +00:00
kosaki
230be2a771 * vm_dump.c (rb_vm_bugreport): change CrashReporter suggestion messages
on Mac. It should be placed after "-- C level backtrace" line.
  Suggested by Endoh-san.

  <before>
  -- See Crash Report log file under ~/Library/Logs/CrashReporter or ---------
  -- /Library/Logs/CrashReporter, for the more detail of ---------------------
  -- C level backtrace information -------------------------------------------

<after>
  -- C level backtrace information -------------------------------------------

     See Crash Report log file under ~/Library/Logs/CrashReporter or
     /Library/Logs/CrashReporter, for the more detail of.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@32231 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-06-26 04:49:33 +00:00
emboss
93e1583d73 * ext/openssl/extconf.rb
* ext/openssl/ossl_missing.h/.c: add ASN1_put_eoc if missing.

* ext/openssl/ossl_asn1.c: introduce ossl_asn1_object_size and
  ossl_asn1_put_object to wrap functionality depending on OpenSSL
  version in use.
  Fixes	[ Ruby 1.9 - Bug #4916 ] reported by Hiroshi Nakamura.
  [ruby-core:37286]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@32230 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-06-26 01:32:03 +00:00
tadf
3380f2ff6e * ext/date/date_core.c (date_strftime_internal): removed meaningless braces.
* ext/date/date_core.c (gengo): the value should be int.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@32229 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-06-25 16:03:11 +00:00
svn
64fd7d8785 * 2011-06-26
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@32228 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-06-25 15:05:41 +00:00
nagachika
9c931b853b * vm_insnhelper.c (vm_search_superclass): avoid control frame
stack overrun. currently super() in Proc created in a method
  defined by Module#define_method raise NoMethodError. [Bug #4881]
* test/ruby/test_method.rb t_super_in_proc_from_define_method):
  add test for it.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@32227 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-06-25 15:05:37 +00:00
nagachika
fb72e453f9 * thread.c (sleep_forever): now Kernel#sleep don't wakeup by
signal handler execution. [Bug #4072]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@32226 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-06-25 14:28:56 +00:00
nagachika
1a196574c4 * thread.c (rb_threadptr_check_signal): remove unnecessary th->status
backup. fix race condition which may results unexpected main thread's
  status transition. see #4072

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@32225 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-06-25 14:21:16 +00:00
svn
eae5081790 * 2011-06-25
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@32224 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-06-25 09:20:20 +00:00
nagachika
d5448b8e91 * ChangeLog: fix some typos.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@32223 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-06-25 09:20:16 +00:00
nahi
635d13a8b7 * lib/webrick/httprequest.rb (setup_forwarded_info): Parsing request
header failed when the request is from 2 or more Apache reverse 
  proxies. It's said that all X-Forwarded-* headers will contain more
  than one (comma-separated) value if the original request already
  contained one of these headers.  Since we could use these values as
  Host header, we choose the initial(first) value. See #4922.

* test/webrick/test_httprequest.rb (test_forwarded): Test it.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@32222 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-06-24 11:05:59 +00:00
nobu
706335aa0b * process.c (proc_daemon): should not start timer thread
twice.  fixed Bug#4920.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@32221 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-06-24 08:06:38 +00:00
nahi
dd91beb3e1 * Typo fixed. Is it reallyl a typo? 2*2 == 2+2 == 4.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@32220 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-06-24 07:06:13 +00:00
nahi
369b095015 * ext/openssl/ossl_ssl.c (ossl_ssl_shutdown): Try to shutdown SSL
connection more gracefully. Call SSL_shutdown() max 4 times until it  
  returns 1 (success). Bi-directional SSL close has several states but
  SSL_shutdown() kicks only 1 transition per call. Max 4 is from
  mod_ssl.c of Apache httpd that says 'max 2x pending * 2x data = 4'.
  See #4237.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@32219 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-06-24 07:01:52 +00:00
drbrain
ea9c30bec1 * lib/rake/version.rb: Fixed VERSION to work with tool/rbinstall.rb
* bin/rake:  Import bin/rake from 0.9.2
	* tool/rbinstall.rb (install):  Rake::VERSION is now in
	  lib/rake/version.rb.  Fixes `make install`


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@32218 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-06-23 22:24:44 +00:00
drbrain
d001539a05 * lib/rake: Import Rake 0.9.2
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@32217 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-06-23 22:11:55 +00:00
tadf
3fbc9440fe * ext/date/date_core.c (c_valid_{julian,gregorian}_p): fixed the range of month.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@32216 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-06-23 15:45:58 +00:00
svn
838af29cb1 * 2011-06-24
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@32215 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-06-23 15:15:40 +00:00
tadf
2e83b82323 * ext/date/date_core.c: trivial changes on text.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@32214 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-06-23 15:15:37 +00:00
nahi
bf2e60cda7 * ext/openssl/ossl_x509name.c: Add X509::Name#hash_old as a wrapper
for X509_NAME_hash_old in OpenSSL 1.0.0. See #4805

* test/openssl/test_x509name.rb (test_hash): Make test pass with
  OpenSSL 1.0.0. 

* NEWS: Add it.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@32213 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-06-23 13:51:55 +00:00
nahi
3e01a8d58e * test/openssl/test_ssl_session.rb: Test parameter bug fixed. 2**31 is not in
a signed long in 32bit long env.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@32212 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-06-23 13:03:02 +00:00
nahi
544daf1f7a * ext/openssl/ossl_ssl_session.c (ossl_ssl_session_set_time): Check
argument type with NUM2LONG if the arg is not a Time object.
  See #4919.

* ext/openssl/ossl_ssl_session.c (ossl_ssl_session_set_timeout): Check
  type with NUM2LONG. Time as an arg is not allowed. See #4919.

* test/openssl/test_ssl_session.rb (test_session_time,
  test_session_timeout): Test it.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@32211 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-06-23 10:36:09 +00:00
sorah
a02504ba84 * ChangeLog: Fix typo
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@32208 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-06-23 09:20:21 +00:00
nahi
45f164eaeb * lib/webrick/accesslog.rb: Cosmetic fix of mismatched indentation.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@32207 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-06-23 07:22:37 +00:00
svn
b9cbe522ed * 2011-06-23
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@32206 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-06-23 04:33:18 +00:00
sorah
e6f4c92f6d * signal.c(ruby_atomic_exchange): Fix definement style.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@32205 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-06-23 04:33:13 +00:00
nahi
dea3113ab3 * ext/openssl/ossl_ssl.c (ossl_sslctx_session_new_cb): Return 0 to
OpenSSL from the callback for SSL_CTX_sess_set_get_cb().
  Returning 0 means to OpenSSL that the the session is still valid
  (since we created Ruby Session object) and was not freed by us with
  SSL_SESSION_free(). Call SSLContext#remove_session(sess) in
  session_get_cb block if you don't want OpenSSL to cache the session
  internally.
  This potential issue was pointed by Ippei Obayashi. See #4416.

* test/openssl/test_ssl_session.rb (test_ctx_server_session_cb): Test
  it.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@32204 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-06-22 13:39:56 +00:00
emboss
8d836a15e4 * ext/openssl/ossl_ssl_session.c: Respect T_BIGNUM time values. Patch by
Tomoyuki Chikanaga.
  [ Ruby 1.9 - Bug #4919 ] [ruby-dev:43869]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@32203 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-06-22 13:28:18 +00:00
kosaki
dc8f58f6e8 * ext/socket/depend (SOCK_HEADERS): use $(top_srcdir) instaed of
$(topdir). sorry!



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@32202 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-06-22 12:30:22 +00:00
naruse
be953b4d1c * cont.c (cont_capture): add volatile.
On clang -O, it is needed to avoid the optimization.
  With this and llvm/clang's recent fix, clang 3.0 can
  build ruby-trunk with -O option.

* cont.c (cont_capture): use for-loop.

* array.c (rb_ary_each): add volatile and use it.

* vm_insnhelper.c (vm_call_cfunc): ditto.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@32201 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-06-22 11:00:24 +00:00