code: private void dataBufferFlush() throws SAXException {
          int saveLine = line;
          int saveColumn = column;
          line = linePrev;
          column = columnPrev;
          if ((currentElementContent == CONTENT_ELEMENTS) && (dataBufferPos > 0)
                  && !inCDATA) {
              // We can't just trust the buffer to be whitespace, there
              // are (error) cases when it isn't
              for (int i = 0; i < dataBufferPos; i++) {
                  if (!isWhitespace(dataBuffer[i])) {
                      handler.charData(dataBuffer, 0, dataBufferPos);
                      dataBufferPos = 0;
                  }
              }
              if (dataBufferPos > 0) {
                  handler.ignorableWhitespace(dataBuffer, 0, dataBufferPos);
                  dataBufferPos = 0;
              }
          } else if (dataBufferPos > 0) {
              handler.charData(dataBuffer, 0, dataBufferPos);
              dataBufferPos = 0;
          }
          line = saveLine;
          column = saveColumn;
      }
docs: Flush the contents of the data buffer to the handler, as appropriate, and
  reset the buffer for new input.