From d88826cdd53284a06240e5e4b289f729f4ebd760 Mon Sep 17 00:00:00 2001 From: Przemyslaw Czerpak Date: Thu, 14 May 2009 06:48:19 +0000 Subject: [PATCH] 2009-05-14 08:56 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl) * harbour/contrib/rddads/ads1.c * re-enabled workaround code for wrong character field size returned by AdsGetFiled() for all ACE versions until we will not have good confirmation from Extended System that problem is fixed in some newer client versions. --- harbour/ChangeLog | 7 +++++++ harbour/contrib/rddads/ads1.c | 7 ++++--- 2 files changed, 11 insertions(+), 3 deletions(-) diff --git a/harbour/ChangeLog b/harbour/ChangeLog index fcaa60d312..f96350df03 100644 --- a/harbour/ChangeLog +++ b/harbour/ChangeLog @@ -17,6 +17,13 @@ past entries belonging to these authors: Viktor Szakats. */ +2009-05-14 08:56 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl) + * harbour/contrib/rddads/ads1.c + * re-enabled workaround code for wrong character field size returned by + AdsGetFiled() for all ACE versions until we will not have good + confirmation from Extended System that problem is fixed in some + newer client versions. + 2009-05-14 02:28 UTC+0200 Viktor Szakats (harbour.01 syenar hu) * include/hbextern.ch * source/rtl/Makefile diff --git a/harbour/contrib/rddads/ads1.c b/harbour/contrib/rddads/ads1.c index 412f8d4749..a3f17f78ff 100644 --- a/harbour/contrib/rddads/ads1.c +++ b/harbour/contrib/rddads/ads1.c @@ -2054,13 +2054,14 @@ static HB_ERRCODE adsGetValue( ADSAREAP pArea, USHORT uiIndex, PHB_ITEM pItem ) update area flags, Druzus */ hb_adsUpdateAreaFlags( pArea ); } -#if ADS_LIB_VERSION == 900 /* workaround for ACE bug: character fields longer then 23 bytes are - * increased by one byte when read by AdsGetField() [druzus]. + * increased by one byte when read by AdsGetField(). This hack can + * cut the results read from some type of compressed fields so it + * should be removed for ACE clients which does not have such + * problems [druzus]. */ if( u32Length > ( ULONG ) pField->uiLen ) u32Length = pField->uiLen; -#endif hb_itemPutCL( pItem, ( char * ) pBuffer, u32Length ); break;