diff options
Diffstat (limited to 'waitress/parser.py')
-rw-r--r-- | waitress/parser.py | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/waitress/parser.py b/waitress/parser.py index dec96f6..4261fa3 100644 --- a/waitress/parser.py +++ b/waitress/parser.py @@ -251,7 +251,10 @@ class HTTPRequestParser(object): def split_uri(uri): # urlsplit handles byte input by returning bytes on py3, so # scheme, netloc, path, query, and fragment are bytes - scheme, netloc, path, query, fragment = urlparse.urlsplit(uri) + try: + scheme, netloc, path, query, fragment = urlparse.urlsplit(uri) + except UnicodeError: + raise ParsingError('Bad URI') return ( tostr(scheme), tostr(netloc), |