From 1a236905223536cdb392484d1c2f520dc1897c84 Mon Sep 17 00:00:00 2001 From: michag86 <micha_g@arcor.de> Date: Mon, 10 Aug 2015 09:36:16 +0200 Subject: Check if archive contains a directory named like appid --- lib/private/installer.php | 3 +++ 1 file changed, 3 insertions(+) (limited to 'lib/private') diff --git a/lib/private/installer.php b/lib/private/installer.php index 37af8d0edcb..328a4abcfd9 100644 --- a/lib/private/installer.php +++ b/lib/private/installer.php @@ -107,6 +107,9 @@ class OC_Installer{ } $extractDir .= '/' . $info['id']; + if(!file_exists($extractDir)) { + throw new \Exception($l->t("Archive does not contain a directory named %s", $info['id'])); + } OC_Helper::copyr($extractDir, $basedir); //remove temporary files -- cgit v1.2.3 From c7c021e1c98f553668511dd9af79e4ad4eda6801 Mon Sep 17 00:00:00 2001 From: michag86 <micha_g@arcor.de> Date: Mon, 10 Aug 2015 10:34:44 +0200 Subject: Update installer.php --- lib/private/installer.php | 1 + 1 file changed, 1 insertion(+) (limited to 'lib/private') diff --git a/lib/private/installer.php b/lib/private/installer.php index 328a4abcfd9..392dc1c0817 100644 --- a/lib/private/installer.php +++ b/lib/private/installer.php @@ -108,6 +108,7 @@ class OC_Installer{ $extractDir .= '/' . $info['id']; if(!file_exists($extractDir)) { + OC_Helper::rmdirr($basedir); throw new \Exception($l->t("Archive does not contain a directory named %s", $info['id'])); } OC_Helper::copyr($extractDir, $basedir); -- cgit v1.2.3