refactor: 0 error

Signed-off-by: MiaoWoo <admin@yumc.pw>
This commit is contained in:
2019-07-10 15:59:04 +08:00
parent cbc0ed72c4
commit 4527e437fa
39 changed files with 1802 additions and 1695 deletions

View File

@@ -74,7 +74,7 @@ global.FORMAT_ACCOUNT_HASH = "{\
BlockNum:uint,\
AccHash:buffer32,\
}";
global.FORMAT_ACCOUNT_HASH3 = "{\
global.global.FORMAT_ACCOUNT_HASH3 = "{\
Type:byte,\
BlockNum:uint,\
AccHash:buffer32,\
@@ -144,22 +144,23 @@ class MerkleDBRow extends DBRow {
};
class AccountApp extends require("./dapp")
{
private CreateTrCount
private FORMAT_ACCOUNT_ROW
private SIZE_ACCOUNT_ROW
private DBState
private FORMAT_ACCOUNT_ROW_REST
private SIZE_ACCOUNT_ROW_REST
private DBRest
private DBAct
private DBActPrev
private FORMAT_STATE_HISTORY
private DBStateHistory
private HistoryFormatArr
private DBStateTX
private DBAccountsHash
private WasCheckRestDB
private ResultTx
CreateTrCount
FORMAT_ACCOUNT_ROW
SIZE_ACCOUNT_ROW
DBState
FORMAT_ACCOUNT_ROW_REST
SIZE_ACCOUNT_ROW_REST
DBRest
DBAct
DBActPrev
FORMAT_STATE_HISTORY
DBStateHistory
HistoryFormatArr
DBStateTX
DBAccountsHash
WasCheckRestDB
ResultTx
DBChanges
constructor() {
super()
var bReadOnly = (global.PROCESS_NAME !== "TX");
@@ -205,7 +206,7 @@ class AccountApp extends require("./dapp")
Start(bClean?) {
if (global.LOCAL_RUN)
bClean = 1
if (!bClean && this.DBState.GetMaxNum() + 1 >= global.global.BLOCK_PROCESSING_LENGTH2)
if (!bClean && this.DBState.GetMaxNum() + 1 >= global.BLOCK_PROCESSING_LENGTH2)
return;
this.DBState.MerkleTree = undefined
this.DBState.Truncate(- 1)
@@ -267,7 +268,7 @@ class AccountApp extends require("./dapp")
}
global.ToLog("******************************FINISH FillRestDB")
}
_DBStateWrite(Data?, BlockNum?) {
_DBStateWrite(Data?, BlockNum?, b?) {
this.CheckRestDB()
this.DBState.Write(Data)
if (Data.Num === undefined)
@@ -330,7 +331,7 @@ class AccountApp extends require("./dapp")
return Num;
}
case TYPE_TRANSACTION_TRANSFER:
var Num = ReadUintFromArr(Body, 1 + 1 + 6);
var Num = global.ReadUintFromArr(Body, 1 + 1 + 6);
return Num;
}
}
@@ -400,10 +401,13 @@ class AccountApp extends require("./dapp")
case global.TYPE_TRANSACTION_ACC_HASH:
{
Result = 1
if (global.LOCAL_RUN || global.TEST_NETWORK);
else
if (BlockNum < global.START_BLOCK_ACCOUNT_HASH + 200000)
if (global.LOCAL_RUN || global.TEST_NETWORK) {
}
else {
if (BlockNum < global.global.START_BLOCK_ACCOUNT_HASH + 200000)
break;
}
var BlockNumHash = BlockNum - global.DELTA_BLOCK_ACCOUNT_HASH;
if (!this.TRCheckAccountHash(Body, BlockNum, TrNum)) {
Result = "BAD ACCOUNT HASH"
@@ -426,7 +430,7 @@ class AccountApp extends require("./dapp")
var SysBalance = SysData.Value.SumCOIN;
const REF_PERIOD_START = global.START_MINING;
const REF_PERIOD_END = 30 * 1000 * 1000;
var AccountID = ReadUintFromArr(Block.AddrHash, 0);
var AccountID = global.ReadUintFromArr(Block.AddrHash, 0);
if (AccountID < 8)
return;
var Data = this.ReadStateTR(AccountID);
@@ -444,29 +448,29 @@ class AccountApp extends require("./dapp")
}
}
else {
var Power = GetPowPower(Block.PowHash);
var Power = global.GetPowPower(Block.PowHash);
if (Block.BlockNum >= global.NEW_BLOCK_REWARD1)
Power = 43
Sum = Power * Power * SysBalance / global.TOTAL_SUPPLY_TERA / 100
}
var CoinTotal = { SumCOIN: 0, SumCENT: 0 };
var CoinSum = COIN_FROM_FLOAT(Sum);
if (!ISZERO(CoinSum)) {
var CoinSum = global.COIN_FROM_FLOAT(Sum);
if (!global.ISZERO(CoinSum)) {
if (Data.Adviser >= 8 && Block.BlockNum < REF_PERIOD_END) {
var RefData = this.ReadStateTR(Data.Adviser);
if (RefData && RefData.BlockNumCreate < Block.BlockNum - REF_PERIOD_MINING) {
if (RefData && RefData.BlockNumCreate < Block.BlockNum - global.REF_PERIOD_MINING) {
var K = (REF_PERIOD_END - Block.BlockNum) / (REF_PERIOD_END - REF_PERIOD_START);
var CoinAdv = COIN_FROM_FLOAT(Sum * K);
var CoinAdv = global.COIN_FROM_FLOAT(Sum * K);
this.SendMoneyTR(Block, 0, Data.Adviser, CoinAdv, Block.BlockNum, 0xFFFF, "", "Adviser coin base [" + AccountID + "]", 1)
ADD(CoinTotal, CoinAdv)
ADD(CoinSum, CoinAdv)
global.ADD(CoinTotal, CoinAdv)
global.ADD(CoinSum, CoinAdv)
}
}
this.SendMoneyTR(Block, 0, AccountID, CoinSum, Block.BlockNum, 0xFFFF, "", "Coin base", 1)
ADD(CoinTotal, CoinSum)
var CoinDevelop = CopyObjValue(CoinTotal);
DIV(CoinDevelop, 100)
if (!ISZERO(CoinDevelop))
global.ADD(CoinTotal, CoinSum)
var CoinDevelop = global.CopyObjValue(CoinTotal);
global.DIV(CoinDevelop, 100)
if (!global.ISZERO(CoinDevelop))
this.SendMoneyTR(Block, 0, 9, CoinDevelop, Block.BlockNum, 0xFFFF, "", "Developers support", 1)
}
}
@@ -492,22 +496,22 @@ class AccountApp extends require("./dapp")
}
case TYPE_DEPRECATED_TRANSFER1:
{
format = FORMAT_MONEY_TRANSFER
format = global.FORMAT_MONEY_TRANSFER
break;
}
case TYPE_DEPRECATED_TRANSFER2:
{
format = FORMAT_MONEY_TRANSFER2
format = global.FORMAT_MONEY_TRANSFER2
break;
}
case TYPE_TRANSACTION_TRANSFER:
{
format = FORMAT_MONEY_TRANSFER3
format = global.FORMAT_MONEY_TRANSFER3
break;
}
case TYPE_TRANSACTION_ACC_HASH:
case global.TYPE_TRANSACTION_ACC_HASH:
{
format = FORMAT_ACCOUNT_HASH3
format = global.global.FORMAT_ACCOUNT_HASH3
break;
}
default:
@@ -526,30 +530,30 @@ class AccountApp extends require("./dapp")
if (!TR)
return "";
if (TR.Body && TR.Body.length) {
var App = DAppByType[TR.Body[0]];
var App = global.DAppByType[TR.Body[0]];
if (App) {
TR.Body = JSON.parse(App.GetScriptTransaction(TR.Body))
}
}
ConvertBufferToStr(TR)
return JSON.stringify(TR, "", 2);
global.ConvertBufferToStr(TR)
return JSON.stringify(TR, undefined, 2);
}
TRCheckAccountHash(Body, BlockNum, TrNum) {
if (BlockNum % PERIOD_ACCOUNT_HASH !== 0)
if (BlockNum % global.PERIOD_ACCOUNT_HASH !== 0)
return 1;
try {
var TR = global.BufLib.GetObjectFromBuffer(Body, FORMAT_ACCOUNT_HASH3, {});
var TR = global.BufLib.GetObjectFromBuffer(Body, global.FORMAT_ACCOUNT_HASH3, {});
}
catch (e) {
return 0;
}
if (BlockNum < START_BLOCK_ACCOUNT_HASH + 200000)
if (BlockNum < global.START_BLOCK_ACCOUNT_HASH + 200000)
return 1;
var Item = this.GetAccountHashItem(TR.BlockNum);
if (Item && Item.BlockNum === TR.BlockNum) {
if (CompareArr(Item.AccHash, TR.AccHash) === 0) {
if (TR.BlockNum >= START_BLOCK_ACCOUNT_HASH3) {
if (CompareArr(Item.SmartHash, TR.SmartHash) === 0 && Item.AccountMax === TR.AccountMax && Item.SmartCount === TR.SmartCount) {
if (global.CompareArr(Item.AccHash, TR.AccHash) === 0) {
if (TR.BlockNum >= global.START_BLOCK_ACCOUNT_HASH3) {
if (global.CompareArr(Item.SmartHash, TR.SmartHash) === 0 && Item.AccountMax === TR.AccountMax && Item.SmartCount === TR.SmartCount) {
return 1;
}
else
@@ -568,7 +572,7 @@ class AccountApp extends require("./dapp")
return "Error length transaction";
var CheckMinPower = 1;
if (BlockNum >= 7000000 || global.LOCAL_RUN || global.TEST_NETWORK) {
if (ContextFrom && ContextFrom.To.length === 1 && ContextFrom.To[0].ID === 0 && ContextFrom.To[0].SumCOIN >= PRICE_DAO(BlockNum).NewAccount) {
if (ContextFrom && ContextFrom.To.length === 1 && ContextFrom.To[0].ID === 0 && ContextFrom.To[0].SumCOIN >= global.PRICE_DAO(BlockNum).NewAccount) {
CheckMinPower = 0
}
else {
@@ -581,12 +585,12 @@ class AccountApp extends require("./dapp")
this.CreateTrCount++
var power;
if (BlockNum >= global.BLOCKNUM_TICKET_ALGO) {
var Tr = { body: Body };
var Tr: any = { body: Body };
global.SERVER.CheckCreateTransactionObject(Tr)
power = Tr.power
}
else {
power = GetPowPower(shaarr(Body))
power = global.GetPowPower(shaarr(Body))
}
if (global.TEST_NETWORK && BlockNum >= 3290000) {
CheckMinPower = 0
@@ -604,7 +608,7 @@ class AccountApp extends require("./dapp")
return "Error min power POW for create account (update client)";
}
try {
var TR = global.BufLib.GetObjectFromBuffer(Body, global.global.FORMAT_CREATE, {});
var TR = global.BufLib.GetObjectFromBuffer(Body, global.FORMAT_CREATE, {});
}
catch (e) {
return "Error transaction format";
@@ -620,7 +624,7 @@ class AccountApp extends require("./dapp")
Account.Adviser = TR.Adviser
Account.Value.Smart = TR.Smart
this.WriteStateTR(Account, TrNum)
if (CompareArr(Account.PubKey, global.WALLET.PubKeyArr) === 0) {
if (global.CompareArr(Account.PubKey, global.WALLET.PubKeyArr) === 0) {
global.WALLET.OnCreateAccount(Account)
}
this.ResultTx = Account.Num
@@ -677,7 +681,7 @@ class AccountApp extends require("./dapp")
MapItem[Item.ID] = 1
}
bWas = 1
ADD(TotalSum, Item)
global.ADD(TotalSum, Item)
}
if (!bWas && TR.Version < 3)
return "No significant recipients";
@@ -711,7 +715,7 @@ class AccountApp extends require("./dapp")
return "Error - smart accounts can not be used in a multiple transaction";
}
if (TR.Version === 3 && Item.ID === 0 && Item.PubKey && Item.PubKey.length === 33) {
if (Item.SumCOIN < PRICE_DAO(BlockNum).NewAccount)
if (Item.SumCOIN < global.PRICE_DAO(BlockNum).NewAccount)
return "Not enough money for create account with index: " + i;
var name = TR.Description;
var index = name.indexOf("\n");
@@ -725,7 +729,7 @@ class AccountApp extends require("./dapp")
Item.ID = Account.Num
this.SendMoneyTR(Block, Data.Num, Account.Num, { SumCOIN: Item.SumCOIN, SumCENT: Item.SumCENT }, BlockNum, TrNum, TR.Description,
TR.Description, 1)
this.SendMoneyTR(Block, Account.Num, 0, { SumCOIN: PRICE_DAO(BlockNum).NewAccount, SumCENT: 0 }, BlockNum, TrNum, "Fee for create account",
this.SendMoneyTR(Block, Account.Num, 0, { SumCOIN: global.PRICE_DAO(BlockNum).NewAccount, SumCENT: 0 }, BlockNum, TrNum, "Fee for create account",
"", 1)
}
else {
@@ -765,11 +769,11 @@ class AccountApp extends require("./dapp")
return "Error sign transaction";
}
if (TR.Body && TR.Body.length) {
var App = DAppByType[TR.Body[0]];
var App = global.DAppByType[TR.Body[0]];
if (App) {
TR.FromPubKey = Data.PubKey
var Result = App.OnWriteTransaction(Block, TR.Body, BlockNum, TrNum, TR);
if (Result !== true)
Result = App.OnWriteTransaction(Block, TR.Body, BlockNum, TrNum, TR);
if (Result as any !== true)
return Result;
}
}
@@ -804,7 +808,7 @@ class AccountApp extends require("./dapp")
}
this.DeleteActOneDB(this.DBAct, BlockNumFrom)
this.DeleteActOneDB(this.DBActPrev, BlockNumFrom)
this.DBAccountsHash.Truncate(Math.trunc(BlockNumFrom / PERIOD_ACCOUNT_HASH))
this.DBAccountsHash.Truncate(Math.trunc(BlockNumFrom / global.PERIOD_ACCOUNT_HASH))
}
DeleteActOneDB(DBAct, BlockNum) {
var MaxNum = DBAct.GetMaxNum();
@@ -813,7 +817,7 @@ class AccountApp extends require("./dapp")
for (var num = MaxNum; num >= 0; num--) {
var ItemCheck = DBAct.Read(num);
if (!ItemCheck) {
ToLogTrace("!ItemCheck")
global.ToLogTrace("!ItemCheck")
throw "ERRR DeleteActOneDB";
}
if (ItemCheck.BlockNum < BlockNum) {
@@ -882,7 +886,7 @@ class AccountApp extends require("./dapp")
if (!Data)
break;
for (var i = 0; i < PubKeyArr.length; i++)
if (CompareArr(Data.PubKey, PubKeyArr[i]) === 0) {
if (global.CompareArr(Data.PubKey, PubKeyArr[i]) === 0) {
map[Data.Num] = i
Count++
}
@@ -899,7 +903,7 @@ class AccountApp extends require("./dapp")
Data.PubKeyStr = global.GetHexFromArr(Data.PubKey)
arr.push(Data)
Data.WN = map[key]
Data.Name = NormalizeName(Data.Name)
Data.Name = global.NormalizeName(Data.Name)
if (Data.Currency)
Data.CurrencyObj = global.DApps.Smart.ReadSimple(Data.Currency)
if (Data.Value.Smart) {
@@ -925,7 +929,7 @@ class AccountApp extends require("./dapp")
if (Filter.substring(0, 1) === "=") {
Filter = Filter.substring(1)
try {
F = CreateEval(Filter, "Cur,Currency,ID,Operation,Amount,Adviser,Name,PubKey,Smart,BlockNum")
F = global.CreateEval(Filter, "Cur,Currency,ID,Operation,Amount,Adviser,Name,PubKey,Smart,BlockNum")
}
catch (e) {
F = undefined
@@ -946,13 +950,13 @@ class AccountApp extends require("./dapp")
break;
if (!Data.PubKeyStr)
Data.PubKeyStr = global.GetHexFromArr(Data.PubKey)
Data.Name = NormalizeName(Data.Name)
Data.Name = global.NormalizeName(Data.Name)
if (F) {
var Cur = Data.Currency;
var Currency = Data.Currency;
var ID = Data.Num;
var Operation = Data.Value.OperationID;
var Amount = FLOAT_FROM_COIN(Data.Value);
var Amount = global.FLOAT_FROM_COIN(Data.Value);
var Adviser = Data.Adviser;
var Name = Data.Name;
var PubKey = global.GetHexFromArr(Data.PubKey);
@@ -969,7 +973,7 @@ class AccountApp extends require("./dapp")
}
else
if (Filter) {
var Amount = FLOAT_FROM_COIN(Data.Value);
var Amount = global.FLOAT_FROM_COIN(Data.Value);
var PubKey = global.GetHexFromArr(Data.PubKey);
var Str = "" + Data.Num + " " + Data.Value.OperationID + " " + Data.Name.toUpperCase() + " " + Data.Adviser + " " + Amount + " " + PubKey + " " + Smart + " " + Data.BlockNumCreate;
if (Str.indexOf(Filter) < 0)
@@ -1037,7 +1041,7 @@ class AccountApp extends require("./dapp")
return arr;
}
GetHashOrUndefined(BlockNum) {
if (BlockNum % PERIOD_ACCOUNT_HASH !== 0)
if (BlockNum % global.PERIOD_ACCOUNT_HASH !== 0)
return undefined;
var Item = this.GetAccountHashItem(BlockNum);
if (Item)
@@ -1046,7 +1050,7 @@ class AccountApp extends require("./dapp")
return undefined;
}
GetAccountHashItem(BlockNum) {
var Item = this.DBAccountsHash.Read(Math.trunc(BlockNum / PERIOD_ACCOUNT_HASH));
var Item = this.DBAccountsHash.Read(Math.trunc(BlockNum / global.PERIOD_ACCOUNT_HASH));
return Item;
}
GetHashedMaxBlockNum() {
@@ -1059,7 +1063,7 @@ class AccountApp extends require("./dapp")
return 0;
}
CalcHash(Block, BlockMaxAccount) {
if (Block.BlockNum % PERIOD_ACCOUNT_HASH !== 0)
if (Block.BlockNum % global.PERIOD_ACCOUNT_HASH !== 0)
return;
if (this.DBState.WasUpdate) {
this.CalcMerkleTree()
@@ -1075,14 +1079,14 @@ class AccountApp extends require("./dapp")
SmartHash = []
}
var Data = {
Num: Block.BlockNum / PERIOD_ACCOUNT_HASH, BlockNum: Block.BlockNum, AccHash: Hash, SumHash: Block.SumHash, AccountMax: BlockMaxAccount,
Num: Block.BlockNum / global.PERIOD_ACCOUNT_HASH, BlockNum: Block.BlockNum, AccHash: Hash, SumHash: Block.SumHash, AccountMax: BlockMaxAccount,
SmartHash: SmartHash, SmartCount: SmartCount
};
this.DBAccountsHash.Write(Data)
this.DBAccountsHash.Truncate(Block.BlockNum / PERIOD_ACCOUNT_HASH)
this.DBAccountsHash.Truncate(Block.BlockNum / global.PERIOD_ACCOUNT_HASH)
return Data;
}
CalcMerkleTree(bForce) {
CalcMerkleTree(bForce?) {
this.DBState.MerkleHash = this.DBState.CalcMerkleTree(bForce)
this.DBState.WasUpdate = 0
}
@@ -1124,7 +1128,7 @@ class AccountApp extends require("./dapp")
}
var arr = [];
for (var key in DBChanges.BlockMap) {
key = ParseNum(key)
key = global.ParseNum(key)
var Data = DBChanges.BlockMap[key];
if (Data.Changed) {
arr.push(Data)
@@ -1170,7 +1174,7 @@ class AccountApp extends require("./dapp")
return false;
DBChanges.BlockMaxAccount = DBChanges.TRMaxAccount
for (var key in DBChanges.TRMap) {
key = ParseNum(key)
key = global.ParseNum(key)
var Data = DBChanges.TRMap[key];
if (Data.Changed) {
DBChanges.BlockMap[key] = Data
@@ -1213,7 +1217,7 @@ class AccountApp extends require("./dapp")
return Data;
}
ReadStateTR(Num) {
Num = ParseNum(Num)
Num = global.ParseNum(Num)
var TRMap = this.DBChanges.TRMap;
var Data = TRMap[Num];
if (!Data) {
@@ -1239,7 +1243,7 @@ class AccountApp extends require("./dapp")
Data = {
Num: Num, Currency: BData.Currency, PubKey: BData.PubKey, Name: BData.Name, BlockNumCreate: BData.BlockNumCreate, Adviser: BData.Adviser,
Value: {
SumCOIN: Value.SumCOIN, SumCENT: Value.SumCENT, OperationID: Value.OperationID, Smart: Value.Smart, Data: CopyArr(Value.Data),
SumCOIN: Value.SumCOIN, SumCENT: Value.SumCENT, OperationID: Value.OperationID, Smart: Value.Smart, Data: global.CopyArr(Value.Data),
NextPos: Value.NextPos
}, BackupValue: BData.BackupValue
}
@@ -1252,8 +1256,8 @@ class AccountApp extends require("./dapp")
Data.ChangeTrNum = TrNum
}
SendMoneyTR(Block, FromID, ToID, CoinSum, BlockNum, TrNum, DescriptionFrom, DescriptionTo, OperationCount) {
FromID = ParseNum(FromID)
ToID = ParseNum(ToID)
FromID = global.ParseNum(FromID)
ToID = global.ParseNum(ToID)
if (CoinSum.SumCENT >= 1e9) {
throw "ERROR SumCENT>=1e9";
}
@@ -1261,7 +1265,7 @@ class AccountApp extends require("./dapp")
if (!FromData) {
throw "Send: Error account FromNum: " + FromID;
}
if (!SUB(FromData.Value, CoinSum)) {
if (!global.SUB(FromData.Value, CoinSum)) {
throw "Not enough money on the account ID:" + FromID;
}
this.WriteStateTR(FromData, TrNum)
@@ -1276,7 +1280,7 @@ class AccountApp extends require("./dapp")
if (!ToData) {
throw "Send: Error account ToNum: " + ToID;
}
ADD(ToData.Value, CoinSum)
global.ADD(ToData.Value, CoinSum)
this.WriteStateTR(ToData, TrNum)
if (ToID > 15) {
this.DBChanges.TRHistory.push({
@@ -1288,11 +1292,11 @@ class AccountApp extends require("./dapp")
FromData.Value.OperationID += OperationCount
if (FromData.Value.Smart) {
var Context = { FromID: FromID, ToID: ToID, Description: DescriptionFrom, Value: CoinSum };
RunSmartMethod(Block, FromData.Value.Smart, FromData, BlockNum, TrNum, Context, "OnSend")
global.RunSmartMethod(Block, FromData.Value.Smart, FromData, BlockNum, TrNum, Context, "OnSend")
}
if (ToData.Value.Smart) {
var Context = { FromID: FromID, ToID: ToID, Description: DescriptionTo, Value: CoinSum };
RunSmartMethod(Block, ToData.Value.Smart, ToData, BlockNum, TrNum, Context, "OnGet")
global.RunSmartMethod(Block, ToData.Value.Smart, ToData, BlockNum, TrNum, Context, "OnGet")
}
}
GetSignTransferTx(TR, PrivKey) {
@@ -1300,9 +1304,9 @@ class AccountApp extends require("./dapp")
if (TR.Version === 2 || TR.Version === 3) {
var format;
if (TR.Version === 2)
format = FORMAT_MONEY_TRANSFER_BODY2
format = global.FORMAT_MONEY_TRANSFER_BODY2
else
format = FORMAT_MONEY_TRANSFER_BODY3
format = global.FORMAT_MONEY_TRANSFER_BODY3
Arr = []
for (var i = 0; i < TR.To.length; i++) {
var Item = TR.To[i];
@@ -1313,14 +1317,14 @@ class AccountApp extends require("./dapp")
for (var j = 0; j < 33; j++)
Arr[Arr.length] = DataTo.PubKey[j]
}
var Body = global.BufLib.GetBufferFromObject(TR, format, MAX_TRANSACTION_SIZE, {});
var Body = global.BufLib.GetBufferFromObject(TR, format, global.MAX_TRANSACTION_SIZE, {});
for (var j = 0; j < Body.length; j++)
Arr[Arr.length] = Body[j]
}
else {
Arr = global.BufLib.GetBufferFromObject(TR, FORMAT_MONEY_TRANSFER_BODY, MAX_TRANSACTION_SIZE, {})
Arr = global.BufLib.GetBufferFromObject(TR, global.FORMAT_MONEY_TRANSFER_BODY, global.MAX_TRANSACTION_SIZE, {})
}
var sigObj = global.secp256k1.sign(SHA3BUF(Arr), Buffer.from(PrivKey));
var sigObj = global.secp256k1.sign(global.SHA3BUF(Arr), Buffer.from(PrivKey));
return sigObj.signature;
}
SaveHistory(Data) {
@@ -1332,7 +1336,7 @@ class AccountApp extends require("./dapp")
var BufWrite = global.BufLib.GetBufferFromObject(Data, this.HistoryFormatArr[Data.Type], 100, WorkStructHistory);
var written = fs.writeSync(FD, BufWrite, 0, BufWrite.length, Position);
if (written !== BufWrite.length) {
TO_ERROR_LOG("DB-HISTORY", 10, "Error write to file:" + written + " <> " + BufWrite.length)
global.TO_ERROR_LOG("DB-HISTORY", 10, "Error write to file:" + written + " <> " + BufWrite.length)
throw "Error write to FILE_NAME_HISTORY";
return false;
}
@@ -1389,20 +1393,20 @@ class AccountApp extends require("./dapp")
if (!Data)
break;
if (Data.Currency === Currency) {
ADD(SumCoin, Data.Value)
global.ADD(SumCoin, Data.Value)
}
}
return FLOAT_FROM_COIN(SumCoin);
return global.FLOAT_FROM_COIN(SumCoin);
}
};
module.exports = AccountApp;
var App = new AccountApp;
DApps["Accounts"] = App;
DAppByType[TYPE_TRANSACTION_CREATE] = App;
DAppByType[TYPE_DEPRECATED_TRANSFER1] = App;
DAppByType[TYPE_DEPRECATED_TRANSFER2] = App;
DAppByType[TYPE_TRANSACTION_TRANSFER] = App;
DAppByType[TYPE_TRANSACTION_ACC_HASH] = App;
global.DApps["Accounts"] = App;
global.DAppByType[global.TYPE_TRANSACTION_CREATE] = App;
global.DAppByType[TYPE_DEPRECATED_TRANSFER1] = App;
global.DAppByType[TYPE_DEPRECATED_TRANSFER2] = App;
global.DAppByType[TYPE_TRANSACTION_TRANSFER] = App;
global.DAppByType[global.TYPE_TRANSACTION_ACC_HASH] = App;
function TestStateFiles(Size, Format) {
return;