if (bitOffset != 0)
if (newOffset != 0)
  public int readBit()    throws IOException  {    checkClosed();    // Calc new bit offset here, readByte resets it.    int newOffset = (bitOffset + 1) & 0x7;    byte data = readByte();        if (bitOffset != 0)      {	seek(getStreamPosition() - 1);	data = (byte) (data >> (8 - newOffset));      }    bitOffset = newOffset;    return data & 0x1;  }