From 1df10c5463d9f26664fab8775c02032b0cf1224a Mon Sep 17 00:00:00 2001 From: angelo Date: Thu, 8 Feb 1996 17:53:36 +0000 Subject: [PATCH] Aggiunto controllo sulla scrittura dei memo in ::write, ::delete, ::rewriteat e ::rewrite. Il controllo aggiunto riguarda il test di _lasterr, per evitare CHECK Maialeschi. git-svn-id: svn://10.65.10.50/trunk@2584 c028cbd2-c16b-5b4b-a496-9718f37d4682 --- include/isam.cpp | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/include/isam.cpp b/include/isam.cpp index ebc33ea2a..3a08e9ecf 100755 --- a/include/isam.cpp +++ b/include/isam.cpp @@ -940,7 +940,7 @@ int TBaseisamfile::write(TDate& atdate) if (_lasterr != NOERR) _lasterr = get_error(_lasterr); setkey(oldkey); _recno = _isamfile->RecNo = DB_recno(_isamfile->fhnd); - if( has_memo( ) ) + if( _lasterr == NOERR && has_memo( ) ) { curr( ).memo_info( ).recno( _recno ); curr( ).write_memo_info( _isamfile); @@ -964,7 +964,7 @@ int TBaseisamfile::write(const TRectype& rec, TDate& atdate) if (_lasterr != NOERR) _lasterr = get_error(_lasterr); setkey(oldkey); _recno = _isamfile->RecNo = DB_recno(_isamfile->fhnd); - if (_lasterr != NOERR ) + if (_lasterr == NOERR ) { if( has_memo( ) ) { @@ -992,7 +992,7 @@ int TBaseisamfile::rewrite(TDate& atdate) _lasterr = DB_rewrite(_isamfile->fhnd); if (_lasterr != NOERR) _lasterr = get_error(_lasterr); _recno = _isamfile->RecNo = DB_recno(_isamfile->fhnd); - if( has_memo( ) ) + if( _lasterr == NOERR && has_memo( ) ) { curr( ).memo_info( ).recno( _recno ); curr( ).write_memo_info( _isamfile ); @@ -1017,7 +1017,7 @@ int TBaseisamfile::rewrite(const TRectype& rec, TDate& atdate) _lasterr = DB_rewrite(_isamfile->fhnd); if (_lasterr != NOERR) _lasterr = get_error(_lasterr); _recno = _isamfile->RecNo = DB_recno(_isamfile->fhnd); - if( has_memo( ) ) + if( _lasterr == NOERR && has_memo( ) ) { rec.memo_info( ).recno( _recno ); rec.write_memo_info( _isamfile ); @@ -1040,7 +1040,7 @@ int TBaseisamfile::rewriteat(TRecnotype nrec) } else _lasterr = get_error(_lasterr); _recno = _isamfile->RecNo = DB_recno(_isamfile->fhnd); - if( has_memo( ) ) + if( _lasterr == NOERR && has_memo( ) ) { curr( ).memo_info( ).recno( _recno ); curr( ).write_memo_info( _isamfile ); @@ -1061,7 +1061,7 @@ int TBaseisamfile::rewriteat(const TRectype& rec, TRecnotype nrec) } else _lasterr = get_error(_lasterr); _recno = _isamfile->RecNo = DB_recno(_isamfile->fhnd); - if( has_memo( ) ) + if( _lasterr == NOERR && has_memo( ) ) { rec.memo_info( ).recno( _recno ); rec.write_memo_info( _isamfile ); @@ -1111,7 +1111,7 @@ int TBaseisamfile::remove(TDate& atdate) } } } - if(has_memo()) + if(_lasterr == NOERR && has_memo()) curr().memo_info().recno(RECORD_NON_FISICO); _recno = _isamfile->RecNo = DB_recno(_isamfile->fhnd); @@ -1141,7 +1141,7 @@ int TBaseisamfile::remove(const TRectype& rec, TDate& atdate) } } - if(has_memo()) + if(_lasterr == NOERR && has_memo()) curr().memo_info().recno(RECORD_NON_FISICO); _recno = _isamfile->RecNo = DB_recno(_isamfile->fhnd);