diff --git a/harbour/ChangeLog b/harbour/ChangeLog index 81ee63ad1b..4b90052cfb 100644 --- a/harbour/ChangeLog +++ b/harbour/ChangeLog @@ -17,6 +17,11 @@ past entries belonging to author(s): Viktor Szakats. */ +2009-12-04 03:41 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl) + * harbour/contrib/rddads/ads1.c + ! fixed ordSkipUnique() to properly update BOF/EOF flags, skip over + ADS BOF phantom record and respect not optimized local filters + 2009-12-03 18:03 UTC-0800 Pritpal Bedi (pritpal@vouchcac.com) * contrib/hbide/hbide.ch * contrib/hbide/hbide.prg diff --git a/harbour/contrib/rddads/ads1.c b/harbour/contrib/rddads/ads1.c index f73d21eb26..b7c2044f28 100644 --- a/harbour/contrib/rddads/ads1.c +++ b/harbour/contrib/rddads/ads1.c @@ -4470,8 +4470,15 @@ static HB_ERRCODE adsOrderInfo( ADSAREAP pArea, USHORT uiIndex, LPDBORDERINFO pO LONG lToSkip = pOrderInfo->itmNewVal && HB_IS_NUMERIC( pOrderInfo->itmNewVal ) ? hb_itemGetNL( pOrderInfo->itmNewVal ) : 1; if( hIndex ) + { hb_itemPutL( pOrderInfo->itmResult, AdsSkipUnique( hIndex, lToSkip >= 0 ? 1 : -1 ) == AE_SUCCESS ); + hb_adsUpdateAreaFlags( pArea ); + /* Force relational movement in child WorkAreas */ + if( pArea->area.lpdbRelations ) + SELF_SYNCCHILDREN( ( AREAP ) pArea ); + SELF_SKIPFILTER( ( AREAP ) pArea, lToSkip ); + } else hb_itemPutL( pOrderInfo->itmResult, SELF_SKIP( ( AREAP ) pArea, lToSkip ) == HB_SUCCESS );