aboutsummaryrefslogtreecommitdiffstats
path: root/includes/export/Dump7ZipOutput.php
diff options
context:
space:
mode:
authorAndrew H <crazy4sb@gmail.com>2015-12-31 02:11:21 +0000
committerUnicornisaurous <crazy4sb@gmail.com>2015-12-31 18:18:18 +0000
commit2490d6457aac50dcf9eb699f28ac8e4a35cb6ef2 (patch)
tree5465d44a4c964d49d4548b926e88d81618e5a30c /includes/export/Dump7ZipOutput.php
parentba3cac4023165efeeee8a0e5075596410d2d8fe3 (diff)
downloadmediawikicore-2490d6457aac50dcf9eb699f28ac8e4a35cb6ef2.tar.gz
mediawikicore-2490d6457aac50dcf9eb699f28ac8e4a35cb6ef2.zip
Add 7zip compression level param to BackupDumper
Adds a --7ziplevel param to dumpBackup.php and dumpTextPass.php, used when an --output of type '7zip' is specified. Bug: T78669 Change-Id: I9ee8169daf30b4d8251c7a344b593c29c81eb799
Diffstat (limited to 'includes/export/Dump7ZipOutput.php')
-rw-r--r--includes/export/Dump7ZipOutput.php13
1 files changed, 11 insertions, 2 deletions
diff --git a/includes/export/Dump7ZipOutput.php b/includes/export/Dump7ZipOutput.php
index c299166ab966..31c945c05e31 100644
--- a/includes/export/Dump7ZipOutput.php
+++ b/includes/export/Dump7ZipOutput.php
@@ -28,9 +28,16 @@
*/
class Dump7ZipOutput extends DumpPipeOutput {
/**
+ * @var int
+ */
+ protected $compressionLevel;
+
+ /**
* @param string $file
+ * @param int $cmpLevel Compression level passed to 7za command's -mx
*/
- function __construct( $file ) {
+ function __construct( $file, $cmpLevel = 4 ) {
+ $this->compressionLevel = $cmpLevel;
$command = $this->setup7zCommand( $file );
parent::__construct( $command );
$this->filename = $file;
@@ -41,7 +48,9 @@ class Dump7ZipOutput extends DumpPipeOutput {
* @return string
*/
function setup7zCommand( $file ) {
- $command = "7za a -bd -si -mx=4 " . wfEscapeShellArg( $file );
+ $command = "7za a -bd -si -mx=";
+ $command .= wfEscapeShellArg( $this->compressionLevel ) . ' ';
+ $command .= wfEscapeShellArg( $file );
// Suppress annoying useless crap from p7zip
// Unfortunately this could suppress real error messages too
$command .= ' >' . wfGetNull() . ' 2>&1';