diff --git a/lib/blocklib.php b/lib/blocklib.php
index 8cd5a12..aa749ac 100644
--- a/lib/blocklib.php
+++ b/lib/blocklib.php
@@ -925,19 +925,16 @@ function blocks_get_by_page_pinned($page) {
     $weights = array();
 
     foreach ($pinned as $pos => $arr) {
-        $weights[$pos] = count($arr);
+        $weights[$pos] = $arr;
     }
 
     foreach ($user as $pos => $blocks) {
         if (!array_key_exists($pos,$pinned)) {
              $pinned[$pos] = array();
         }
-        if (!array_key_exists($pos,$weights)) {
-            $weights[$pos] = 0;
-        }
+
         foreach ($blocks as $block) {
-            $pinned[$pos][$weights[$pos]] = $block;
-            $weights[$pos]++;
+            $pinned[$pos][] = $block;
         }
     }
     return $pinned;
