From bbb458dbb4c64e9fc6070c42d2baa3b31c4c872c Mon Sep 17 00:00:00 2001 From: Erik Zhang Date: Tue, 2 Feb 2021 18:59:24 +0800 Subject: [PATCH] onNEP[*]Payment (#2287) --- src/neo/SmartContract/Native/FungibleToken.cs | 4 ++-- src/neo/SmartContract/Native/NonfungibleToken.cs | 3 +++ 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/src/neo/SmartContract/Native/FungibleToken.cs b/src/neo/SmartContract/Native/FungibleToken.cs index fa0e9d446a..30f931c2c1 100644 --- a/src/neo/SmartContract/Native/FungibleToken.cs +++ b/src/neo/SmartContract/Native/FungibleToken.cs @@ -161,9 +161,9 @@ private void PostTransfer(ApplicationEngine engine, UInt160 from, UInt160 to, Bi if (!callOnPayment || to is null || ContractManagement.GetContract(engine.Snapshot, to) is null) return; - // Call onPayment method (NEP-17) + // Call onNEP17Payment method - engine.CallFromNativeContract(Hash, to, "onPayment", from?.ToArray() ?? StackItem.Null, amount, data); + engine.CallFromNativeContract(Hash, to, "onNEP17Payment", from?.ToArray() ?? StackItem.Null, amount, data); } } } diff --git a/src/neo/SmartContract/Native/NonfungibleToken.cs b/src/neo/SmartContract/Native/NonfungibleToken.cs index fb1a560b67..33f039cf1b 100644 --- a/src/neo/SmartContract/Native/NonfungibleToken.cs +++ b/src/neo/SmartContract/Native/NonfungibleToken.cs @@ -172,6 +172,9 @@ private void PostTransfer(ApplicationEngine engine, UInt160 from, UInt160 to, by { engine.SendNotification(Hash, "Transfer", new Array { from?.ToArray() ?? StackItem.Null, to?.ToArray() ?? StackItem.Null, 1, tokenId }); + + if (to is not null && ContractManagement.GetContract(engine.Snapshot, to) is not null) + engine.CallFromNativeContract(Hash, to, "onNEP11Payment", from?.ToArray() ?? StackItem.Null, 1, tokenId); } class NFTAccountState : AccountState