def next(self):
self._check("<STR_LIT>")<EOL>if self.firstmember is not None:<EOL><INDENT>m = self.firstmember<EOL>self.firstmember = None<EOL>return m<EOL><DEDENT>self.fileobj.seek(self.offset)<EOL>tarinfo = None<EOL>while True:<EOL><INDENT>try:<EOL><INDENT>tarinfo = self.tarinfo.fromtarfile(self)<EOL><DEDENT>except EOFHeaderError as e:<EOL><INDENT>if self.ignore_zeros:<EOL><INDENT>self._dbg(<NUM_LIT:2>, "<STR_LIT>" % (self.offset, e))<EOL>self.offset += BLOCKSIZE<EOL>continue<EOL><DEDENT><DEDENT>except InvalidHeaderError as e:<EOL><INDENT>if self.ignore_zeros:<EOL><INDENT>self._dbg(<NUM_LIT:2>, "<STR_LIT>" % (self.offset, e))<EOL>self.offset += BLOCKSIZE<EOL>continue<EOL><DEDENT>elif self.offset == <NUM_LIT:0>:<EOL><INDENT>raise ReadError(str(e))<EOL><DEDENT><DEDENT>except EmptyHeaderError:<EOL><INDENT>if self.offset == <NUM_LIT:0>:<EOL><INDENT>raise ReadError("<STR_LIT>")<EOL><DEDENT><DEDENT>except TruncatedHeaderError as e:<EOL><INDENT>if self.offset == <NUM_LIT:0>:<EOL><INDENT>raise ReadError(str(e))<EOL><DEDENT><DEDENT>except SubsequentHeaderError as e:<EOL><INDENT>raise ReadError(str(e))<EOL><DEDENT>break<EOL><DEDENT>if tarinfo is not None:<EOL><INDENT>self.members.append(tarinfo)<EOL><DEDENT>else:<EOL><INDENT>self._loaded = True<EOL><DEDENT>return tarinfo<EOL>
Return the next member of the archive as a TarInfo object, when
           TarFile is opened for reading. Return None if there is no more
           available.