base[i] = *p;
while (i < j)
{
- while (((*cmp) ((base + j), p)) <= 0)
+ while (((*cmp) ((base + j), p)) > 0)
--j;
base[i] = base[j];
- while ((i < j) && (((*cmp) ((base + i), p)) > 0))
+ while ((i < j) && (((*cmp) ((base + i), p)) <= 0))
++i;
base[j] = base[i];
}
base[i] = *p;
while (i < j)
{
- while (((*cmp) ((base + j), p)) <= 0)
+ while (((*cmp) ((base + j), p)) > 0)
--j;
base[i] = base[j];
- while ((i < j) && (((*cmp) ((base + i), p)) > 0))
+ while ((i < j) && (((*cmp) ((base + i), p)) <= 0))
++i;
base[j] = base[i];
}
p = _qbuf;
while (i < j)
{
- while (((*cmp) ((base + size * j), p)) <= 0)
+ while (((*cmp) ((base + size * j), p)) > 0)
--j;
moveitem((base + size * i), (base + size * j), size);
- while ((i < j) && (((*cmp) ((base + size * i), p)) > 0))
+ while ((i < j) && (((*cmp) ((base + size * i), p)) <= 0))
++i;
moveitem((base + size * j), (base + size * i), size);
}