Merge branch 'master' into python3
[wrw.git] / wrw / form.py
index 10b10f5..c97b0f9 100644 (file)
@@ -6,14 +6,14 @@ __all__ = ["formdata"]
 class formwrap(object):
     def __init__(self, req):
         if req.ihead.get("Content-Type") == "application/x-www-form-urlencoded":
-            self.cf = cgi.parse(environ = req.env, fp = req.env["wsgi.input"])
+            self.cf = cgi.parse(environ = req.env, fp = req.input)
         else:
             self.cf = cgi.parse(environ = req.env)
 
     def __getitem__(self, key):
         return self.cf[key][0]
 
-    def get(self, key, default = ""):
+    def get(self, key, default=""):
         if key in self:
             return self.cf[key][0]
         return default
@@ -73,12 +73,12 @@ class formpart(object):
             if sz >= 0 and len(self.buf) >= sz:
                 break
             while len(self.form.buf) <= len(lboundary):
-                ret = req.env["wsgi.input"].read(8192)
+                ret = req.input.read(8192)
                 if ret == "":
                     raise badmultipart("Missing last multipart boundary")
                 self.form.buf += ret
 
-    def read(self, limit = -1):
+    def read(self, limit=-1):
         self.fillbuf(limit)
         if limit >= 0:
             ret = self.buf[:limit]
@@ -88,7 +88,7 @@ class formpart(object):
             self.buf = ""
         return ret
 
-    def readline(self, limit = -1):
+    def readline(self, limit=-1):
         last = 0
         while True:
             p = self.buf.find(b'\n', last)
@@ -111,6 +111,7 @@ class formpart(object):
         return self
 
     def __exit__(self, *excinfo):
+        self.close()
         return False
 
     def parsehead(self, charset):