diff --git a/lib/filesystem/FileArchiveManager.class.php b/lib/filesystem/FileArchiveManager.class.php index 36ea988d8b4df27cac09cbf1d53dc9db6aab4bae..e7a0d40581c9e6c830c0ee9dec11db06a14b92f3 100644 --- a/lib/filesystem/FileArchiveManager.class.php +++ b/lib/filesystem/FileArchiveManager.class.php @@ -131,6 +131,14 @@ class FileArchiveManager return true; } } else { + if (!($file_type instanceof StandardFile)) { + $file_type = $file_type->convertToStandardFile(); + } + if (!($file_type instanceof StandardFile)) { + //The file type could not be converted to a standard file. + //We cannot continue. + return false; + } //Get the file's path (if the file exists) and add the file to the archive: $path = $file_type->getPath(); if ($path) {