The fix 

>
>   if (pp_array[searchpos].id != id) searchpos--;      // are we one too far?
>

should work (based on the 3.0 sources, where the error is revealed
as stemming from a >= in an if test where a != should have been used...).

Alternatively, one can call SysBinarySearch with the last parameter, 
findFirst, set to true.  Whilst this will have a performance impact in the case 
of there actually being duplicated records, its performance impact in the 
case of unique records is comparable to your fix.

robert mckenzie
[EMAIL PROTECTED]



Reply via email to