diff --git a/sites/all/modules/library/library.module b/sites/all/modules/library/library.module
index 10fbcd0..2a0800d 100644
--- a/sites/all/modules/library/library.module
+++ b/sites/all/modules/library/library.module
@@ -942,7 +942,7 @@ function library_item_in_library($node = NULL, $item_id = NULL) {
  */
 function library_get_overdue_items() {
   //Select all the nodes that have ever had an item made unavailable
-  $items = db_query("SELECT id FROM {library} WHERE library_status = %d", LIBRARY_ITEM_UNAVAILABLE);
+  $items = db_query("SELECT id FROM {library} l JOIN ( SELECT item_id,MAX(duedate) AS due FROM {library_transactions} WHERE action_aid=1 GROUP BY item_id) AS t ON l.id=t.item_id WHERE library_status = %d ORDER BY due ASC", LIBRARY_ITEM_UNAVAILABLE);
   $overdueitems = array();
   while ($result = db_fetch_object($items)) {
     $item = library_load($result->id);
