normal
0e32c7c10a
Revert "ext/cgi/escape: preserve String subclass in result"
...
This reverts commit 6afea14043
r63328
I misread the original bug report and got results flipped.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@63330 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-05-03 01:24:09 +00:00
normal
6afea14043
ext/cgi/escape: preserve String subclass in result
...
* ext/cgi/escape/escape.c (optimized_escape_html): use rb_str_new_with_class
(optimized_unescape_html): ditto
(optimized_escape): ditto
(optimized_unescape): ditto
* test/cgi/test_cgi_util.rb (test_escape_string_subclass): new test
[ruby-core:86847] [Bug #14732 ]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@63328 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-05-02 23:18:55 +00:00
k0kubun
c26a9a7338
Fix strange indentation
...
which I introduced at r58773.
Hard tabs and spaces are mixed...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58783 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-05-18 15:13:30 +00:00
k0kubun
e1b4327545
cgi/util.rb: Don't escape tilde in #escape
...
to make it compatible with ERB::Util.url_encode.
ext/cgi/escape/escape.c: ditto.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58773 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-05-17 12:34:59 +00:00
nobu
97849e1178
share `@@accept_charset`
...
* lib/cgi/{core,util}.rb: include CGI::Util not only extending, to
share `@@accept_charset` class variable, so that it is always
accessible. [ruby-core:80986] [Bug #13539 ]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58576 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-05-06 01:33:04 +00:00
kazu
fbd5cda6aa
{lib,test}/cgi: Specify frozen_string_literal: true.
...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@57652 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-02-18 05:52:16 +00:00
nobu
c373866444
escape.c: check argument
...
* ext/cgi/escape/escape.c (optimized_unescape): check
accept_charset encoding argument.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@57501 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-02-02 08:02:36 +00:00
nobu
7d0d0d5864
test_cgi_util.rb: encoding tests
...
* test/cgi/test_cgi_util.rb (test_cgi_unescape): \u is useless on
old versions.
* test/cgi/test_cgi_util.rb (test_cgi_include_unescape): ditto.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@57499 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-02-02 07:03:59 +00:00
naruse
5f33c6b0f5
* lib/cgi/cookie.rb (parse): don't allow , as a separator. [Bug #12791 ]
...
* lib/webrick/cookie.rb (parse): ditto.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@56262 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-09-27 03:17:47 +00:00
nobu
e7440de279
test: use assert_include
...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@55757 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-07-26 13:02:33 +00:00
nobu
20cd25c86f
cgi/util.rb: remove CGI::Util#_unescape
...
* ext/cgi/escape/escape.c (cgiesc_unescape): define unescape
method instead of _unescape, and should pass the optional
argument to the super method.
* lib/cgi/util.rb (CGI::Util#_unescape): remove intermediate
method.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@54655 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-04-20 08:33:33 +00:00
nobu
8a180ee4b7
test_cgi_util.rb: test_cgi_unescapeHTML_invalid
...
* test/cgi/test_cgi_util.rb (test_cgi_unescapeHTML_invalid): test
for invalid escaped HTML, borrowed from rubyspec.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@53823 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-02-14 08:52:38 +00:00
nobu
8e46f401b2
ASCII-incompatible escape
...
* lib/cgi/util.rb (escapeHTML, unescapeHTML): consider
ASCII-incompatible encodings. [Fix GH-1239]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@53754 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-02-06 13:31:07 +00:00
nobu
10a129cee7
escape.c: should not freeze
...
* ext/cgi/escape/escape.c (optimized_escape_html): CGI.escapeHTML
should return unfrozen new string.
[ruby-core:72426] [Bug #11858 ]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@53234 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2015-12-22 05:31:31 +00:00
nobu
1b107d48ef
escape.c: Preserve original state
...
* ext/cgi/escape/escape.c (preserve_original_state): Preserve
original state for tainted and frozen. [Fix GH-1166]
[ruby-dev:49451] [Bug #11855 ]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@53233 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2015-12-21 20:40:02 +00:00
nobu
ce7f7f5e3d
cgi/escape: Optimize CGI.escapeHTML
...
* cgi/escape/escape.c: Optimize CGI.escapeHTML for
ASCII-compatible encodings. [Fix GH-1164]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@53220 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2015-12-20 11:54:54 +00:00
nobu
28dc41090a
test_cgi_util.rb: fix arguments orders
...
* test/cgi/test_cgi_util.rb: fix arguments orders, expected values
should be placed first and then actual results.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@53219 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2015-12-20 11:31:22 +00:00
naruse
3e92b635fb
Add frozen_string_literal: false for all files
...
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
2015-12-16 05:07:31 +00:00
nobu
c81b224edc
test: use String#b instead of dup.force_encoding
...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@53109 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2015-12-14 06:40:55 +00:00
xibbar
a4344cb5b4
* lib/cgi/cookie.rb: Implement HttpOnly flag for cookies.
...
[fix GH-887] Patch by @martinpovolny
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@50496 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2015-05-14 23:27:01 +00:00
nobu
5d071fe381
cookie.rb: trailing comma
...
* lib/cgi/cookie.rb: add trailing comma for further lines.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@50401 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2015-04-29 13:22:34 +00:00
nobu
05c29680e5
fix env leaks
...
* lib/rubygems/test_case.rb (setup, teardown): fix
environment variable change leaks.
* test/cgi/update_env.rb: ditto.
* test/rake/test_rake_application_options.rb (setup, teardown):
ditto.
* test/rake/test_rake_file_utils.rb (setup, teardown): ditto.
* test/rubygems/test_gem_request.rb (setup): add https_proxy.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@49950 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2015-03-12 14:57:33 +00:00
akr
fb2008a73a
* test/lib/envutil.rb: Moved from test/ruby/.
...
* test/lib/find_executable.rb: Ditto.
* test/lib/memory_status.rb: Ditto.
* test/lib/test/unit.rb: require envutil.
* test/: Don't require envutil in test files.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48409 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-11-13 16:05:37 +00:00
hsbt
556f805493
* test/cgi/test_cgi_core.rb: removed obsoleted condition for Ruby 1.8.
...
* test/cgi/test_cgi_header.rb: ditto.
* test/cgi/test_cgi_multipart.rb: ditto.
* test/cgi/test_cgi_tag_helper.rb: ditto.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@47110 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-08-09 01:19:18 +00:00
xibbar
5c99f241a0
* lib/cgi/core.rb: Provide a mechanism to specify the
...
max_multipart_length of multipart data.
[Feature #8370 ] patch by Leif Eriksen <leif.eriksen.au@gmail.com>
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@46392 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-06-10 04:29:49 +00:00
akr
9e9fcfeef4
Use Tempfile#close!.
...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@46193 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-05-27 16:17:13 +00:00
akr
c968f908e1
* lib/cgi/core.rb: Use Tempfile#close(true) instead of Tempfile#unlink
...
to close file descriptors.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@46181 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-05-27 14:51:08 +00:00
nobu
af1da410ca
cgi/util.rb: use alias
...
* lib/cgi/util.rb (escape_html, unescape_html): make synonyms
aliases instead of wrapper methods.
* lib/cgi/util.rb (escape_element, unescape_element): ditto.
[Fixes GH-573]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@45382 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-03-21 21:46:17 +00:00
nobu
993fd53616
test_cgi_util.rb: escape for ruby-mode.el
...
* test/cgi/test_cgi_util.rb (CGIUtilTest): escape '<' not
ruby-mode.el to confuse with here documents.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@45380 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-03-21 21:46:04 +00:00
xibbar
b35529bb4e
* lib/cgi/util.rb: class methods modulize for using like a function.
...
[Feature #8354 ]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@40571 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-05-03 11:23:23 +00:00
xibbar
bf4739ffdc
* lib/cgi/html.rb: fix tagmaker because attributes should recognize.
...
[Bug #8252 ]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@40242 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-04-11 13:23:01 +00:00
xibbar
5865e7604c
* lib/cgi/util.rb (CGI::unescapeHTML): fix Hexadecimal numeric character.
...
[Bug #8183 ]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@40181 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-04-08 04:06:39 +00:00
xibbar
edb68694b8
* test/cgi/test_cgi_core.rb: Add test for CGI#header.
...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37558 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-11-08 06:56:17 +00:00
naruse
0ba4526d06
* lib/cgi/core.rb: check if Tempfile is defined before use it.
...
* lib/cgi/core.rb: remove tempfiles only if tempfiles exist
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37473 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-11-05 02:34:17 +00:00
xibbar
1362d81a22
Mon Nov 5 09:55:05 2012 Takeyuki FUJIOKA <xibbar@ruby-lang.org>
...
* lib/cgi/core.rb: remove tempfile more early.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37471 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-11-05 00:57:45 +00:00
xibbar
6837f3dc54
Sun Nov 4 20:41:28 2012 Takeyuki FUJIOKA <xibbar@ruby-lang.org>
...
* lib/cgi.rb, lib/cgi/*/rb: rename CGI#header to
CGI#http_header,
add and update HTML5 tag generater. [Bug #7110 ]
Patch provided by Marcus Stollsteimer, thank you !
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37466 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-11-04 11:48:05 +00:00
xibbar
aeca965681
* lib/cgi/html5.rb: Add html5 tag maker.
...
* lib/cgi/core.rb: ditto.
[Feature #6637 ]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37077 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-10-04 02:20:55 +00:00
naruse
bbb6b5e84e
* lib/cgi/util.rb (CGI.escapeHTML): use '
...
[ruby-core:47221] [Bug #6861 ]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@36766 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-08-21 22:30:47 +00:00
naruse
b3a4461df2
Suppress warnings.
...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@36694 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-08-14 06:52:41 +00:00
xibbar
745ada8649
Tue Aug 14 11:55:37 2012 Takeyuki FUJIOKA <xibbar@ruby-lang.org>
...
* lib/cgi/util.rb (CGI::escapeHTML): ' is not recommended. [Bug #6850 ]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@36692 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-08-14 03:03:42 +00:00
naruse
347c554f7e
* lib/cgi/html.rb (element_init): suppress redefine warning.
...
Don't define methods if they are already defined.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@36529 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-07-25 00:19:09 +00:00
xibbar
c47cca2f85
Wed Jul 18 07:59:29 2012 Takeyuki FUJIOKA <xibbar@ruby-lang.org>
...
* lib/cgi/util.rb (CGI.escapeHTML,unescapeHTML): Add ' for HTML5 escaping.
[Feature #6620 ]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@36422 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-07-17 23:04:46 +00:00
xibbar
067b6e8237
Wed Jul 4 13:38:12 2012 Takeyuki FUJIOKA <xibbar@ruby-lang.org>
...
* lib/cgi/util.rb: revert 36299: ' is XML specification.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@36305 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-07-04 04:42:35 +00:00
xibbar
9c746e35ad
Wed Jul 4 08:45:41 2012 Takeyuki FUJIOKA <xibbar@ruby-lang.org>
...
* lib/cgi/core.rb: fix bug: When query parameter is 'id=123&id',
cgi['id'] => '123' is correct. First parameter is valid.
[Feature #6621 ]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@36304 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-07-04 04:42:32 +00:00
xibbar
07132e0675
Wed Jul 4 08:24:28 2012 Takeyuki FUJIOKA <xibbar@ruby-lang.org>
...
* lib/cgi/util.rb: Add ' to CGI's HTML escaping.[Feature #6620 ]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@36299 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-07-03 23:32:33 +00:00
nobu
a0d2cd2e1e
test: why believe source directories are writable always?
...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@35591 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-05-08 06:49:59 +00:00
mrkn
4c9968c9d9
* test/cgi/test_cgi_util.rb (test_cgi_escape_preserve_encoding):
...
add a test for CGI::escape to preserve encoding.
* test/cgi/test_cgi_util.rb (test_cgi_unescape_preserve_encoding):
add a test for CGI::unescape to preserve encoding.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@34357 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-01-23 01:09:06 +00:00
mrkn
ce8d368b1e
* lib/cgi/util.rb (CGI.escape): support a string with invalid byte
...
sequence.
* test/cgi/test_cgi_util.rb
(test_cgi_escape_with_invalid_byte_sequence): test for the above
change.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@34346 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-01-20 11:48:52 +00:00
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
sorah
2ab094ba4d
* test/cgi/test_cgi_header.rb(test_cgi_header_nph): Validate date in
...
"Date:" header
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@32423 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-07-06 13:13:09 +00:00