code: protected boolean ensureLoaded(int minimum)
          throws IOException
      {
          /* Let's assume here buffer has enough room -- this will always
           * be true for the limited used this method gets
           */
          int gotten = (mInputEnd - mInputPtr);
          while (gotten < minimum) {
              int count = (mIn == null) ? -1 : mIn.read(mByteBuffer, mInputEnd, mByteBuffer.length - mInputEnd);
              if (count < 1) {
                  return false;
              }
              mInputEnd += count;
              gotten += count;
          }
          return true;
      }
docs: /*
  ///////////////////////////////////////////////////
  Internal methods, loading input data
  ///////////////////////////////////////////////////