The routine now checks for certain parameter errors that might otherwise have caused erroneous results (at best) or corrupted memory (at worst). These would include specifying more rows to be sorted than exist in the array, or attempting to sort an array made up of dynamic string elements (which are not contiguous and thus cannot be sorted by SORTIT.SBR in its current state of development). Note that we are unable to check for the case where the array parameter is specified as an individual element other than the first one, which could lead to memory overflow even if the specified row count is within the bounds of the extent of the array.
For example, if the physical size of the array is 100, and you specify 100 rows to sort, but instead of specifying array(1) as the initial element you accidentally specify array(10), then it could end up referencing non-existent rows 101-110.