Merge branch 'master' into python3
[wrw.git] / wrw / proto.py
index 3dcf0d7..f03fd2b 100644 (file)
@@ -98,19 +98,20 @@ def simpleerror(env, startreq, code, title, msg):
 </body>
 </html>
 """ % (title, title, htmlq(msg))
+    buf = buf.encode("us-ascii")
     startreq("%i %s" % (code, title), [("Content-Type", "text/html"), ("Content-Length", str(len(buf)))])
     return [buf]
 
 def urlq(url):
-    if isinstance(url, unicode):
+    if isinstance(url, str):
         url = url.encode("utf-8")
     ret = ""
-    invalid = "&=#?/\"'"
+    invalid = b"&=#?/\"'"
     for c in url:
-        if c in invalid or (ord(c) <= 32) or (ord(c) >= 128):
-            ret += "%%%02X" % ord(c)
+        if c in invalid or (c <= 32) or (c >= 128):
+            ret += "%%%02X" % c
         else:
-            ret += c
+            ret += chr(c)
     return ret
 
 class urlerror(ValueError):