-
Notifications
You must be signed in to change notification settings - Fork 1k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
when deserialize for Map, value is re-serialized #1714
Comments
cloud8little
changed the title
when deserialize for Map, value should not re-serialize
when deserialize for Map, value is re-serialized
Jun 19, 2020
L54 is in |
The issue is in L155. |
shargon
added a commit
that referenced
this issue
Jul 22, 2020
* Allow call from native contract (#1700) * Fix MethodCallback (#1723) * Fix #1714 (#1715) * Add base64 SYSCALLs (#1717) * Neo.VM.3.0.0-CI00230 (#1725) * Allow to iterate buffer (#1726) * Buffer iterator * Rename * Remove using Co-authored-by: Erik Zhang <erik@neo.org> * Update StorageContext.cs (#1728) StorageContext needs to be public so it can be accessed by Neo Debugger Co-authored-by: Erik Zhang <erik@neo.org> * Fix return value check (#1730) Co-authored-by: Shargon <shargon@gmail.com> * Fix ContractEventDescriptor (#1733) * fix enumerator (#1744) Co-authored-by: Tommo-L <luchuan@neo.org> * Change json fields to all lower case for consistency (#1736) * Replace DataCache.Find by DataCache.Seek (#1740) * replace DataCache.Find by DataCache.Seek * fix order * optimize * Update ByteArrayComparer.cs * Update ByteArrayComparer.cs * Update DataCache.cs * fix comments * fix comments * fix comments * Update DataCache.cs * Update DataCache.cs * Reorder methods Co-authored-by: Tommo-L <luchuan@neo.org> Co-authored-by: erikzhang <erik@neo.org> Co-authored-by: Shargon <shargon@gmail.com> * Add MaxVerificationGas (#1745) Co-authored-by: Shargon <shargon@gmail.com> * Create KeyBuilder (#1748) * Speed up the initialization of ApplicationEngine. (#1749) * Change nef checksum to double SHA256 (#1751) * Change to double SHA256 * Clean code * Revert change * Clean code * Fix checksum * Update NefFile.cs * Fix compile * Clean code Clean code Fix checksum Update NefFile.cs Fix compile * Optimize * Optimize * Fix Co-authored-by: erikzhang <erik@neo.org> * Check witnesses on isStandard (#1754) * Check witness on isStandard * Add IsDeployed * Add IsPayable * Fix UT * format * Add coverage * Remove IsPayable, IsDeployed * Move NEP10 to manifest (#1729) * NEP10 abi * To lower case * Move to Manifest * Clean code * Update ContractManifest.cs * Update ContractManifest.cs * Fix native contracts Co-authored-by: Erik Zhang <erik@neo.org> * Capture fault Exception (#1761) * Capture faultException * Update Wallet error * Remove flag check * Clean code * Sender from signers (#1752) * Sender from signers * Remove co- * Move signers outside attributes * Fix UT and remove Signers class * Fix UT * Add FeeOnly scope * Remove orderBy * Remove _signersCache * Fix Signers * Fix WitnessScope * Fix Sender * Update TransactionAttributeType.cs * Update Wallet.cs * Fix Wallet * Rename * Update Wallet.cs * Update Wallet.cs * Partial UT fix * More UT fixes * Fix Sender's WitnessScope * Fix Wallet * Fix UT * Explicit FeeOnly for DeployNativeContracts * Same order as serialization * Test FeeOnly * dotnet format * format Co-authored-by: Erik Zhang <erik@neo.org> * IApplicationEngineProvider (#1758) * Remove the lock from SendersFeeMonitor and rename it to TransactionVerificationContext (#1756) * Add EffectiveVoterTurnout (#1762) * Remove AllowedTriggers from SYSCALLs (#1755) * fix validatorscount (#1770) Co-authored-by: Tommo-L <luchuan@neo.org> * impl SeekInternal Co-authored-by: Erik Zhang <erik@neo.org> Co-authored-by: Shargon <shargon@gmail.com> Co-authored-by: Harry Pierson <harrypierson@hotmail.com> Co-authored-by: Luchuan <luchuan@ngd.neo.org> Co-authored-by: Tommo-L <luchuan@neo.org> Co-authored-by: joeqian <qianzhuo@ngd.neo.org>
shargon
added a commit
that referenced
this issue
Jul 23, 2020
* Allow call from native contract (#1700) * Fix MethodCallback (#1723) * Fix #1714 (#1715) * Add base64 SYSCALLs (#1717) * Neo.VM.3.0.0-CI00230 (#1725) * Allow to iterate buffer (#1726) * Buffer iterator * Rename * Remove using Co-authored-by: Erik Zhang <erik@neo.org> * Update StorageContext.cs (#1728) StorageContext needs to be public so it can be accessed by Neo Debugger Co-authored-by: Erik Zhang <erik@neo.org> * Fix return value check (#1730) Co-authored-by: Shargon <shargon@gmail.com> * Fix ContractEventDescriptor (#1733) * fix enumerator (#1744) Co-authored-by: Tommo-L <luchuan@neo.org> * Change json fields to all lower case for consistency (#1736) * Replace DataCache.Find by DataCache.Seek (#1740) * replace DataCache.Find by DataCache.Seek * fix order * optimize * Update ByteArrayComparer.cs * Update ByteArrayComparer.cs * Update DataCache.cs * fix comments * fix comments * fix comments * Update DataCache.cs * Update DataCache.cs * Reorder methods Co-authored-by: Tommo-L <luchuan@neo.org> Co-authored-by: erikzhang <erik@neo.org> Co-authored-by: Shargon <shargon@gmail.com> * Add MaxVerificationGas (#1745) Co-authored-by: Shargon <shargon@gmail.com> * Create KeyBuilder (#1748) * Speed up the initialization of ApplicationEngine. (#1749) * Change nef checksum to double SHA256 (#1751) * Change to double SHA256 * Clean code * Revert change * Clean code * Fix checksum * Update NefFile.cs * Fix compile * Clean code Clean code Fix checksum Update NefFile.cs Fix compile * Optimize * Optimize * Fix Co-authored-by: erikzhang <erik@neo.org> * Check witnesses on isStandard (#1754) * Check witness on isStandard * Add IsDeployed * Add IsPayable * Fix UT * format * Add coverage * Remove IsPayable, IsDeployed * Move NEP10 to manifest (#1729) * NEP10 abi * To lower case * Move to Manifest * Clean code * Update ContractManifest.cs * Update ContractManifest.cs * Fix native contracts Co-authored-by: Erik Zhang <erik@neo.org> * Capture fault Exception (#1761) * Capture faultException * Update Wallet error * Remove flag check * Clean code * Sender from signers (#1752) * Sender from signers * Remove co- * Move signers outside attributes * Fix UT and remove Signers class * Fix UT * Add FeeOnly scope * Remove orderBy * Remove _signersCache * Fix Signers * Fix WitnessScope * Fix Sender * Update TransactionAttributeType.cs * Update Wallet.cs * Fix Wallet * Rename * Update Wallet.cs * Update Wallet.cs * Partial UT fix * More UT fixes * Fix Sender's WitnessScope * Fix Wallet * Fix UT * Explicit FeeOnly for DeployNativeContracts * Same order as serialization * Test FeeOnly * dotnet format * format Co-authored-by: Erik Zhang <erik@neo.org> * IApplicationEngineProvider (#1758) * Remove the lock from SendersFeeMonitor and rename it to TransactionVerificationContext (#1756) * Add EffectiveVoterTurnout (#1762) * Remove AllowedTriggers from SYSCALLs (#1755) * fix validatorscount (#1770) Co-authored-by: Tommo-L <luchuan@neo.org> * workflows: use checkout action v2 (#1775) * Update git workflow * Update .github/workflows/main.yml Co-authored-by: Erik Zhang <erik@neo.org> Co-authored-by: Erik Zhang <erik@neo.org> * Add cache to native contract executions V2 (#1766) * cache v2 * More optimizations * Policy contract optimization * Remove interporable variable * Two more * Add Set * Optimizations * Optimize Co-authored-by: erikzhang <erik@neo.org> * Optimize attributes (#1774) * Add length before compression data (#1768) * Add length before compression * Optimize * Fix UT * Add UT * Add UT Co-authored-by: erikzhang <erik@neo.org> * Fix VerifyWitnesses (#1776) * Ensure non predictable peers (#1739) * Plugins from List to array * Move false to init * Fix UT * Refactor * Add Exception Message For CreateContract (#1787) * Add Exception Message When Create Contract * Add Exception Message * Code optimization * add UT Co-authored-by: Shargon <shargon@gmail.com> Co-authored-by: Qiao Jin <43407364+Qiao-Jin@users.noreply.github.com> Co-authored-by: Erik Zhang <erik@neo.org> Co-authored-by: Shargon <shargon@gmail.com> Co-authored-by: Harry Pierson <harrypierson@hotmail.com> Co-authored-by: Luchuan <luchuan@ngd.neo.org> Co-authored-by: Tommo-L <luchuan@neo.org> Co-authored-by: joeqian <qianzhuo@ngd.neo.org> Co-authored-by: cloud8little <34291844+cloud8little@users.noreply.github.com> Co-authored-by: Qiao Jin <43407364+Qiao-Jin@users.noreply.github.com>
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Describe the bug
when deserialize the type Map, value is re-serialized.
neo/src/neo/SmartContract/JsonSerializer.cs
Lines 45 to 56 in 5e96011
when serialize the type Map, keep the original key and value.
neo/src/neo/SmartContract/JsonSerializer.cs
Lines 106 to 115 in 5e96011
To Reproduce
Steps to reproduce the behavior:
Expected behavior
Serialize and deserialize should be consistent.
Screenshots
Platform:
The text was updated successfully, but these errors were encountered: