Language: javascript
Rule: S2189
Platform: Sonarqube 9.9.4
It is a false positive because the variable detected for control exis loop is wrong. Right one is “i”.
Messege from Sonarqube: ‘lineNumber’ is not modified in this loop.
function arraySort(tableName, column, lineNumber, columnNumber) {
var aTable = tables[tableName];
var arrayToSort;
var array;
var reverse = 0;
if (aTable) {
array = aTable[0];
arrayToSort = new Array(lineNumber);
for (i=0;i<lineNumber;i++) {
//'lineNumber' is not modified in this loop.
arrayToSort[i] = new Array(2);
arrayToSort[i][0] = array[i][column];
arrayToSort[i][1] = i;
}
reverse = 1 - aTable[1];
aTable[1] = reverse;
}
........
}