diff options
| author | seki <seki@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2008-04-30 12:40:52 +0000 |
|---|---|---|
| committer | seki <seki@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2008-04-30 12:40:52 +0000 |
| commit | 0de35d50dcc03d041d5c4c5b9a79ad74cb07a566 (patch) | |
| tree | ebfaceb8de8601fbfb2c9100ab1eeea1108a6850 /lib | |
| parent | 215a910f15782af6be29afcf424d83801c0a5a6a (diff) | |
| download | ruby-0de35d50dcc03d041d5c4c5b9a79ad74cb07a566.tar.gz ruby-0de35d50dcc03d041d5c4c5b9a79ad74cb07a566.tar.xz ruby-0de35d50dcc03d041d5c4c5b9a79ad74cb07a566.zip | |
[ruby-dev:34497] ERB::Util#url_encode bug fix. Reported by rubikitch.
git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@16244 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'lib')
| -rw-r--r-- | lib/erb.rb | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/lib/erb.rb b/lib/erb.rb index 42b3930c1..fade2c72b 100644 --- a/lib/erb.rb +++ b/lib/erb.rb @@ -799,7 +799,9 @@ class ERB # Programming%20Ruby%3A%20%20The%20Pragmatic%20Programmer%27s%20Guide # def url_encode(s) - s.to_s.gsub(/[^a-zA-Z0-9_\-.]/n){ sprintf("%%%02X", $&.unpack("C")[0]) } + s.to_s.dup.force_encoding("ASCII-8BIT").gsub(/[^a-zA-Z0-9_\-.]/n) { + sprintf("%%%02X", $&.unpack("C")[0]) + } end alias u url_encode module_function :u |
