--- a/mercurial/server.py Fri Mar 31 23:00:41 2017 -0400
+++ b/mercurial/server.py Sat Apr 15 18:05:40 2017 -0400
@@ -15,6 +15,7 @@
from . import (
chgserver,
+ cmdutil,
commandserver,
error,
hgweb,
@@ -130,11 +131,22 @@
baseui = ui
webconf = opts.get('web_conf') or opts.get('webdir_conf')
if webconf:
+ if opts.get('subrepos'):
+ raise error.Abort(_('--web-conf cannot be used with --subrepos'))
+
# load server settings (e.g. web.port) to "copied" ui, which allows
# hgwebdir to reload webconf cleanly
servui = ui.copy()
servui.readconfig(webconf, sections=['web'])
alluis.add(servui)
+ elif opts.get('subrepos'):
+ servui = ui
+
+ # If repo is None, hgweb.createapp() already raises a proper abort
+ # message as long as webconf is None.
+ if repo:
+ webconf = dict()
+ cmdutil.addwebdirpath(repo, "", webconf)
else:
servui = ui