mercurial/commands.py
changeset 4081 e6d26e71f049
parent 4068 5b1f663ef86d
parent 4078 ff08cebcd116
child 4144 03e9c22a6489
--- a/mercurial/commands.py
+++ b/mercurial/commands.py
@@ -2298,11 +2298,12 @@ def serve(ui, repo, **opts):
         s = sshserver.sshserver(ui, repo)
         s.serve_forever()
 
+    parentui = ui.parentui or ui
     optlist = ("name templates style address port ipv6"
                " accesslog errorlog webdir_conf")
     for o in optlist.split():
         if opts[o]:
-            ui.setconfig("web", o, str(opts[o]))
+            parentui.setconfig("web", o, str(opts[o]))
 
     if repo is None and not ui.config("web", "webdir_conf"):
         raise hg.RepoError(_("There is no Mercurial repository here"
@@ -2318,7 +2319,7 @@ def serve(ui, repo, **opts):
         os.read(rfd, 1)
         os._exit(0)
 
-    httpd = hgweb.server.create_server(ui, repo)
+    httpd = hgweb.server.create_server(parentui, repo)
 
     if ui.verbose:
         if httpd.port != 80: