From cb842ba793a09b23dcd0415d0322e99bb9650dd3 Mon Sep 17 00:00:00 2001 From: Remco Brenninkmeijer Date: Mon, 4 Aug 2014 14:10:09 +0200 Subject: [PATCH] Previous commit was not based on master, retry. Removed broken tar cutter, double extensions are not possible in temp files. Added tar support. Fixed extension switch. --- lib/private/archive.php | 5 +---- lib/private/archive/tar.php | 10 ++++++---- 2 files changed, 7 insertions(+), 8 deletions(-) diff --git a/lib/private/archive.php b/lib/private/archive.php index a62f22cf6d..562172ddef 100644 --- a/lib/private/archive.php +++ b/lib/private/archive.php @@ -20,11 +20,8 @@ abstract class OC_Archive{ case '.gz': case '.bz': case '.bz2': - if(strpos($path, '.tar.')) { - return new OC_Archive_TAR($path); - } - break; case '.tgz': + case '.tar': return new OC_Archive_TAR($path); } } diff --git a/lib/private/archive/tar.php b/lib/private/archive/tar.php index 21a995d9e5..3f64b4c506 100644 --- a/lib/private/archive/tar.php +++ b/lib/private/archive/tar.php @@ -40,12 +40,14 @@ class OC_Archive_TAR extends OC_Archive{ if(strpos($file, '.')) { $extension=substr($file, strrpos($file, '.')); switch($extension) { - case 'gz': - case 'tgz': + case '.gz': + case '.tgz': return self::GZIP; - case 'bz': - case 'bz2': + case '.bz': + case '.bz2': return self::BZIP; + case '.tar': + return self::PLAIN; default: return self::PLAIN; }