You are here

function backup_migrate_filter_compression::_backup_migrate_gzip_decode in Backup and Migrate 6.3

Same name and namespace in other branches
  1. 8.2 includes/filters.compression.inc \backup_migrate_filter_compression::_backup_migrate_gzip_decode()
  2. 8.3 includes/filters.compression.inc \backup_migrate_filter_compression::_backup_migrate_gzip_decode()
  3. 6.2 includes/filters.compression.inc \backup_migrate_filter_compression::_backup_migrate_gzip_decode()
  4. 7.3 includes/filters.compression.inc \backup_migrate_filter_compression::_backup_migrate_gzip_decode()
  5. 7.2 includes/filters.compression.inc \backup_migrate_filter_compression::_backup_migrate_gzip_decode()

Gzip decode a file.

1 call to backup_migrate_filter_compression::_backup_migrate_gzip_decode()
backup_migrate_filter_compression::_backup_migrate_file_decompress in includes/filters.compression.inc
Decompress a file with the given settings. Also updates settings to reflect new file mime and file extension.

File

includes/filters.compression.inc, line 129
A filter for compressing bckups with zip, gz bzip etc.

Class

backup_migrate_filter_compression
A filter for compressing backup files.

Code

function _backup_migrate_gzip_decode($source, $dest, $settings) {
  $success = FALSE;
  if (!empty($settings->filters['use_cli'])) {
    $success = backup_migrate_exec("gzip -d -c %input > %dest", array(
      '%input' => $source,
      '%dest' => $dest,
    ));
  }
  if (!$success && @function_exists("gzopen")) {
    if (($fp_out = fopen($dest, 'wb')) && ($fp_in = gzopen($source, 'rb'))) {
      while (!feof($fp_in)) {
        fwrite($fp_out, gzread($fp_in, 1024 * 512));
      }
      $success = TRUE;
    }
    @gzclose($fp_in);
    @fclose($fp_out);
  }
  return $success;
}