Ticket #366: 366.diff

File 366.diff, 1.0 KB (added by wangchun, 3 years ago)
  • webob/__init__.py

     
    987987        # default of 0 is better: 
    988988        fs_environ.setdefault('CONTENT_LENGTH', '0') 
    989989        fs_environ['QUERY_STRING'] = '' 
    990         fs = cgi.FieldStorage(fp=self.body_file, 
    991                               environ=fs_environ, 
    992                               keep_blank_values=True) 
    993         vars = MultiDict.from_fieldstorage(fs) 
    994         FakeCGIBody.update_environ(env, vars) 
     990        body = self.body 
     991        try: 
     992            fs = cgi.FieldStorage(fp=self.body_file, 
     993                                  environ=fs_environ, 
     994                                  keep_blank_values=True) 
     995            vars = MultiDict.from_fieldstorage(fs) 
     996            FakeCGIBody.update_environ(env, vars) 
     997        finally: 
     998            self.body = body 
    995999        env['webob._parsed_post_vars'] = (vars, self.body_file) 
    9961000        return vars 
    9971001