summaryrefslogtreecommitdiff
path: root/cherrypy/_cpcompat.py
diff options
context:
space:
mode:
authorJason R. Coombs <jaraco@jaraco.com>2018-08-13 20:36:16 -0400
committerJason R. Coombs <jaraco@jaraco.com>2018-08-13 20:36:16 -0400
commit046d7319dbdeeeb5717b4f2b34104c91869641a3 (patch)
treea16d9b1604192f4760a0e18ac4869def330f0626 /cherrypy/_cpcompat.py
parentfd60384939bad9490cee5c37a8fbf287948c1fa7 (diff)
downloadcherrypy-git-046d7319dbdeeeb5717b4f2b34104c91869641a3.tar.gz
Extract function for encoding filenames. Assume UTF-8 for non-ascii names.
Diffstat (limited to 'cherrypy/_cpcompat.py')
-rw-r--r--cherrypy/_cpcompat.py6
1 files changed, 5 insertions, 1 deletions
diff --git a/cherrypy/_cpcompat.py b/cherrypy/_cpcompat.py
index 11d07073..6d461dc3 100644
--- a/cherrypy/_cpcompat.py
+++ b/cherrypy/_cpcompat.py
@@ -105,9 +105,13 @@ def _unquote_compat(string, encoding='utf-8', errors='replace'):
return urllib.parse.unquote(string).decode(encoding, errors)
+def _quote_compat(string, encoding='utf-8', errors='replace'):
+ return urllib.parse.quote(string.encode(encoding, errors))
+
+
unquote_plus = urllib.parse.unquote_plus if six.PY3 else _unquote_plus_compat
unquote = urllib.parse.unquote if six.PY3 else _unquote_compat
-
+quote = urllib.parse.quote if six.PY3 else _quote_compat
try:
# Prefer simplejson