Mercurial > public > mercurial-scm > hg-stable
diff rust/rhg/src/commands/files.rs @ 46632:5ce2aa7c2ad5
rhg: Move `Repo` object creation into `main()`
? rather than in each sub-command that needs a local repository.
This will allow accessing e.g. `.hg/blackbox.log` before dispatching
to sub-commands.
Differential Revision: https://phab.mercurial-scm.org/D10004
author | Simon Sapin <simon.sapin@octobus.net> |
---|---|
date | Mon, 15 Feb 2021 20:13:09 +0100 |
parents | 80840b651721 |
children | c184b490da37 |
line wrap: on
line diff
--- a/rust/rhg/src/commands/files.rs Mon Feb 15 20:05:32 2021 +0100 +++ b/rust/rhg/src/commands/files.rs Mon Feb 15 20:13:09 2021 +0100 @@ -29,15 +29,14 @@ pub fn run(invocation: &crate::CliInvocation) -> Result<(), CommandError> { let rev = invocation.subcommand_args.value_of("rev"); - let repo = Repo::find(invocation.non_repo_config, invocation.repo_path)?; + let repo = invocation.repo?; if let Some(rev) = rev { - let files = - list_rev_tracked_files(&repo, rev).map_err(|e| (e, rev))?; - display_files(invocation.ui, &repo, files.iter()) + let files = list_rev_tracked_files(repo, rev).map_err(|e| (e, rev))?; + display_files(invocation.ui, repo, files.iter()) } else { - let distate = Dirstate::new(&repo)?; + let distate = Dirstate::new(repo)?; let files = distate.tracked_files()?; - display_files(invocation.ui, &repo, files) + display_files(invocation.ui, repo, files) } }