diff --git a/image.module b/image.module
index 38cbb8c..96e8314 100644
--- a/image.module
+++ b/image.module
@@ -670,11 +670,13 @@ function image_fetch($nid = 0, $size = IMAGE_PREVIEW) {
 
       if (isset($node->images[$size])) {
         $file = $node->images[$size];
-        $headers = module_invoke_all('file_download', $file);
-        if ($headers == -1) {
-          return drupal_access_denied();
+        if (file_exists(file_create_path($file))) {
+          $headers = module_invoke_all('file_download', $file);
+          if ($headers == -1) {
+            return drupal_access_denied();
+          }
+          file_transfer($file, $headers);
         }
-        file_transfer($file, $headers);
       }
     }
   }
