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

193 Коммитов

Автор SHA1 Сообщение Дата
xibbar 7fd78fad3e * lib/cgi/core.rb: fix multipart form parsing bug. [Bug #3866]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@32469 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-07-09 05:32:19 +00:00
drbrain b8f3f2d62e * lib/cgi/util.rb: Improve documentation. Patch by Kuba Fietkiewicz.
[Ruby 1.9 - Bug #4775]
	* lib/cgi/core.rb:  ditto


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@31882 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-06-01 00:42:06 +00:00
drbrain 34276148c4 * lib/cgi/util.rb: Improve documentation. Patch by Clinton Nixon.
[Ruby 1.9 - Bug #4733]
	* lib/cgi/core.rb:  ditto
	* lib/cgi/cookie.rb:  ditto


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@31634 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-05-18 21:07:13 +00:00
drbrain e60f744e9a * lib/cgi.rb: Add toplevel documentation to class CGI
* lib/cgi/session.rb: Add overview documentation to CGI::Cookie
	* lib/cgi/html.rb:  Don't add CGI::TagMaker documentation to CGI.
	  Patch by David Copeland.  [Ruby 1.9 - Bug #4704]
	* lib/cgi/core.rb:  Clean up CGI documentation.  Patch by David
	  Copeland.  [Ruby 1.9 - Bug #4704]
	* lib/cgi/cookie.rb:  Clean up CGI::Cookie documentation.  Patch by
	  David Copeland.  [Ruby 1.9 - Bug #4704]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@31595 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-05-16 21:21:35 +00:00
drbrain 83d7aca7f6 * Various .document files: Update .document files to match files which
have documentation.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@31524 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-05-11 22:31:17 +00:00
xibbar fc6d58ccc4 * lib/cgi/util.rb (CGI::unescape): bugfix to unescape the multibyte
string. Thanks nobu and tDiary dev members. [Bug #3909]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@29484 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-10-13 13:39:13 +00:00
nobu 6874c8d686 * lib/cgi.rb (CGI::NEEDS_BINMODE): check if O_BINARY value instead
of fragile check by platform name.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@27581 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-05-01 23:54:39 +00:00
xibbar 2b222b9b17 * lib/cgi/{core, util}.rb (RFC822_DAYS, RFC822_MONTHS):
move the constant because used only util.rb. [Bug #2704]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@27415 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-04-20 03:39:34 +00:00
naruse e41936441b Surpress warnings.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@27235 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-04-06 03:01:52 +00:00
nobu c9dd4823d9 * lib: fixed typo. a patch by Sho Hashimoto in [ruby-dev:40716].
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@26986 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-03-20 03:30:59 +00:00
ryan ca7b32630c Rolled out last change
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@25794 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-11-16 04:02:20 +00:00
ryan 36ed53ff93 Minor cleanup to improve hash use
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@25792 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-11-16 03:01:59 +00:00
xibbar 5de99652bd * lib/cgi/util.rb (CGI::pretty): fix the overflow bug
if stripped string.[ruby-dev:37975]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@25738 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-11-12 15:48:46 +00:00
xibbar 64486dfd8e * lib/cgi/core.rb (read_from_cmdline): this code is better.
[ruby-core:25991]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@25734 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-11-12 14:19:53 +00:00
xibbar 0e260ef122 * lib/cgi/cookie.rb: add default value to @@accept_charset
if have not defined. [ruby-dev:38987]
* lib/cgi/util.rb: ditto.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@25231 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-10-04 13:25:49 +00:00
xibbar ae8ad5ae27 * lib/cgi/core.rb: fix command-line option of
non-interactive terminal. [ruby-core:23016]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@25216 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-10-03 16:15:23 +00:00
nobu 970ec9c02d * lib/cgi/cookie.rb: fixed indent.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@25012 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-09-20 07:27:41 +00:00
marcandre 5904f64dbf * lib/cgi/cookie.rb (value): Keep CGI::Cookie#value in sync with the cookie itself. Based on a patch by Arthur Schreiber [ruby-core:17634]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@24914 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-09-13 22:36:45 +00:00
xibbar 1976ef38a7 * lib/cgi/util.rb (CGI::unescape): support encoding option.
* lib/cgi/cookie.rb (CGI::Cookie.parse): fix for the encoded value.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@24314 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-07-30 05:34:02 +00:00
matz 706f910300 * lib/cgi/core.rb (CGI::HTTP_STATUS): typo fixed. a patch from
Nobuhiro IMAI.  [ruby-dev:38538]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@23560 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-05-24 20:34:21 +00:00
mame 50cea7a5c9 * lib/cgi/core.rb (read_multipart): When path is not defined,
define local_path as a method always returning nil instead of
  aliasing.  This is because StringIO#path no longer exists.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@23196 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-04-16 15:58:23 +00:00
nobu 287a34ae0d * {ext,lib,test}/**/*.rb: removed trailing spaces.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@22784 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-03-06 03:56:38 +00:00
xibbar 9dce4d52ca * lib/cgi/core.rb (CGI.parse): generate only key on params hash
if request have only key uri parameters.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@21739 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-01-22 08:25:44 +00:00
xibbar 52d481d8de * lib/cgi/session.rb: fix bug for ignore session_id option.
report from [ruby-core:18635], [Bug #572]

* lib/cgi/core.rb: use Encoding#find when encoding set.

* test/cgi/test_cgi_session.rb: test for session_id specified.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@20861 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-12-18 12:20:13 +00:00
xibbar f22aabbaee * lib/cgi/session/pstore.rb: fix indentation.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@20158 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-11-08 15:03:42 +00:00
xibbar 26862c00e9 * lib/cgi/session.rb (FileStore): use marshalized data.
* test/cgi/session_dir: add a session directory in test.
* test/cgi/test_cgi_session.rb: add a test. 


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@20156 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-11-08 14:52:59 +00:00
xibbar 274c3b94bf * lib/cgi/session.rb: remove debug code.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@20155 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-11-08 12:57:50 +00:00
xibbar b4890b598b * lib/cgi/session.rb: fix indentation.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@20154 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-11-08 12:36:50 +00:00
xibbar b1c14f8fbb * lib/cgi/html.rb: allow symbolized key.
* test/cgi/test_cgi_tag_helper.rb: add a test.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@19919 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-10-24 12:10:27 +00:00
xibbar 86560b12ee * lib/cgi/core.rb (read_multipart): change field value as String
from StringIO of Tempfile when multipart parse without file field.
  add files method that can uploaded files. [ruby-dev:36547] 

* test/cgi/test_cgi_multipart.rb: fix the test for core.rb.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@19906 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-10-24 07:25:53 +00:00
xibbar 225d2af65a * lib/cgi/core.rb (read_multipart): file's encoding is ascii-8bit
from file field of multipart form.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@19858 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-10-20 12:29:29 +00:00
xibbar ddf88ea80b * lib/cgi/core.rb (CGI::QueryExtension::initialize_query): fix the
condition.

* test/cgi/test_cgi_core.rb: bug fix encoding.
  thaks to TAKANO Mitsuhiro <takano32 at jus.or.jp> .

* test/cgi/test_cgi_multipart.rb: temporary comment in.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@19702 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-10-06 07:53:58 +00:00
xibbar 10e9b63806 * lib/cgi/core.rb (CGI::QueryExtension): delete MorphingBody
and replace like as 1.8's in multipart reading.
  see [ruby-dev:36443],
  reference from CGIAlt http://cgialt.rubyforge.org/
* test/cgi/test_cgi_multipart.rb : fixed multipart test.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@19663 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-10-02 12:37:30 +00:00
xibbar 9acff4872d * lib/cgi/html.rb (CGI::HtmlExtension::{radio_group, checkbox_group}):
can specify the false as checked or selected value.
[ruby-core:18306], [ruby-core:18307]

* test/cgi/test_cgi_tag_helper.rb: add a test.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@19617 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-09-28 15:41:12 +00:00
xibbar c0f84528c7 * lib/cgi/html.rb (CGI::HtmlExtension::popup_menu):
fix the calls #bytesize on array parameters. [ruby-core:18919]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@19614 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-09-28 14:16:01 +00:00
xibbar 5958f6af19 * lib/cgi/core.rb (CGI::parse): ignore illegal query params.
[ruby-dev:36618]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@19613 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-09-28 13:54:28 +00:00
xibbar 3c419de10b * lib/cgi/core.rb (CGI::new, CGI::{accept_charset,accept_charset=}) :
accept parameters either in a hash,
  string as a block. add the encoding validation process. 
* test/cgi/test_cgi_core.rb : test for query encoding check.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@19530 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-09-24 14:27:53 +00:00
drbrain 563b654437 Fix ruby -w warnings for mismatched indentation discovered by rdoc
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@19495 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-09-23 18:16:08 +00:00
xibbar 4ac4e2fbc4 * lib/cgi/html.rb (checkbox_group,radio_group): bug fix
use size instead of bytesize.

* test/cgi/test_cgi_tag_helper.rb: test for checkbox_group,radio_group.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@19395 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-09-17 04:49:28 +00:00
xibbar 49f69c3f2e * lib/cgi/core.rb: performance improvement.
From CGIAlt http://cgialt.rubyforge.org/

* test/cgi/test_cgi_header.rb: exception class fixed.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@19386 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-09-16 13:30:05 +00:00
xibbar 09814e38e1 * lib/cgi/core.rb (CGI::parse): performance improvement
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@19343 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-09-14 13:10:43 +00:00
nobu 1bd34a09c9 properties.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@19289 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-09-10 17:45:23 +00:00
xibbar 0bedb3e5b1 * lib/cgi/cookie.rb (CGI::Cookie#to_s): performance improvement
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@19281 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-09-10 01:36:31 +00:00
xibbar 0bbda39758 * lib/cgi*: split cgi.rb into four files. [ruby-dev:36041]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@19272 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-09-09 13:09:56 +00:00
matz e6c1752137 * lib/rdoc.rb: massive spelling correction patch from Evan Farrar
<evanfarrar at gmail.com> in [ruby-doc:1382] applied.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@16810 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-06-04 09:37:38 +00:00
matz af2ab37334 * lib/cgi/session.rb (CGI::Session::FileStore::restore): use
lockfile for exclusive locks.  a patch from <tommy AT tmtm.org>.
  [ruby-dev:32296]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@13927 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-11-15 03:20:52 +00:00
akr c43511cd89 * lib/cgi/session.rb (create_new_id): don't cut off md5.hexdigest to
follow Ruby 1.8.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@12667 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-06-29 11:52:17 +00:00
akr 52ec7cc543 * lib/securerandom.rb: renamed from lib/secrand.rb.
suggested by NaHi.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@12499 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-06-10 01:42:51 +00:00
akr b1cd416c1a * lib/cgi/session.rb: use secrand for generating cookies.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@12476 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-06-08 05:39:13 +00:00
nobu d28d1a2e0a * lib/cgi/session.rb, lib/cgi/session/pstore.rb: suppress warnings.
fixed: [ruby-talk:204896]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@10643 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-07-30 14:06:50 +00:00
matz 6645b92826 * object.c (inspect_obj): unintended space removal.
[ruby-dev:25810]

* eval.c (rb_exec_recursive): should not use NODE in disclosed
  context.  [ruby-dev:25812]

* io.c (rb_f_open): need not to check if to_open value is a
  T_FILE.  [ruby-dev:25812]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@8098 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-03-07 02:05:08 +00:00
nobu a0f7b7ec92 * lib/cgi/session.rb (CGI::Session#initialize): empty session id was
used if request had no session key.  fixed: [ruby-core:03981]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@7604 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-12-19 18:31:04 +00:00
nobu 3da93dd842 * lib/cgi/session.rb (CGI::Session#initialize): control adding
session_id hidden fields.  fixed: [ruby-talk:123850]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@7586 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-12-17 04:34:39 +00:00
matz 2edbb9d0f8 * lib/set.rb (Set#==): [ruby-dev:25206]
* ext/openssl/ossl_digest.c (ossl_digest_initialize): [ruby-dev:25198]

* utf8.c (utf8_is_mbc_ambiguous): [ruby-talk:123561]

* utf8.c (utf8_mbc_to_normalize): ditto.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@7563 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-12-15 06:35:55 +00:00
matz 83cb605d69 * object.c (convert_type): [ruby-core:03845]
* eval.c (rb_funcall_rescue): new function.

* object.c (rb_Array): avoid using rb_respond_to().

* object.c (rb_Integer): ditto.

* eval.c (get_backtrace): no conversion for nil.

* parse.y (reduce_nodes): empty body should return nil.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@7413 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-11-29 06:09:40 +00:00
matz 77a23fba35 * string.c (str_gsub): internal buffer should not be listed by
ObjectSpace.each_object() by String#gsub.  [ruby-dev:24931]

* lib/cgi/session.rb (CGI::Session::FileStore::initialize): raise
  exception if data corresponding to session specified from the
  client does not exist.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@7326 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-11-19 16:59:11 +00:00
matz b93479b8d9 * string.c (str_mod_check): frozen check should be separated.
[ruby-core:3742]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@7280 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-11-16 04:55:14 +00:00
matz 1057902ac7 * io.c (read_all): block string buffer modification during
rb_io_fread() by freezing it temporarily. [ruby-dev:24479]

* dir.c (rb_push_glob): block call at once the end of method.
  [ruby-dev:24487]

* ext/enumerator/enumerator.c (enum_each_slice): remove
  rb_gc_force_recycle() to prevent potential SEGV.
  [ruby-dev:24499]

* ext/zlib/zlib.c (zstream_expand_buffer): hide internal string
  buffer by clearing klass.  [ruby-dev:24510]

* ext/socket/socket.c (sock_s_getservbyaname): protocol string
  might be altered.  [ruby-dev:24503]

* string.c (rb_str_upto): check if return value from succ is a
  string.  [ruby-dev:24504]

* io.c (rb_io_popen): get mode string via rb_io_flags_mode() to
  avoid mode string modification.  [ruby-dev:24454]

* io.c (rb_io_getline_fast): should take delim as unsigned char to
  distinguish EOF and '\377'.  [ruby-dev:24460]

* io.c (rb_io_getline): add check for RS modification.
  [ruby-dev:24461]

* enum.c (enum_sort_by): use qsort() directly instead using
  rb_iterate().  [ruby-dev:24462]

* enum.c (enum_each_with_index): remove rb_gc_force_recycle() to
  prevent access to recycled object (via continuation for
  example).  [ruby-dev:24463]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@7071 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-10-19 10:25:23 +00:00
matz e77ddaf0d1 * array.c (rb_ary_delete): element comparison might change array
size. [ruby-dev:24273]

* parse.y: make ruby parser reentrant. merge ripper parser to the
  real one.  this change makes ruby require bison.

* file.c (rb_file_truncate): clear stdio buffer before truncating
  the file.  [ruby-dev:24191]

* ext/digest/digest.c: use rb_obj_class() instead of CLASS_OF
  which might return singleton class.  [ruby-dev:24202]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@6919 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-09-17 09:24:13 +00:00
matz 88ba175ab0 * 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
2004-08-28 14:14:11 +00:00
shugo 73a6f9af6c * lib/cgi/session.rb (CGI::Session::FileStore#initialize): do not
use a session id as a filename.
* lib/cgi/session/pstore.rb (CGI::Session::PStore#initialize): ditto.
* lib/cgi/session/pstore.rb (CGI::Session::PStore#initialize): use
  Dir::tmpdir.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@6815 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-08-24 07:59:50 +00:00
shugo b9b4a769f1 * lib/cgi/session.rb (CGI::Session::FileStore#initialize): untaint
session id after check.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@6813 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-08-24 05:35:12 +00:00
matz ca14017bb6 * gc.c (define_final): should not disclose NODE* to Ruby world.
[ruby-dev:23957]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@6691 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-07-23 07:52:38 +00:00
matz 6c6a24826c * enum.c (enum_min_by): new method Enum#min_by. added Enum#max_by
as well.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@6629 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-07-14 14:51:42 +00:00
matz a6a8847190 * numeric.c (flo_eq): alway check if operands are NaN.
[ruby-list:39685]

* lib/cgi/session.rb: use LOCK_SH to read, and a few other
  improvements.  [ruby-core:02328]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@6372 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-05-20 04:34:14 +00:00
dave 3632100c64 Doug Kearns's doc. patch
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@5837 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-02-26 13:50:40 +00:00
matz 59dbfa3e4c * dir.c: merge tuning from H.Yamamoto <ocean@m2.ccsnet.ne.jp>.
[ruby-dev:22476]

* io.c (argf_eof): ARGF.eof? should not have any side effect.
  [ruby-dev:22469]

* io.c (argf_each_byte): should return self.  [ruby-dev:22465]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@5365 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-01-02 16:21:26 +00:00
matz 8ef5da3be1 consistent parentheses in assignment RHS.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@4790 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-10-16 17:47:19 +00:00
wew 1ea6c0aa9b Add documentation in RDoc format.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@4458 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-08-29 13:27:20 +00:00
wew 22a5aec4b3 Add documentation in RDoc format.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@4455 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-08-29 03:52:24 +00:00
eban 02f036ddbc * lib/tmpdir.rb (tmpdir): new method. remove TMPDIR.
use GetSystemWindowsDirectory(GetSystemDirectory), not GetTempPath.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@4129 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-07-23 16:37:35 +00:00
matz 2416271405 * lib/tmpdir.rb: new library to get temporary directory path,
using GetTempPath on Win32 environment.

* lib/tempfile.rb: now uses tmpdir.rb.

* lib/cgi/session.rb, ib/drb/unix.rb: ditto.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@4109 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-07-21 15:34:18 +00:00
matz 9ef8a2a5db * lib/matrix.rb: remove elements conversion to_f, to_i, to_r.
* lib/cgi/session/pstore.rb: add new file.

* process.c (proc_getgroups, proc_setmaxgroups): fix typo.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@4072 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-07-15 07:35:14 +00:00
matz c9356d82bc * lib/cgi/session.rb (CGI::Session::initialize): updated to
support 2003-04-23 change in cgi.rb [ruby-core:1002]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3745 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-05-02 08:42:00 +00:00
knu d9fbdddb59 Delete final.rb, which was obsoleted long ago.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3176 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-12-19 18:55:32 +00:00
matz ae23000c0e * array.c (sort_2): *a - *b may overflow.
* array.c (ary_new): len*sizeof(VALUE) may be a positive value.

* array.c (rb_ary_initialize): ditto.

* object.c (rb_class_allocate_instance): move singleton class
  check from rb_obj_alloc().

* re.c (rb_reg_initialize): should not modify frozen Regexp.

* ext/tcltklib/tcltklib.c (ip_init): allocation framework.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2720 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-08-19 05:56:09 +00:00
wakou bd074c1f03 * lib/cgi/session.rb: support for multipart form.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2354 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-04-10 17:02:47 +00:00
matz 19c42c0740 * variable.c (rb_obj_remove_instance_variable): raise NameError if
specified instance variable is not defined.

* variable.c (generic_ivar_remove): modified to check ivar
  existence.

* file.c (rb_file_s_extname): new method based on the proposal
  (and patch) from Mike Hall. [new]

* eval.c (error_handle): default to 1 unless status is set.

* eval.c (ruby_options): guard error_handle() with PROT_NONE.

* eval.c (ruby_stop): ditto.

* math.c (math_acosh): added. [new]

* math.c (math_asinh): ditto.

* math.c (math_atanh): ditto.

* struct.c (rb_struct_each_pair): method added. [new]

* class.c (rb_singleton_class): wrong condition; was creating
  unnecessary singleton class.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2348 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-04-10 08:45:26 +00:00
knu 31e15f7606 Reflect the update of the MD5 module which is now Digest::MD5.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1868 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2001-12-01 14:07:01 +00:00
matz 948ff2456b * signal.c (sighandle): should not re-register sighandler if
POSIX_SIGNAL is defined.

* eval.c (error_print): errat array may be empty.

* eval.c (rb_eval_cmd): should not upgrade safe level unless
  explicitly specified by argument newly added.

* signal.c (sig_trap): should not allow tainted trap closure.

* variable.c (rb_f_trace_var): should not allow trace_var on safe
  level higher than 3.

* variable.c (rb_f_trace_var): should not allow tainted trace
  closure.

* gc.c: do not use static stack until system stack overflows.

* eval.c (eval): should call Exception#exception instead of
  calling rb_exc_new3() directly.

* error.c (exc_exception): set "mesg" directly to the clone.  it
  might be better to set mesg via some method for flexibility.

* variable.c (cvar_override_check): should print original module
  name, if 'a' is T_ICLASS.

* parse.y (yylex): float '1_.0' should not be allowed.

* variable.c (var_getter): should care about var as Qfalse
  (ruby-bugs#PR199).

* array.c (cmpint): <=> or block for {min,max} may return bignum.

* array.c (sort_1): use rb_compint.

* array.c (sort_2): ditto.

* enum.c (min_ii): ditto.

* enum.c (min_ii): ditto.

* enum.c (max_i): ditto.

* enum.c (max_ii): ditto.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1826 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2001-11-13 08:14:27 +00:00
matz f33a61c28d * string.c (rb_str_lstrip_bang): new method.
* string.c (rb_str_rstrip_bang): new method.

* string.c (rb_str_associate): should consider STR_ASSOC too.

* eval.c (rb_undefined): do not recurse if method_missing is
  undefined.

* process.c (proc_waitpid): now all arguments are optional.

* process.c (Init_process): waitpid is now alias to wait.

* process.c (Init_process): waitpid2 is now alias to wait2.

* process.c (rb_waitpid): made public.

* ext/pty/pty.c (pty_getpty): avoid disturbing SIGCHLD using
  thread and rb_waitpid.

* process.c (proc_getpgrp): now takes no argument on all
  platforms.

* process.c (proc_setpgrp): ditto.

* ext/socket/socket.c (sock_s_pack_sockaddr_in): added
  Socket::pack_sockaddr_in(). [new]

* ext/socket/socket.c (sock_s_pack_sockaddr_un): added
  Socket::pack_sockaddr_un(). [new]

* ext/socket/socket.c (sock_s_pack_sockaddr_in): added
  Socket::unpack_sockaddr_in(). [new]

* ext/socket/socket.c (sock_s_pack_sockaddr_un): added
  Socket::unpack_sockaddr_un(). [new]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1666 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2001-08-06 03:05:23 +00:00
shugo 7dc25230be * lib/cgi/session.rb: don't use module_function for Class.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1490 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2001-06-02 14:19:37 +00:00
matz 1d3d27b42d forgot some checkins.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1363 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2001-05-06 15:06:00 +00:00
shugo 756dcb0034 * lib/cgi/session.rb (close): fixed reversed condition.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1189 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2001-02-15 02:45:09 +00:00
matz 8be410f065 * io.c (rb_io_ctl): do not call ioctl/fcntl for f2, if f and f2
have same fileno.

* eval.c (rb_load): raise LocaJumpError if unexpected local jumps
  appear during load.

* ext/socket/socket.c (bsock_close_read): don't call rb_thread_fd_close();
  it's supposed to be called by io_io_close().

* ext/socket/socket.c (bsock_close_read): do not modify f and f2.

* ext/socket/socket.c (bsock_close_write): ditto.

* ext/socket/socket.c (sock_new): avoid dup(2) on sockets.

* parse.y (primary): preserve and clear in_single and in_def using
  stack to prevent nested method errors in singleton class bodies.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1177 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2001-02-13 05:09:11 +00:00
matz 87beea4496 * enum.c (enum_inject): new method.
* gc.c (rb_gc_call_finalizer_at_exit): clear klass member of
  terminating object.

* eval.c (rb_call): raise exception for terminated object.

* bignum.c (bigdivrem): t2 might be too big for signed long; do
  not use rb_int2big(), but rb_uint2big().

* error.c (rb_load_fail): new func to report LoadError.

* ruby.c (load_file): use rb_load_fail.

* eval.c (ruby_finalize): should enclosed by PUSH_TAG/POP_TAG.

* gc.c (rb_gc_mark): link 2 of NODE_IFUNC should not be explicitly
  marked.  it may contain non object pointer.

* re.c (reg_s_last_match): Regexp::last_match(nth) returns nth
  substring of the match  (alternative for $& and $<digit>).

* eval.c (rb_mod_define_method): wrong comparison for blocks.

* gc.c (id2ref): should handle Symbol too.

* gc.c (id2ref): should print original ptr value

* eval.c (rb_iterate): NODE_CFUNC does not protect its data
  (nd_tval), so create new node NODE_IFUNC for iteration C
  function.

* eval.c (rb_yield_0): use NODE_IFUNC.

* gc.c (rb_gc_mark): support NODE_IFUNC.

* gc.c (mem_error): prohibit recursive mem_error().
  (ruby-bugs-ja:PR#36)

* eval.c (rb_thread_fd_writable): should not switch context if
  rb_thread_critical is set.

* eval.c (rb_thread_wait_fd): ditto.

* eval.c (rb_thread_wait_for): ditto.

* eval.c (rb_thread_select): ditto.

* eval.c (rb_thread_join): join during critical section causes
  deadlock.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1090 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2001-01-09 07:26:21 +00:00
matz 08ec02b92b changes from personal modifies -- matz
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1084 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2000-12-28 05:00:47 +00:00
matz 1b2d3f81ee 1.6.2 (to be)
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1011 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2000-10-17 18:14:05 +00:00
matz 6fc752bf7d matz
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@929 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2000-09-07 06:59:46 +00:00
matz 655e96fa59 2000-05-09
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@682 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2000-05-09 04:53:16 +00:00
matz fedf48986d 2000-05-01
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@678 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2000-05-01 09:42:38 +00:00
matz 4263bb432a 19991292
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@574 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
1999-12-02 06:58:52 +00:00
matz ebab487fcd 19991125
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@570 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
1999-11-25 09:03:08 +00:00