2006-07-10 13:29 UTC+0100 Viktor Szakats (viktor.szakats syenar.hu)

* harbour/source/rdd/dbcmd.c
     ! AFIELDS() made fully CA-Cl*pper compatible.

   * harbour/contrib/libct/ctc.c
     ! Warning fixed.
This commit is contained in:
Viktor Szakats
2006-07-10 11:31:21 +00:00
parent 61dffc7bb7
commit 0bf0623100
3 changed files with 46 additions and 30 deletions

View File

@@ -8,6 +8,13 @@
2002-12-01 13:30 UTC+0100 Foo Bar <foo.bar@foobar.org>
*/
* harbour/makefile.vc
+ Generalized linker flags (LDFLAGS) and small exe generation
improvements.
2006-07-10 13:29 UTC+0100 Viktor Szakats (viktor.szakats syenar.hu)
* harbour/source/rdd/dbcmd.c
! AFIELDS() made fully CA-Cl*pper compatible.
* harbour/contrib/libct/ctc.c

View File

@@ -82,9 +82,9 @@ USHORT ct_error (USHORT uiSeverity, ULONG ulGenCode, ULONG ulSubCode,
for (uiArgPos = 1; uiArgPos <= uiArgCount; uiArgPos++)
{
PHB_ITEM pTemp;
hb_itemArrayPut (pArray, uiArgPos, pTemp = va_arg (va, PHB_ITEM));
HB_TRACE(HB_TR_DEBUG, ("\t%p,",pTemp));
PHB_ITEM pTemp = va_arg (va, PHB_ITEM);
hb_itemArrayPut (pArray, uiArgPos, pTemp);
HB_TRACE(HB_TR_DEBUG, ("\t%p,", pTemp));
}
va_end (va);
HB_TRACE(HB_TR_DEBUG, (")"));

View File

@@ -1339,7 +1339,7 @@ HB_FUNC( AFIELDS )
{
HB_THREAD_STUB
PHB_ITEM pName, pType, pLen, pDec;
USHORT uiFields, uiArrayLen, uiCount;
USHORT uiFields, uiCount;
AREAP pArea = HB_CURRENT_WA;
if( !pArea )
@@ -1358,54 +1358,63 @@ HB_FUNC( AFIELDS )
return;
}
uiArrayLen = 0;
SELF_FIELDCOUNT( pArea, &uiFields );
if( pName )
{
uiArrayLen = ( USHORT ) hb_arrayLen( pName );
if( uiArrayLen > uiFields )
uiArrayLen = uiFields;
for( uiCount = 1; uiCount <= uiArrayLen; ++uiCount )
USHORT uiArrayLen = ( USHORT ) hb_arrayLen( pName );
if( uiArrayLen < uiFields )
uiFields = uiArrayLen;
}
if( pType )
{
USHORT uiArrayLen = ( USHORT ) hb_arrayLen( pType );
if( uiArrayLen < uiFields )
uiFields = uiArrayLen;
}
if( pLen )
{
USHORT uiArrayLen = ( USHORT ) hb_arrayLen( pLen );
if( uiArrayLen < uiFields )
uiFields = uiArrayLen;
}
if( pDec )
{
USHORT uiArrayLen = ( USHORT ) hb_arrayLen( pDec );
if( uiArrayLen < uiFields )
uiFields = uiArrayLen;
}
if( pName )
{
for( uiCount = 1; uiCount <= uiFields; ++uiCount )
{
SELF_FIELDINFO( pArea, uiCount, DBS_NAME,
hb_arrayGetItemPtr( pName, uiCount ) );
SELF_FIELDINFO( pArea, uiCount, DBS_NAME, hb_arrayGetItemPtr( pName, uiCount ) );
}
}
if( pType )
{
uiArrayLen = ( USHORT ) hb_arrayLen( pType );
if( uiArrayLen > uiFields )
uiArrayLen = uiFields;
for( uiCount = 1; uiCount <= uiArrayLen; ++uiCount )
for( uiCount = 1; uiCount <= uiFields; ++uiCount )
{
SELF_FIELDINFO( pArea, uiCount, DBS_TYPE,
hb_arrayGetItemPtr( pType, uiCount ) );
SELF_FIELDINFO( pArea, uiCount, DBS_TYPE, hb_arrayGetItemPtr( pType, uiCount ) );
}
}
if( pLen )
{
uiArrayLen = ( USHORT ) hb_arrayLen( pLen );
if( uiArrayLen > uiFields )
uiArrayLen = uiFields;
for( uiCount = 1; uiCount <= uiArrayLen; ++uiCount )
for( uiCount = 1; uiCount <= uiFields; ++uiCount )
{
SELF_FIELDINFO( pArea, uiCount, DBS_LEN,
hb_arrayGetItemPtr( pLen, uiCount ) );
SELF_FIELDINFO( pArea, uiCount, DBS_LEN, hb_arrayGetItemPtr( pLen, uiCount ) );
}
}
if( pDec )
{
uiArrayLen = ( USHORT ) hb_arrayLen( pDec );
if( uiArrayLen > uiFields )
uiArrayLen = uiFields;
for( uiCount = 1; uiCount <= uiArrayLen; ++uiCount )
for( uiCount = 1; uiCount <= uiFields; ++uiCount )
{
SELF_FIELDINFO( pArea, uiCount, DBS_DEC,
hb_arrayGetItemPtr( pDec, uiCount ) );
SELF_FIELDINFO( pArea, uiCount, DBS_DEC, hb_arrayGetItemPtr( pDec, uiCount ) );
}
}
hb_retni( uiArrayLen );
hb_retni( uiFields );
}
HB_FUNC( ALIAS )