diff --git a/src/librustdoc/html/render/search_index/encode.rs b/src/librustdoc/html/render/search_index/encode.rs
index af5eccd5bedc6..85e524205a8b1 100644
--- a/src/librustdoc/html/render/search_index/encode.rs
+++ b/src/librustdoc/html/render/search_index/encode.rs
@@ -92,24 +92,23 @@ impl Container {
r += !chunk & u64::from((chunk << 1).count_ones());
r += !next_chunk & u64::from((chunk >> 63).count_ones());
}
- if (2 + 4 * r) < 8192 {
- let bits = std::mem::replace(bits, Box::new([0; 1024]));
- *self = Container::Run(Vec::new());
- for (i, bits) in bits.iter().copied().enumerate() {
- if bits == 0 {
- continue;
- }
- for j in 0..64 {
- let value = (u16::try_from(i).unwrap() << 6) | j;
- if bits & (1 << j) != 0 {
- self.push(value);
- }
+ if (2 + 4 * r) >= 8192 {
+ return false;
+ }
+ let bits = std::mem::replace(bits, Box::new([0; 1024]));
+ *self = Container::Run(Vec::new());
+ for (i, bits) in bits.iter().copied().enumerate() {
+ if bits == 0 {
+ continue;
+ }
+ for j in 0..64 {
+ let value = (u16::try_from(i).unwrap() << 6) | j;
+ if bits & (1 << j) != 0 {
+ self.push(value);
}
}
- true
- } else {
- false
}
+ true
}
Container::Array(array) if array.len() <= 5 => false,
Container::Array(array) => {