From 82786c6937c48353eefddac4a2944f7b326c1a18 Mon Sep 17 00:00:00 2001 From: Fred Tempez Date: Sun, 23 Jul 2023 18:33:10 +0200 Subject: [PATCH] =?UTF-8?q?D=C3=A9tailler=20l'=C3=A9tape=202=20+=20effacer?= =?UTF-8?q?=20fichier=20tar=20et=20tar.gz?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- core/module/install/install.php | 25 +++++++++++++++++-------- 1 file changed, 17 insertions(+), 8 deletions(-) diff --git a/core/module/install/install.php b/core/module/install/install.php index f71b4e4c..58758073 100644 --- a/core/module/install/install.php +++ b/core/module/install/install.php @@ -294,16 +294,16 @@ class install extends common // Sauvegarde htaccess if ($this->getData(['config', 'autoUpdateHtaccess'])) { $success = copy('.htaccess', '.htaccess' . '.bak'); - $message = $success ? '' : 'Erreur de copie du fichier htaccess'; + $message = $success ? '' : 'Erreur de copie du fichier htaccess'; } // Nettoyage des fichiers d'installation précédents if (file_exists(self::TEMP_DIR . 'update.tar.gz') && $success) { $success = unlink(self::TEMP_DIR . 'update.tar.gz'); $message = $success ? '' : 'Impossible d\'effacer la mise à jour précédente'; } - if (is_dir(self::TEMP_DIR . 'update.tar') && $success) { - $success = $this->deleteDir(self::TEMP_DIR . 'update.tar'); - $message = $success ? '' :'Impossible d\'effacer la mise à jour précédente'; + if (file_exists(self::TEMP_DIR . 'update.tar') && $success) { + $success = unlink(self::TEMP_DIR . 'update.tar'); + $message = $success ? '' : 'Impossible d\'effacer la mise à jour précédente'; } // Valeurs en sortie $this->addOutput([ @@ -320,14 +320,23 @@ class install extends common $md5origin = helper::getUrlContents(common::ZWII_UPDATE_URL . common::ZWII_UPDATE_CHANNEL . '/update.md5'); $md5origin = explode(' ', $md5origin); $md5target = md5_file(self::TEMP_DIR . 'update.tar.gz'); - // Sorties - $success = ($md5origin[0] === $md5target); - $message = $success === false ? json_encode('Erreur de téléchargement ou de somme de contrôle', JSON_UNESCAPED_UNICODE) : ""; + // Vérifier si les checksums correspondent + if ($md5origin[0] === $md5target) { + $success = true; + $message = ""; + } else { + $success = false; + $message = json_encode('Erreur de téléchargement ou de somme de contrôle', JSON_UNESCAPED_UNICODE); + if (file_exists(self::TEMP_DIR . 'update.tar.gz')) { + unlink(self::TEMP_DIR . 'update.tar.gz'); + } + } + // Valeurs en sortie $this->addOutput([ 'display' => self::DISPLAY_JSON, 'content' => [ - 'success' =>$success, + 'success' => $success, 'data' => $message ] ]);