nblockchain/geewallet

NRE happened during cold-storage workflow

knocte opened this issue · 0 comments

knocte commented

Created unsigned.json from version 0.5.405.0 (master - 0e07773) on macOS, and it starts with:

{
  "Version": "0.5.405.0",
  "TypeName": "GWallet.Backend.UnsignedTransaction`1[[GWallet.Backend.UtxoCoin.TransactionMetadata, GWallet.Backend, Version=0.5.405.0, Culture=neutral, PublicKeyToken=null]]",
  "Value": {
...

Then signed with version 0.4.403.0 (stable - b72581e) on Windows, and signed.json starts with:


  "Version": "1.0.0.0",
  "TypeName": "GWallet.Backend.SignedTransaction`1[[GWallet.Backend.UtxoCoin.TransactionMetadata, GWallet.Backend, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null]]",
  "Value": {
...

Then when trying to broadcast it in 0.5.405.0 again, it crashed with:

Introduce a file name to load the signed transaction: rebS.json
System.NullReferenceException: Object reference not set to an instance of an object.
   at GWallet.Backend.Account.ImportSignedTransactionFromJson(String jsonOrCompressedJson) in /Users/knocte/Documents/Code/geewalletMASTERclean/src/GWallet.Backend/Account.fs:line 724
   at GWallet.Backend.Account.LoadSignedTransactionFromFile(String filePath) in /Users/knocte/Documents/Code/geewalletMASTERclean/src/GWallet.Backend/Account.fs:line 764
   at Program.BroadcastPayment() in /Users/knocte/Documents/Code/geewalletMASTERclean/src/GWallet.Frontend.Console/Program.fs:line 62
   at Program.PerformOperation(UInt32 numActiveAccounts, UInt32 numHotAccounts) in /Users/knocte/Documents/Code/geewalletMASTERclean/src/GWallet.Frontend.Console/Program.fs:line 398
   at Program.ProgramMainLoop[a]() in /Users/knocte/Documents/Code/geewalletMASTERclean/src/GWallet.Frontend.Console/Program.fs:line 478
   at Program.NormalStartWithNoParameters() in /Users/knocte/Documents/Code/geewalletMASTERclean/src/GWallet.Frontend.Console/Program.fs:line 490

However, trying broadcast with version 0.4.407.0 (stable - 2abf306) it worked.