diff -r 26ac04a39e11 -r 33a6b750b5b9 mercurial/cmdutil.py --- a/mercurial/cmdutil.py Fri Jun 24 11:25:55 2016 -0700 +++ b/mercurial/cmdutil.py Fri Jun 24 11:12:41 2016 -0700 @@ -532,7 +532,7 @@ msg = _('cannot specify --changelog and --manifest at the same time') elif cl and dir: msg = _('cannot specify --changelog and --dir at the same time') - elif cl or mf: + elif cl or mf or dir: if file_: msg = _('cannot specify filename with --changelog or --manifest') elif not repo: @@ -549,7 +549,7 @@ if 'treemanifest' not in repo.requirements: raise error.Abort(_("--dir can only be used on repos with " "treemanifest enabled")) - dirlog = repo.dirlog(file_) + dirlog = repo.dirlog(dir) if len(dirlog): r = dirlog elif mf: