···11121112 Ok(())
11131113 };
11141114 }
11151115+11161116+ // Not using self.id_prefix_context() because the disambiguation data
11171117+ // must not be calculated and cached against arbitrary repo. It's also
11181118+ // unlikely that the immutable expression contains short hashes.
11191119+ let id_prefix_context = IdPrefixContext::new(self.revset_extensions.clone());
11151120 let to_rewrite_revset =
11161121 RevsetExpression::commits(commits.into_iter().cloned().collect_vec());
11171122 let immutable = revset_util::parse_immutable_expression(&self.revset_parse_context())
···11211126 let mut expression = RevsetExpressionEvaluator::new(
11221127 repo,
11231128 self.revset_extensions.clone(),
11241124- self.id_prefix_context()?,
11291129+ &id_prefix_context,
11251130 immutable,
11261131 );
11271132 expression.intersect_with(&to_rewrite_revset);