c# GzipStream распаковывать поток только если он действительно запакован
Вообщем вопрос не очевидный на первый взгляд.
Что у нас имеется:
Есть поток inputStream.
Мы знаем что он возможно запакован gzip'ом. А возможно нет.
Что требуется:
Требуется прочитать этот поток, при необходимости распаковав.
Если просто обернуть его в GzipStream, то он рухнет с ошибкой «The magic number in GZip header is not correct».
В чем загвоздка:
Нельзя просто вычитать поток в byte[], а потом играться с этим массивом, так как стоят жесткие ограничения по скорости работы.
Есть у кого-нибудь предложения как это сделать?