diff --git a/lib/private/preview.php b/lib/private/preview.php
index 798a1322b03898acb4176f06a8ff0560c385afe0..b0d91fd56801e96d0b6a08bf892fc4c2a58a5c64 100755
--- a/lib/private/preview.php
+++ b/lib/private/preview.php
@@ -403,7 +403,9 @@ class Preview {
 		$cached = $this->isCached();
 
 		if ($cached) {
-			$image = new \OC_Image($this->userView->file_get_contents($cached, 'r'));
+			$stream = $this->userView->fopen($cached, 'r');
+			$image = new \OC_Image();
+			$image->loadFromFileHandle($stream);
 			$this->preview = $image->valid() ? $image : null;
 			$this->resizeAndCrop();
 		}