ticki před 9 roky
rodič
revize
a651595317
1 změnil soubory, kde provedl 2 přidání a 1 odebrání
  1. 2 1
      src/block_list.rs

+ 2 - 1
src/block_list.rs

@@ -27,7 +27,8 @@ impl BlockList {
     pub fn alloc(&mut self, size: usize, align: usize) -> Unique<u8> {
         let mut ins = None;
 
-        for (n, i) in self.iter_mut().enumerate() {
+        // We run right-to-left, since new blocks tend to get added to the right.
+        for (n, i) in self.iter_mut().enumerate().rev() {
             let aligner = aligner(*i.ptr, align);
 
             if i.size - aligner >= size {