yuja created this revision. Herald added a subscriber: mercurial-devel. Herald added a reviewer: hg-reviewers.
REVISION SUMMARY This is necessary to run config validation in proper environment. REPOSITORY rHG Mercurial BRANCH default REVISION DETAIL https://phab.mercurial-scm.org/D8362 AFFECTED FILES rust/chg/src/locator.rs rust/chg/src/main.rs CHANGE DETAILS diff --git a/rust/chg/src/main.rs b/rust/chg/src/main.rs --- a/rust/chg/src/main.rs +++ b/rust/chg/src/main.rs @@ -73,14 +73,12 @@ } fn run() -> io::Result<i32> { - let current_dir = env::current_dir()?; let loc = Locator::prepare_from_env()?; let handler = ChgUiHandler::new(); let (result_tx, result_rx) = oneshot::channel(); let fut = loc .connect() - .and_then(|(_, client)| client.set_current_dir(current_dir)) - .and_then(|client| client.attach_io(io::stdin(), io::stdout(), io::stderr())) + .and_then(|(_, client)| client.attach_io(io::stdin(), io::stdout(), io::stderr())) .and_then(|client| { let pid = client.server_spec().process_id.unwrap(); let pgid = client.server_spec().process_group_id; diff --git a/rust/chg/src/locator.rs b/rust/chg/src/locator.rs --- a/rust/chg/src/locator.rs +++ b/rust/chg/src/locator.rs @@ -20,6 +20,7 @@ use tokio_process::{Child, CommandExt}; use tokio_timer; +use super::clientext::ChgClientExt; use super::message::ServerSpec; use super::procutil; @@ -80,6 +81,11 @@ check_server_capabilities(client.server_spec())?; Ok((loc, client)) }) + .and_then(|(loc, client)| { + client + .set_current_dir(&loc.current_dir) + .map(|client| (loc, client)) + }) } /// Spawns new server process and connects to it. To: yuja, #hg-reviewers Cc: mercurial-devel _______________________________________________ Mercurial-devel mailing list Mercurial-devel@mercurial-scm.org https://www.mercurial-scm.org/mailman/listinfo/mercurial-devel