diff --git a/exercises/Exercise.php b/exercises/Exercise.php
index 367b8e9064849803aed5299db0dfc44ec7f7a8fc..ac70c84ff3edd37f8f701cfc698af25c2bd5db7a 100644
--- a/exercises/Exercise.php
+++ b/exercises/Exercise.php
@@ -118,7 +118,7 @@ abstract class Exercise extends SimpleORMap
             $this->options['comment'] = 1;
         }
 
-        if ($request['file_ids'] && !$request['files_visible']) {
+        if (!$request['files_visible']) {
             $this->options['files_hidden'] = 1;
         }
     }
@@ -662,6 +662,10 @@ abstract class Exercise extends SimpleORMap
      */
     public function includeFilesForExport()
     {
+        if (count($this->files) == 0) {
+            $this->options['files_hidden'] = 1;
+        }
+
         $this->description = $this->rewriteLinksForExport($this->description);
         $this->options['hint'] = $this->rewriteLinksForExport($this->options['hint']);
         $this->task = $this->rewriteLinksForExport($this->task);