|
@@ -432,14 +432,14 @@ begin
|
|
|
|
|
|
if Length(FUpdateBuffer) > 0 then
|
|
if Length(FUpdateBuffer) > 0 then
|
|
begin
|
|
begin
|
|
- r := 0;
|
|
|
|
- while r < Length(FUpdateBuffer) do with FUpdateBuffer[r] do
|
|
|
|
|
|
+ r := Length(FUpdateBuffer) -1;
|
|
|
|
+ while r > -1 do with FUpdateBuffer[r] do
|
|
begin
|
|
begin
|
|
if assigned(FUpdateBuffer[r].BookmarkData) then
|
|
if assigned(FUpdateBuffer[r].BookmarkData) then
|
|
begin
|
|
begin
|
|
if UpdateKind = ukModify then
|
|
if UpdateKind = ukModify then
|
|
begin
|
|
begin
|
|
- move(FUpdateBuffer[FCurrentUpdateBuffer].OldValuesBuffer^,BookmarkData^,RecordSize+sizeof(TBufRecLinkItem));
|
|
|
|
|
|
+ move(pchar(OldValuesBuffer+sizeof(TBufRecLinkItem))^,pchar(BookmarkData+sizeof(TBufRecLinkItem))^,RecordSize);
|
|
FreeRecordBuffer(OldValuesBuffer);
|
|
FreeRecordBuffer(OldValuesBuffer);
|
|
end
|
|
end
|
|
else if UpdateKind = ukDelete then
|
|
else if UpdateKind = ukDelete then
|
|
@@ -464,7 +464,7 @@ begin
|
|
dec(FBRecordCount);
|
|
dec(FBRecordCount);
|
|
end;
|
|
end;
|
|
end;
|
|
end;
|
|
- inc(r);
|
|
|
|
|
|
+ dec(r)
|
|
end;
|
|
end;
|
|
|
|
|
|
SetLength(FUpdateBuffer,0);
|
|
SetLength(FUpdateBuffer,0);
|