If the first decode of an upstream slice fails, it would make sense to reset the decoder, and try again, this would make the use-case of using read_files() across many gzipped files much simpler, as the file crossover would be easier