diff --git a/inc/changelog.php b/inc/changelog.php
index d2be5b2db7fab6fe35621e953d965ec23e628f4d..c5c1c8246e08d49480890aaae36cd705805c5f7f 100644
--- a/inc/changelog.php
+++ b/inc/changelog.php
@@ -697,6 +697,7 @@ function getRelativeRevision($id, $rev, $direction, $chunk_size = 8192, $media =
                     if($lookpointer) {
                         $tail = $head + floor(($tail - $head) / 2);
                     }
+                    if($tail == $head) break;
                 }
             } else {
                 $tail = $head;
@@ -706,6 +707,7 @@ function getRelativeRevision($id, $rev, $direction, $chunk_size = 8192, $media =
 
             //load next chunck
             $lines = readChunk($fp, $head, $tail);
+            if(empty($lines)) break;
         }
     }
     if($uses_chuncks) {