From 3115af9baf2b6a6c1cf000557060714e7dfc410b Mon Sep 17 00:00:00 2001 From: Louis Dureuil Date: Fri, 9 Jun 2023 08:33:13 +0200 Subject: [PATCH] score_details: short circuit when the order has been established --- milli/src/score_details.rs | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/milli/src/score_details.rs b/milli/src/score_details.rs index c7b837579..5973d51a2 100644 --- a/milli/src/score_details.rs +++ b/milli/src/score_details.rs @@ -212,8 +212,12 @@ impl ScoreDetails { _ => return Ok(Ordering::Equal), }; for (left, right) in left.zip(right) { + if order != Ordering::Equal { + return Ok(order); + }; + index += 1; - order = order.then(left.partial_cmp(right).incomparable(index)?); + order = left.partial_cmp(right).incomparable(index)?; } Ok(order) }