diff --git a/backup/util/dbops/restore_dbops.class.php b/backup/util/dbops/restore_dbops.class.php index 0d0155d64b9..f1f544315e3 100644 --- a/backup/util/dbops/restore_dbops.class.php +++ b/backup/util/dbops/restore_dbops.class.php @@ -976,6 +976,15 @@ abstract class restore_dbops { ); if (empty($file->repositoryid)) { + // If contenthash is empty then gracefully skip adding file. + if (empty($file->contenthash)) { + $result = new stdClass(); + $result->code = 'file_missing_in_backup'; + $result->message = sprintf('missing file (%s) contenthash in backup for component %s', $file->filename, $component); + $result->level = backup::LOG_WARNING; + $results[] = $result; + continue; + } // this is a regular file, it must be present in the backup pool $backuppath = $basepath . backup_file_manager::get_backup_content_file_location($file->contenthash);