Index: webob/__init__.py
===================================================================
--- webob/__init__.py	(revision 7963)
+++ webob/__init__.py	(working copy)
@@ -987,11 +987,15 @@
         # default of 0 is better:
         fs_environ.setdefault('CONTENT_LENGTH', '0')
         fs_environ['QUERY_STRING'] = ''
-        fs = cgi.FieldStorage(fp=self.body_file,
-                              environ=fs_environ,
-                              keep_blank_values=True)
-        vars = MultiDict.from_fieldstorage(fs)
-        FakeCGIBody.update_environ(env, vars)
+        body = self.body
+        try:
+            fs = cgi.FieldStorage(fp=self.body_file,
+                                  environ=fs_environ,
+                                  keep_blank_values=True)
+            vars = MultiDict.from_fieldstorage(fs)
+            FakeCGIBody.update_environ(env, vars)
+        finally:
+            self.body = body
         env['webob._parsed_post_vars'] = (vars, self.body_file)
         return vars
 

