calculate uncompressed length only when it changes