diff --git a/thunar/thunar-folder.c b/thunar/thunar-folder.c
index 2d70f522b6441d14d5b7b5ac1304d4e617cc6f7c..217610a0fb53d00ee192f347eee1aa9b4747dbcd 100644
--- a/thunar/thunar-folder.c
+++ b/thunar/thunar-folder.c
@@ -755,8 +755,18 @@ thunar_folder_monitor (GFileMonitor     *monitor,
         {
           if (event_type == G_FILE_MONITOR_EVENT_DELETED)
             {
+              ThunarFile *destroyed;
+
               /* destroy the file */
               thunar_file_destroy (lp->data);
+
+              /* if the file has not been destroyed by now, reload it to invalidate it */
+              destroyed = thunar_file_cache_lookup (event_file);
+              if (destroyed != NULL)
+                {
+                  thunar_file_reload (destroyed);
+                  g_object_unref (destroyed);
+                }
             }
 
           else if (event_type == G_FILE_MONITOR_EVENT_MOVED)