diff --git a/hgext/narrow/narrowcommands.py b/hgext/narrow/narrowcommands.py --- a/hgext/narrow/narrowcommands.py +++ b/hgext/narrow/narrowcommands.py @@ -92,19 +92,6 @@ if opts['narrow']: def pullbundle2extraprepare_widen(orig, pullop, kwargs): - # Create narrow spec patterns from clone flags - includepats = narrowspec.parsepatterns(opts['include']) - excludepats = narrowspec.parsepatterns(opts['exclude']) - - if not includepats and excludepats: - # If nothing was included, we assume the user meant to include - # everything, except what they asked to exclude. - includepats = {'path:.'} - - pullop.repo.setnarrowpats(includepats, excludepats) - - # This will populate 'includepats' etc with the values from the - # narrowspec we just saved. orig(pullop, kwargs) if opts.get('depth'): diff --git a/mercurial/hg.py b/mercurial/hg.py --- a/mercurial/hg.py +++ b/mercurial/hg.py @@ -737,6 +737,10 @@ revs = None local = destpeer.local() if local: + if narrow: + with local.lock(): + local.setnarrowpats(storeincludepats, storeexcludepats) + u = util.url(abspath) defaulturl = bytes(u) local.ui.setconfig('paths', 'default', defaulturl, 'clone')