in commons-fileupload2-core/src/main/java/org/apache/commons/fileupload2/core/MultipartInput.java [686:705]
private void computeBoundaryTable() {
var position = 2;
var candidate = 0;
boundaryTable[0] = -1;
boundaryTable[1] = 0;
while (position <= boundaryLength) {
if (boundary[position - 1] == boundary[candidate]) {
boundaryTable[position] = candidate + 1;
candidate++;
position++;
} else if (candidate > 0) {
candidate = boundaryTable[candidate];
} else {
boundaryTable[position] = 0;
position++;
}
}
}