function _readHeader($v_binary_data, &$v_header) { static $is_first = true; static $count = 0; static $block_performance = 32; $v_result = parent::_readHeader($v_binary_data, $v_header); if ($v_result && $this->resumeMode && (++$count > $block_performance || $is_first)) { $this->lastOffset = $this->_getOffset() - 1; $data = array('filename' => $v_header['filename'], 'size' => $v_header['size']); $performance = $this->setState($this->lastOffset); if ($is_first) { $is_first = false; } else { $count = 0; $block_performance = $performance; } } return $v_result; }