|
@@ -389,6 +389,7 @@ Type
|
|
FReadOnly: Boolean;
|
|
FReadOnly: Boolean;
|
|
procedure SetBank(const Value: TPCBank);
|
|
procedure SetBank(const Value: TPCBank);
|
|
protected
|
|
protected
|
|
|
|
+ FIsMovingBlockchain : Boolean;
|
|
procedure SetOrphan(const Value: TOrphan); virtual;
|
|
procedure SetOrphan(const Value: TOrphan); virtual;
|
|
procedure SetReadOnly(const Value: Boolean); virtual;
|
|
procedure SetReadOnly(const Value: Boolean); virtual;
|
|
Function DoLoadBlockChain(Operations : TPCOperationsComp; Block : Cardinal) : Boolean; virtual; abstract;
|
|
Function DoLoadBlockChain(Operations : TPCOperationsComp; Block : Cardinal) : Boolean; virtual; abstract;
|
|
@@ -2150,6 +2151,7 @@ begin
|
|
inherited;
|
|
inherited;
|
|
FOrphan := '';
|
|
FOrphan := '';
|
|
FReadOnly := false;
|
|
FReadOnly := false;
|
|
|
|
+ FIsMovingBlockchain := False;
|
|
end;
|
|
end;
|
|
|
|
|
|
procedure TStorage.DeleteBlockChainBlocks(StartingDeleteBlock: Cardinal);
|
|
procedure TStorage.DeleteBlockChainBlocks(StartingDeleteBlock: Cardinal);
|
|
@@ -2206,6 +2208,7 @@ end;
|
|
function TStorage.SaveBank: Boolean;
|
|
function TStorage.SaveBank: Boolean;
|
|
begin
|
|
begin
|
|
Result := true;
|
|
Result := true;
|
|
|
|
+ If FIsMovingBlockchain then Exit;
|
|
if Not TPCSafeBox.MustSafeBoxBeSaved(Bank.BlocksCount) then exit; // No save
|
|
if Not TPCSafeBox.MustSafeBoxBeSaved(Bank.BlocksCount) then exit; // No save
|
|
Try
|
|
Try
|
|
Result := DoSaveBank;
|
|
Result := DoSaveBank;
|