X-Git-Url: http://dolda2000.com/gitweb/?a=blobdiff_plain;f=wrw%2Fform.py;h=53fc82df258dc16309755f8244544c3a5bb635c9;hb=d81da2c8a9a5ec501104aad1734bd7a0548648e3;hp=adde1d357d942edf598244af6a3cb8373d55eb69;hpb=425ebacf6c53fa475ad0e8c7aea62d19617d4aea;p=wrw.git diff --git a/wrw/form.py b/wrw/form.py index adde1d3..53fc82d 100644 --- a/wrw/form.py +++ b/wrw/form.py @@ -7,9 +7,9 @@ def formparse(req): buf = {} buf.update(urllib.parse.parse_qsl(req.query)) if req.ihead.get("Content-Type") == "application/x-www-form-urlencoded": - if req.input.limit > 2 ** 20: + rbody = req.input.read(2 ** 20) + if len(rbody) >= 2 ** 20: raise ValueError("x-www-form-urlencoded data is absurdly long") - rbody = req.input.read() buf.update(urllib.parse.parse_qsl(rbody.decode("latin1"))) return buf