Chris -
eXpress++ has had no changes to DC_dbSkip() in many years so there should be no change in behavior in build 256. i just realized, however, that I never tested DC_DbSkip(0) and found that I never added code to deal with this condition.
This is from the Xbase++ docs:
Note: If <nRecords> is 0, DbSkip() attempts to reload the current record, furthermore current filter/scope and deleted conditions are evaluated. If the current record no longer is visible, DbSkip() moves the record pointer to the next visible record. This behaviour is different from Clipper's.
I suggest adding the following code at line 480 instead of your solution.
Code: Select all
IF Empty(nDidSkip)
RETURN dbSkip(0)
ENDIF