mercurial/hgweb.py
changeset 603 bc5d058e65e9
parent 601 8865eb8ade99
child 605 8e82fd763be2
equal deleted inserted replaced
602:56d81b303656 603:bc5d058e65e9
   692             sys.stdout.write(z.flush())
   692             sys.stdout.write(z.flush())
   693 
   693 
   694         else:
   694         else:
   695             write(self.t("error"))
   695             write(self.t("error"))
   696 
   696 
   697 def server(path, name, templates, address, port):
   697 def create_server(path, name, templates, address, port):
   698 
   698 
   699     import BaseHTTPServer
   699     import BaseHTTPServer
   700     import sys, os
   700     import sys, os
   701 
   701 
   702     class hgwebhandler(BaseHTTPServer.BaseHTTPRequestHandler):
   702     class hgwebhandler(BaseHTTPServer.BaseHTTPRequestHandler):
   757                 hg.run()
   757                 hg.run()
   758             finally:
   758             finally:
   759                 sys.argv, sys.stdin, sys.stdout, sys.stderr = save
   759                 sys.argv, sys.stdin, sys.stdout, sys.stderr = save
   760 
   760 
   761     hg = hgweb(path, name, templates)
   761     hg = hgweb(path, name, templates)
   762     httpd = BaseHTTPServer.HTTPServer((address, port), hgwebhandler)
   762     return BaseHTTPServer.HTTPServer((address, port), hgwebhandler)
       
   763 
       
   764 def server(path, name, templates, address, port):
       
   765     httpd = create_server(path, name, templates, address, port)
   763     httpd.serve_forever()
   766     httpd.serve_forever()