# HG changeset patch # User Patrick Mezard # Date 2007-11-27 22:55:03 # Node ID f2f42262adbd4a6241b7af0302a52b4388efac93 # Parent 1fb38ef1f113c5ed11e3f1167dc13fe677048ea1 hgweb.server: flush log files after every access diff --git a/mercurial/hgweb/server.py b/mercurial/hgweb/server.py --- a/mercurial/hgweb/server.py +++ b/mercurial/hgweb/server.py @@ -44,17 +44,17 @@ class _hgwebhandler(object, BaseHTTPServ self.protocol_version = 'HTTP/1.1' BaseHTTPServer.BaseHTTPRequestHandler.__init__(self, *args, **kargs) + def _log_any(self, fp, format, *args): + fp.write("%s - - [%s] %s\n" % (self.client_address[0], + self.log_date_time_string(), + format % args)) + fp.flush() + def log_error(self, format, *args): - errorlog = self.server.errorlog - errorlog.write("%s - - [%s] %s\n" % (self.client_address[0], - self.log_date_time_string(), - format % args)) + self._log_any(self.server.errorlog, format, *args) def log_message(self, format, *args): - accesslog = self.server.accesslog - accesslog.write("%s - - [%s] %s\n" % (self.client_address[0], - self.log_date_time_string(), - format % args)) + self._log_any(self.server.accesslog, format, *args) def do_write(self): try: