diff --git a/buf/buf0buf.c b/buf/buf0buf.c
index 99916db2e3b1ddf3084a4e9f628621c9c804f3b0..3191169593cbd84d1a9e2e5a8255a18f7feb4b2d 100644
--- a/buf/buf0buf.c
+++ b/buf/buf0buf.c
@@ -1505,9 +1505,10 @@ loop:
 		block = guess;
 
 		if (offset != block->page.offset
-		    || space != block->page.space) {
+		    || space != block->page.space
+		    || !buf_page_in_file(&block->page)) {
 
-			block = NULL;
+			block = guess = NULL;
 		}
 	}