Check size of compressed file before decode

Keep the 'one file' calculated value at info, sanity check while decoding
Buf fix (recent)- compressed files over 4G

Filer offset manipulation was performed in 32 bit context instead of 64.
(Writing the code, I've expected gcc to use lvalue context, I should have verified that)

Special thanks to Chris Black!