From c16ffd4ae7f3476bd037d0fa5742cd4c81ade7a7 Mon Sep 17 00:00:00 2001 From: Matt Martz Date: Tue, 2 Jan 2018 18:32:03 -0600 Subject: [PATCH] Catch OSError and EOFError while reading from gzip stream --- speedtest.py | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/speedtest.py b/speedtest.py index 1f53b37..19ca9b5 100755 --- a/speedtest.py +++ b/speedtest.py @@ -1041,7 +1041,10 @@ class Speedtest(object): stream = get_response_stream(uh) while 1: - configxml.append(stream.read(1024)) + try: + configxml.append(stream.read(1024)) + except (OSError, EOFError): + raise ConfigRetrievalError(get_exception()) if len(configxml[-1]) == 0: break stream.close() @@ -1166,7 +1169,10 @@ class Speedtest(object): serversxml = [] while 1: - serversxml.append(stream.read(1024)) + try: + serversxml.append(stream.read(1024)) + except (OSError, EOFError): + raise ServersRetrievalError(get_exception()) if len(serversxml[-1]) == 0: break