2004-10-06 21:56 UTC+0300 Alexander Kresin <alex@belacy.belgorod.su>

This commit is contained in:
Alexander S.Kresin
2004-10-06 17:57:26 +00:00
parent 32441bc82b
commit db730c2a15
2 changed files with 13 additions and 0 deletions

View File

@@ -8,6 +8,10 @@
2002-12-01 23:12 UTC+0100 Foo Bar <foo.bar@foobar.org>
*/
2004-10-06 21:56 UTC+0300 Alexander Kresin <alex@belacy.belgorod.su>
* source/rdd/dbfntx/dbfntx1.c
! Fixed a bug, causing random GPFs while seeking.
2004-10-06 05:40 UTC-0500 David Arturo Macias Corona <dmacias@mail.udg.mx>
+ harbour/contrib/mysql/difer.txt
Describe modifications to programs of harbour\contrib\mysql, in Spanish

View File

@@ -444,6 +444,7 @@ static ULONG hb_ntxTagKeyNo( LPTAGINFO pTag )
LPKEYINFO pKey = hb_ntxKeyNew( NULL,pTag->KeyLength );
hb_ntxGetCurrentKey( pTag,pKey );
pTag->stackLevel = 0;
seekRes = hb_ntxTagFindCurrentKey( pTag, hb_ntxPageLoad( pTag,0 ), pKey, (int)pTag->KeyLength, FALSE, FALSE );
hb_ntxKeyFree( pKey );
if( !seekRes )
@@ -504,6 +505,7 @@ static ULONG hb_ntxTagKeyCount( LPTAGINFO pTag )
strncpy( pKey->key,pTag->topScope->item.asString.value,pTag->KeyLength );
pTag->CurKeyInfo->Tag = pTag->CurKeyInfo->Xtra = pTag->TagEOF = 0;
pTag->stackLevel = 0;
lRecno = ( hb_ntxTagFindCurrentKey( pTag, hb_ntxPageLoad( pTag,0 ),
pKey, (int)pTag->KeyLength, FALSE, TRUE ) <= 0 )? pTag->CurKeyInfo->Xtra:0;
hb_ntxKeyFree( pKey );
@@ -639,6 +641,7 @@ static LONG hb_ntxTagKeyFind( LPTAGINFO pTag, LPKEYINFO pKey, int keylen, BOOL *
pTag->CurKeyInfo->Tag = pTag->CurKeyInfo->Xtra = 0;
pTag->TagBOF = pTag->TagEOF = *result = FALSE;
pTag->stackLevel = 0;
K = hb_ntxTagFindCurrentKey( pTag, hb_ntxPageLoad( pTag,0 ), pKey, keylen, FALSE, (bSoftSeek)? 2:1 );
if( K == 0 )
{
@@ -883,6 +886,7 @@ static BOOL hb_ntxTagGoToNextKey( LPTAGINFO pTag, BOOL lContinue )
}
else
hb_ntxGetCurrentKey( pTag,pKey );
pTag->stackLevel = 0;
seekRes = hb_ntxTagFindCurrentKey( pTag, hb_ntxPageLoad( pTag,0 ), pKey, (int)pTag->KeyLength, FALSE, FALSE );
hb_ntxKeyFree( pKey );
if( seekRes )
@@ -981,6 +985,7 @@ static BOOL hb_ntxTagGoToPrevKey( LPTAGINFO pTag, BOOL lContinue )
}
else
hb_ntxGetCurrentKey( pTag, pKey );
pTag->stackLevel = 0;
seekRes = hb_ntxTagFindCurrentKey( pTag, hb_ntxPageLoad( pTag,0 ), pKey, (int)pTag->KeyLength, FALSE, FALSE );
hb_ntxKeyFree( pKey );
if( seekRes )
@@ -2947,12 +2952,14 @@ static BOOL hb_ntxOrdKeyDel( LPTAGINFO pTag )
hb_ntxGetCurrentKey( pTag, pKey );
if( pTag->Owner->Owner->fShared && !pTag->Memory )
while( !hb_fsLock( pTag->Owner->DiskFile, NTX_LOCK_OFFSET, 1, FL_LOCK ) );
pTag->stackLevel = 0;
if( hb_ntxInTopScope( pTag, pTag->CurKeyInfo->key ) &&
hb_ntxInBottomScope( pTag, pTag->CurKeyInfo->key ) &&
!hb_ntxTagFindCurrentKey( pTag, hb_ntxPageLoad( pTag,0 ), pKey, (int)pTag->KeyLength, FALSE, FALSE ) )
{
LPPAGEINFO pPage = hb_ntxPageLoad( pTag,pTag->CurKeyInfo->Tag );
pPage->CurKey = hb_ntxPageFindCurrentKey( pPage,pTag->CurKeyInfo->Xtra ) - 1;
pTag->stackLevel = 0;
hb_ntxPageKeyDel( pTag, pPage, pPage->CurKey, 1 );
if( pTag->stack[0].ikey < 0 )
hb_ntxTagBalance( pTag,0 );
@@ -3308,6 +3315,7 @@ static ERRCODE ntxGoCold( NTXAREAP pArea )
{
LPKEYINFO pKeyOld = hb_ntxKeyNew( pTag->CurKeyInfo,pTag->KeyLength );
pTag->stackLevel = 0;
if( hb_ntxTagFindCurrentKey( pTag, hb_ntxPageLoad( pTag,0 ), pKeyOld, (int)pTag->KeyLength, FALSE, FALSE ) )
{
printf( "\n\rntxGoCold: Cannot find current key:" );
@@ -3316,6 +3324,7 @@ static ERRCODE ntxGoCold( NTXAREAP pArea )
}
pPage = hb_ntxPageLoad( pTag,pTag->CurKeyInfo->Tag );
pPage->CurKey = hb_ntxPageFindCurrentKey( pPage,pTag->CurKeyInfo->Xtra ) - 1;
pTag->stackLevel = 0;
hb_ntxPageKeyDel( pTag, pPage, pPage->CurKey, 1 );
if( pTag->stack[0].ikey < 0 )
hb_ntxTagBalance( pTag,0 );