bundles/org.tukani.xz/src/org/tukaani/xz/lz/HC4.java
private int movePos() {
        int avail = movePos(4, 4);

        if (avail != 0) {
            if (++lzPos == Integer.MAX_VALUE) {
                int normalizationOffset = Integer.MAX_VALUE - cyclicSize;
                hash.normalize(normalizationOffset);
                normalize(chain, cyclicSize, normalizationOffset);
                lzPos -= normalizationOffset;
            }

            if (++cyclicPos == cyclicSize)
                cyclicPos = 0;
        }

        return avail;
    }
private int movePos() {
        int avail = movePos(4, 4);

        if (avail != 0) {
            if (++lzPos == Integer.MAX_VALUE) {
                int normalizationOffset = Integer.MAX_VALUE - cyclicSize;
                hash.normalize(normalizationOffset);
                normalize(chain, cyclicSize, normalizationOffset);
                lzPos -= normalizationOffset;
            }

            if (++cyclicPos == cyclicSize)
                cyclicPos = 0;
        }

        return avail;
    }
private int movePos ( ) { int avail = movePos ( 4 , 4 ) ; if ( avail != 0 ) { if ( ++ lzPos == Integer . MAX_VALUE ) { int normalizationOffset = Integer . MAX_VALUE - cyclicSize ; hash . normalize ( normalizationOffset ) ; normalize ( chain , cyclicSize , normalizationOffset ) ; lzPos -= normalizationOffset ; } if ( ++ cyclicPos == cyclicSize ) cyclicPos = 0 ; } return avail ; }
Moves to the next byte, checks that there is enough available space,
and possibly normalizes the hash tables and the hash chain.

@return      number of bytes available, including the current byte
Moves to the next byte checks that there is enough available space and possibly normalizes the hash tables and the hash chain .