かなり深いところで発生したバグによるドツボだったので,忘れないように備忘録.
なぜか cygwin 上の zlib の gzseek() で SEEK_SET が無視されて SEEK_CUR 状態になるという現象が発生.このせいで以前は動いていたコードが動かなくなった.非常に気分悪いが,とりあえず直前に gzrewind() して汚く解決.
zlib 側でこんな基本的な処理にバグが入るとは思えないし,VC++でも起きない現象なので,オリジナルソースの問題ではないのだろうが… ま,とにかくこういう現象が観測された.