This commit is contained in:
veetaha 2020-05-09 02:24:51 +03:00
parent 1acb556907
commit aca9aa8b7e

View file

@ -96,23 +96,21 @@ pub fn main_loop(ws_roots: Vec<PathBuf>, config: Config, connection: Connection)
let mut world_state = { let mut world_state = {
let workspaces = { let workspaces = {
// FIXME: support dynamic workspace loading. // FIXME: support dynamic workspace loading.
let mut visited = FxHashSet::default(); let project_roots: FxHashSet<_> = ws_roots
let project_roots = ws_roots
.iter() .iter()
.filter_map(|it| ra_project_model::ProjectRoot::discover(it).ok()) .filter_map(|it| ra_project_model::ProjectRoot::discover(it).ok())
.flatten() .flatten()
.filter(|it| visited.insert(it.clone())) .collect();
.collect::<Vec<_>>();
if project_roots.is_empty() && config.notifications.cargo_toml_not_found { if project_roots.is_empty() && config.notifications.cargo_toml_not_found {
show_message( show_message(
req::MessageType::Error, req::MessageType::Error,
format!( format!(
"rust-analyzer failed to discover workspace, no Cargo.toml found, dirs searched: {}", "rust-analyzer failed to discover workspace, no Cargo.toml found, dirs searched: {}",
ws_roots.iter().format_with(", ", |it, f| f(&it.display())) ws_roots.iter().format_with(", ", |it, f| f(&it.display()))
), ),
&connection.sender, &connection.sender,
); );
}; };
project_roots project_roots