--- a/hgweb.cgi
+++ b/hgweb.cgi
@@ -6,7 +6,11 @@ import cgitb, os, sys
cgitb.enable()
# sys.path.insert(0, "/path/to/python/lib") # if not a system-wide install
-from mercurial import hgweb
+from mercurial.hgweb.hgweb_mod import hgweb
+from mercurial.hgweb.request import wsgiapplication
+import mercurial.hgweb.wsgicgi as wsgicgi
-h = hgweb.hgweb("/path/to/repo", "repository name")
-h.run()
+def make_web_app():
+ return hgweb("/path/to/repo", "repository name")
+
+wsgicgi.launch(wsgiapplication(make_web_app))