Not filing this as a bug, but simply as confusion.
In the mongrel.rb, you have a comment that says this about the
self.escape method:
# Performs URI escaping so that you can construct proper
# query strings faster. Use this rather than the cgi.rb
# version since it's faster. (Stolen from Camping).
def self.escape(s)
s.to_s.gsub(/([^ a-zA-Z0-9_.-]+)/n) {
'%'+$1.unpack('H2'*$1.size).join('%').upcase
}.tr(' ', '+')
end
That "Stolen from Camping" thing perplexed me, because when I looked
at that, it looked fundamentally identical to what I have in IOWA,
which definitely was not stolen from camping.
Here's the code from Iowa::Util.escape()
def Util.escape(string)
string.to_s.gsub(/([^ a-zA-Z0-9_.-]+)/n) do
'%' + $1.unpack('H2' * $1.size).join('%').upcase
end.tr(' ', '+')
end
Now, the funny thing here is that I just stole this from cgi.rb so
that it would be available without having to require all of CGI.
Here's the original code from cgi.rb:
def CGI::escape(string)
string.gsub(/([^ a-zA-Z0-9_.-]+)/n) do
'%' + $1.unpack('H2' * $1.size).join('%').upcase
end.tr(' ', '+')
end
Camping simply stole from cgi.rb, too, so Camping's escape() can't be
any faster than CGI's, and the comment in mongrel.rb should probably
reflect this.
Kirk Haines
_______________________________________________
Mongrel-users mailing list
[email protected]
http://rubyforge.org/mailman/listinfo/mongrel-users