Mercurial > public > mercurial-scm > hg
comparison mercurial/hgweb/request.py @ 18351:3fbdbeab38cc
hgweb: don't pass empty response chunks on
hgweb internals will often produce empty writes - especially when returning
compressed data. hgweb is no middleware application and there is thus no
reason to pass them on to be processed in other layers.
author | Mads Kiilerich <mads@kiilerich.com> |
---|---|
date | Tue, 15 Jan 2013 01:05:12 +0100 |
parents | c0d63e1884a3 |
children | e33b9b92a200 |
comparison
equal
deleted
inserted
replaced
18350:c0d63e1884a3 | 18351:3fbdbeab38cc |
---|---|
103 self.server_write = self._start_response(status, self.headers) | 103 self.server_write = self._start_response(status, self.headers) |
104 self._start_response = None | 104 self._start_response = None |
105 self.headers = [] | 105 self.headers = [] |
106 | 106 |
107 def write(self, thing): | 107 def write(self, thing): |
108 try: | 108 if thing: |
109 self.server_write(thing) | 109 try: |
110 except socket.error, inst: | 110 self.server_write(thing) |
111 if inst[0] != errno.ECONNRESET: | 111 except socket.error, inst: |
112 raise | 112 if inst[0] != errno.ECONNRESET: |
113 raise | |
113 | 114 |
114 def writelines(self, lines): | 115 def writelines(self, lines): |
115 for line in lines: | 116 for line in lines: |
116 self.write(line) | 117 self.write(line) |
117 | 118 |