diff --git a/libmproxy/console/__init__.py b/libmproxy/console/__init__.py index a59209158..ca395ed9f 100644 --- a/libmproxy/console/__init__.py +++ b/libmproxy/console/__init__.py @@ -599,6 +599,8 @@ class ConsoleMaster(flow.FlowMaster): try: self.ui.run_wrapper(self.loop) except Exception: + self.ui.stop() + sys.stdout.flush() print >> sys.stderr, traceback.format_exc() print >> sys.stderr, "mitmproxy has crashed!" print >> sys.stderr, "Please lodge a bug report at: https://github.com/mitmproxy/mitmproxy" diff --git a/libmproxy/protocol/http.py b/libmproxy/protocol/http.py index 90d8ff163..253192ddc 100644 --- a/libmproxy/protocol/http.py +++ b/libmproxy/protocol/http.py @@ -605,11 +605,12 @@ class HTTPResponse(HTTPMessage): return f def __repr__(self): + size = utils.pretty_size(len(self.content)) if self.content else "content missing" return "".format( code=self.code, msg=self.msg, - contenttype=self.headers.get_first("content-type", "?"), - size=utils.pretty_size(len(self.content)) + contenttype=self.headers.get_first("content-type", "unknown content type"), + size=size ) @classmethod diff --git a/test/test_server.py b/test/test_server.py index 4b8c796c5..21d01f5aa 100644 --- a/test/test_server.py +++ b/test/test_server.py @@ -108,13 +108,6 @@ class TestHTTP(tservers.HTTPProxTest, CommonMixin, AppMixin): assert p.request(req) assert p.request(req) - def test_proxy_ioerror(self): - # Tests a difficult-to-trigger condition, where an IOError is raised - # within our read loop. - with mock.patch("libmproxy.protocol.http.HTTPRequest.from_stream") as m: - m.side_effect = IOError("error!") - tutils.raises("server disconnect", self.pathod, "304") - def test_get_connection_switching(self): def switched(l): for i in l: