You are here

public function Archive_Tar::_openReadWrite in Drupal 7

Return value

bool

1 call to Archive_Tar::_openReadWrite()
Archive_Tar::_openAppend in modules/system/system.tar.inc

File

modules/system/system.tar.inc, line 943

Class

Archive_Tar

Code

public function _openReadWrite() {
  if ($this->_compress_type == 'gz') {
    $this->_file = @gzopen($this->_tarname, "r+b");
  }
  else {
    if ($this->_compress_type == 'bz2') {
      $this
        ->_error('Unable to open bz2 in read/write mode \'' . $this->_tarname . '\' (limitation of bz2 extension)');
      return false;
    }
    else {
      if ($this->_compress_type == 'lzma2') {
        $this
          ->_error('Unable to open lzma2 in read/write mode \'' . $this->_tarname . '\' (limitation of lzma2 extension)');
        return false;
      }
      else {
        if ($this->_compress_type == 'none') {
          $this->_file = @fopen($this->_tarname, "r+b");
        }
        else {
          $this
            ->_error('Unknown or missing compression type (' . $this->_compress_type . ')');
          return false;
        }
      }
    }
  }
  if ($this->_file == 0) {
    $this
      ->_error('Unable to open in read/write mode \'' . $this->_tarname . '\'');
    return false;
  }
  return true;
}