Add don't use phar based archive builders if modules not enabled
modifié: core/lib/Thelia/Core/FileFormat/Archive/ArchiveBuilder/TarArchiveBuilder.php modifié: core/lib/Thelia/Core/FileFormat/Archive/ArchiveBuilder/TarBz2ArchiveBuilder.php modifié: core/lib/Thelia/Core/FileFormat/Archive/ArchiveBuilder/TarGzArchiveBuilder.php modifié: core/lib/Thelia/Core/FileFormat/Archive/ArchiveBuilderManager.php
This commit is contained in:
@@ -47,6 +47,16 @@ class TarArchiveBuilder extends AbstractArchiveBuilder
|
|||||||
/** @var \Thelia\Log\Tlog */
|
/** @var \Thelia\Log\Tlog */
|
||||||
protected $logger;
|
protected $logger;
|
||||||
|
|
||||||
|
public function __construct()
|
||||||
|
{
|
||||||
|
if (false !== (bool)ini_get("phar.readonly") || !class_exists("\\PharData")) {
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
|
||||||
|
parent::__construct();
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
public function __destruct()
|
public function __destruct()
|
||||||
{
|
{
|
||||||
if ($this->tar instanceof \PharData) {
|
if ($this->tar instanceof \PharData) {
|
||||||
|
|||||||
@@ -19,6 +19,16 @@ namespace Thelia\Core\FileFormat\Archive\ArchiveBuilder;
|
|||||||
*/
|
*/
|
||||||
class TarBz2ArchiveBuilder extends TarArchiveBuilder
|
class TarBz2ArchiveBuilder extends TarArchiveBuilder
|
||||||
{
|
{
|
||||||
|
public function __construct()
|
||||||
|
{
|
||||||
|
if (!extension_loaded("bzip2")) {
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
|
||||||
|
parent::__construct();
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
public function getName()
|
public function getName()
|
||||||
{
|
{
|
||||||
return "tar.bz2";
|
return "tar.bz2";
|
||||||
|
|||||||
@@ -11,6 +11,7 @@
|
|||||||
/*************************************************************************************/
|
/*************************************************************************************/
|
||||||
|
|
||||||
namespace Thelia\Core\FileFormat\Archive\ArchiveBuilder;
|
namespace Thelia\Core\FileFormat\Archive\ArchiveBuilder;
|
||||||
|
use Thelia\Core\FileFormat\Archive\AbstractArchiveBuilder;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Class TarGzArchiveBuilder
|
* Class TarGzArchiveBuilder
|
||||||
@@ -19,6 +20,16 @@ namespace Thelia\Core\FileFormat\Archive\ArchiveBuilder;
|
|||||||
*/
|
*/
|
||||||
class TarGzArchiveBuilder extends TarArchiveBuilder
|
class TarGzArchiveBuilder extends TarArchiveBuilder
|
||||||
{
|
{
|
||||||
|
public function __construct()
|
||||||
|
{
|
||||||
|
if (!extension_loaded("zlib")) {
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
|
||||||
|
parent::__construct();
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
public function getName()
|
public function getName()
|
||||||
{
|
{
|
||||||
return "tar.gz";
|
return "tar.gz";
|
||||||
|
|||||||
@@ -33,7 +33,7 @@ class ArchiveBuilderManager
|
|||||||
* @param AbstractArchiveBuilder $archiveBuilder
|
* @param AbstractArchiveBuilder $archiveBuilder
|
||||||
* @return $this
|
* @return $this
|
||||||
*/
|
*/
|
||||||
public function add(AbstractArchiveBuilder $archiveBuilder)
|
public function add(AbstractArchiveBuilder $archiveBuilder = null)
|
||||||
{
|
{
|
||||||
if (null !== $archiveBuilder) {
|
if (null !== $archiveBuilder) {
|
||||||
$archiveBuilder->setEnvironment($this->environment);
|
$archiveBuilder->setEnvironment($this->environment);
|
||||||
|
|||||||
Reference in New Issue
Block a user