ChangeLogTag:19991015-18:45 GMT+1 Bruno Cantero <bruno@issnet.net>
This commit is contained in:
@@ -1,3 +1,10 @@
|
||||
19991015-18:45 GMT+1 Bruno Cantero <bruno@issnet.net>
|
||||
* source/rdd/dbcmd.c
|
||||
* Bug removed, default alias work if not alias and extension is specified.
|
||||
|
||||
* source/rdd/dbf1.c
|
||||
* Bug removed, Bof() now work properly.
|
||||
|
||||
19991015-09:53 GMT+3 Alexander Kresin
|
||||
* source/pp/hbpp.c
|
||||
* Fixed little bug, reported by Antonio Linares
|
||||
|
||||
@@ -1777,14 +1777,15 @@ HARBOUR HB_DBUNLOCKALL( void )
|
||||
|
||||
HARBOUR HB_DBUSEAREA( void )
|
||||
{
|
||||
char * szDriver, * szFileName, * szAlias;
|
||||
char * szDriver, * szFileName;
|
||||
LPRDDNODE pRddNode;
|
||||
LPAREANODE pAreaNode;
|
||||
USHORT uiSize, uiRddID, uiLen;
|
||||
DBOPENINFO pInfo;
|
||||
PHB_FNAME pFileName;
|
||||
PHB_ITEM pFileExt;
|
||||
char cDriverBuffer[ HARBOUR_MAX_RDD_DRIVERNAME_LENGTH ];
|
||||
char szDriverBuffer[ HARBOUR_MAX_RDD_DRIVERNAME_LENGTH + 1 ];
|
||||
char szAlias[ HARBOUR_MAX_RDD_ALIAS_LENGTH + 1];
|
||||
|
||||
bNetError = FALSE;
|
||||
|
||||
@@ -1814,8 +1815,10 @@ HARBOUR HB_DBUSEAREA( void )
|
||||
uiLen = hb_parclen( 2 );
|
||||
if( uiLen > 0 )
|
||||
{
|
||||
hb_strncpyUpper( cDriverBuffer, hb_parc( 2 ), uiLen );
|
||||
szDriver = cDriverBuffer;
|
||||
if( uiLen > HARBOUR_MAX_RDD_DRIVERNAME_LENGTH )
|
||||
uiLen = HARBOUR_MAX_RDD_DRIVERNAME_LENGTH;
|
||||
hb_strncpyUpper( szDriverBuffer, hb_parc( 2 ), uiLen );
|
||||
szDriver = szDriverBuffer;
|
||||
}
|
||||
else
|
||||
szDriver = szDefDriver;
|
||||
@@ -1836,9 +1839,9 @@ HARBOUR HB_DBUSEAREA( void )
|
||||
}
|
||||
|
||||
pFileName = hb_fsFNameSplit( szFileName );
|
||||
szAlias = hb_parc( 4 );
|
||||
strncpy( szAlias, hb_parc( 4 ), HARBOUR_MAX_RDD_ALIAS_LENGTH );
|
||||
if( strlen( szAlias ) == 0 )
|
||||
szAlias = pFileName->szName;
|
||||
strncpy( szAlias, pFileName->szName, HARBOUR_MAX_RDD_ALIAS_LENGTH );
|
||||
|
||||
/* Create a new WorkArea node */
|
||||
|
||||
|
||||
@@ -1011,11 +1011,15 @@ static ERRCODE dbfGoTo( AREAP pArea, ULONG lRecNo )
|
||||
if( lRecNo > lRecCount + 1 )
|
||||
lRecNo = lRecCount + 1;
|
||||
|
||||
if( lRecNo == lRecCount + 1 )
|
||||
pArea->fEof = 1;
|
||||
if( lRecNo <= 0 )
|
||||
{
|
||||
pArea->fBof = 1;
|
||||
lRecNo = 1;
|
||||
}
|
||||
else
|
||||
pArea->fEof = 0;
|
||||
pArea->fBof = ( lRecNo == 1 );
|
||||
pArea->fBof = ( lRecNo == 1 && pArea->fBof );
|
||||
|
||||
pArea->fEof = ( lRecNo == lRecCount + 1 );
|
||||
}
|
||||
|
||||
pArea->lpExtendInfo->lRecNo = lRecNo;
|
||||
@@ -1051,6 +1055,7 @@ static ERRCODE dbfGoToId( AREAP pArea, PHB_ITEM pItem )
|
||||
|
||||
static ERRCODE dbfGoTop( AREAP pArea )
|
||||
{
|
||||
pArea->fBof = 0;
|
||||
SELF_GOTO( pArea, 1 );
|
||||
return SELF_SKIPFILTER( pArea, 1 );
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user