avoid cloning when extending ticks for fruits
This commit is contained in:
+2
-2
@@ -127,7 +127,7 @@ pub fn stars(
|
||||
if *repeats <= 1 {
|
||||
slider_objects.append(&mut ticks); // automatically empties buffer for next slider
|
||||
} else {
|
||||
slider_objects.append(&mut ticks.clone());
|
||||
slider_objects.extend(&ticks);
|
||||
|
||||
for repeat_id in 1..*repeats {
|
||||
let dist = (repeat_id % 2) as f32 * *pixel_len;
|
||||
@@ -359,7 +359,7 @@ pub fn strains(map: &Beatmap, mods: impl Mods) -> Strains {
|
||||
if *repeats <= 1 {
|
||||
slider_objects.append(&mut ticks); // automatically empties buffer for next slider
|
||||
} else {
|
||||
slider_objects.append(&mut ticks.clone());
|
||||
slider_objects.extend(&ticks);
|
||||
|
||||
for repeat_id in 1..*repeats {
|
||||
let dist = (repeat_id % 2) as f32 * *pixel_len;
|
||||
|
||||
+2
-5
@@ -31,10 +31,6 @@ fn sort_unstable<T: PartialOrd>(slice: &mut [T]) {
|
||||
slice.sort_unstable_by(|p1, p2| p1.partial_cmp(p2).unwrap_or(Ordering::Equal));
|
||||
}
|
||||
|
||||
fn sort<T: PartialOrd>(slice: &mut [T]) {
|
||||
slice.sort_by(|p1, p2| p1.partial_cmp(p2).unwrap_or(Ordering::Equal));
|
||||
}
|
||||
|
||||
trait OptionExt<T> {
|
||||
fn next_field(self, field: &'static str) -> Result<T, ParseError>;
|
||||
}
|
||||
@@ -945,7 +941,8 @@ impl Beatmap {
|
||||
// won't be set yet so mania objects won't be sorted properly
|
||||
if self.mode == GameMode::MNA {
|
||||
// First a _stable_ sort by time
|
||||
sort(&mut self.hit_objects);
|
||||
self.hit_objects
|
||||
.sort_by(|p1, p2| p1.partial_cmp(p2).unwrap_or(Ordering::Equal));
|
||||
|
||||
// Then the legacy sort for correct position order
|
||||
legacy_sort(&mut self.hit_objects);
|
||||
|
||||
Reference in New Issue
Block a user