From 955aefc05bead6334bc601043cba04608047af53 Mon Sep 17 00:00:00 2001 From: "denis.flaven@combodo.com" Date: Tue, 4 Apr 2023 14:26:31 +0200 Subject: [PATCH] Ignore non-existing files. --- setup/backup.class.inc.php | 2 ++ test/setup/DBBackupDataTest.php | 1 + 2 files changed, 3 insertions(+) diff --git a/setup/backup.class.inc.php b/setup/backup.class.inc.php index 92bc7b2cc..1ec7c7ada 100644 --- a/setup/backup.class.inc.php +++ b/setup/backup.class.inc.php @@ -251,6 +251,8 @@ class DBBackup $aExtraFiles = MetaModel::GetModuleSetting('itop-backup', 'extra_files', []); foreach($aExtraFiles as $sExtraFileOrDir) { + if(!file_exists(APPROOT.'/'.$sExtraFileOrDir)) continue; // Ignore non-existing files + $sExtraFullPath = realpath(APPROOT.'/'.$sExtraFileOrDir); if (strncmp(APPROOT, $sExtraFullPath, strlen(APPROOT)) !== 0) { diff --git a/test/setup/DBBackupDataTest.php b/test/setup/DBBackupDataTest.php index af9595445..02ec0734a 100644 --- a/test/setup/DBBackupDataTest.php +++ b/test/setup/DBBackupDataTest.php @@ -69,6 +69,7 @@ class DBBackupDataTest extends ItopDataTestCase 'no_extra_file' => ['aExtraFiles' => [], false], 'one_extra_file' => ['aExtraFiles' => ['foo.txt' => true], false], 'three_extra_file_and_dir' => ['aExtraFiles' => ['foo.txt' => true, 'gabu/zomeu.xml' => true, 'meuh.html' => true], false], + 'two_extra_file_but_only_one_exists' => ['aExtraFiles' => ['foo.txt' => true, 'meuh.html' => false], false], 'one_unsafe_file' => ['aExtraFiles' => ['../foo.txt' => true], true], ]; }