/** * */ protected function _processExtraField(Woops_Zip_Binary_Stream $stream, $length) { $this->_extraFields = array(); $read = $stream->getOffset(); $end = $read + $length; while ($read < $end) { $id = $stream->littleEndianUnsignedShort(); if (isset(self::$_extraTypes[$id])) { $extraFieldClass = self::$_extraTypes[$id]; $extraField = new $extraFieldClass(); } else { $extraField = new Woops_Zip_UnknownExtraField($id); } $this->_extraFields[] = $extraField; $extraField->processData($stream); $read = $stream->getOffset(); } }