summaryrefslogtreecommitdiff
path: root/lib/cgi/session.rb
diff options
context:
space:
mode:
authormatz <matz@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2004-08-28 14:14:11 +0000
committermatz <matz@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2004-08-28 14:14:11 +0000
commit88ba175ab0c87882e446a5290ddc84880310d6d3 (patch)
tree09692f360f32ef7d36ba22a4008a9455829343d7 /lib/cgi/session.rb
parent55bf54a9c062b30492b328345ab3c68449e3f676 (diff)
* bignum.c (rb_big_and): protect parameters from GC.
[ruby-talk:110664] * error.c (exc_equal): exceptions are equal if they share same class, message and backtrace. [ruby-talk:110354] * error.c (name_err_mesg_equal): ditto. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@6826 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'lib/cgi/session.rb')
-rw-r--r--lib/cgi/session.rb4
1 files changed, 3 insertions, 1 deletions
diff --git a/lib/cgi/session.rb b/lib/cgi/session.rb
index c320ac9c47..9a49fdedc9 100644
--- a/lib/cgi/session.rb
+++ b/lib/cgi/session.rb
@@ -173,7 +173,9 @@ class CGI
def Session::create_new_id
require 'digest/md5'
md5 = Digest::MD5::new
- md5.update(String(Time::now))
+ now = Time::now
+ md5.update(now.to_s)
+ md5.update(String(now.usec))
md5.update(String(rand(0)))
md5.update(String($$))
md5.update('foobar')