diff options
author | Andrew H <crazy4sb@gmail.com> | 2015-12-31 02:11:21 +0000 |
---|---|---|
committer | Unicornisaurous <crazy4sb@gmail.com> | 2015-12-31 18:18:18 +0000 |
commit | 2490d6457aac50dcf9eb699f28ac8e4a35cb6ef2 (patch) | |
tree | 5465d44a4c964d49d4548b926e88d81618e5a30c /includes/export/Dump7ZipOutput.php | |
parent | ba3cac4023165efeeee8a0e5075596410d2d8fe3 (diff) | |
download | mediawikicore-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.php | 13 |
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'; |