From 8609b0a1db5464c57d5abd038293d8af5df6f7cb Mon Sep 17 00:00:00 2001 From: Felix Palta Date: Sun, 4 Dec 2016 23:08:52 +0300 Subject: [PATCH] Fix divide by zero error in drip It occured when 'numbytes' parameter was set to 0. In this case 'drip' should return 400('Bad request'). --- httpbin/core.py | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/httpbin/core.py b/httpbin/core.py index e3ca094..0e9a85d 100644 --- a/httpbin/core.py +++ b/httpbin/core.py @@ -468,12 +468,16 @@ def drip(): duration = float(args.get('duration', 2)) numbytes = min(int(args.get('numbytes', 10)),(10 * 1024 * 1024)) # set 10MB limit code = int(args.get('code', 200)) - pause = duration / numbytes delay = float(args.get('delay', 0)) if delay > 0: time.sleep(delay) + if numbytes <= 0: + response = Response('number of bytes must be positive', status=400) + return response + + pause = duration / numbytes def generate_bytes(): for i in xrange(numbytes): yield u"*".encode('utf-8')