nblockchain/geewallet

Regression: crash in GTK frontend because of not finding embedded resource

Closed this issue · 2 comments

I just released 0.4.360.0 version to Snap Store and to Android's Google Play. The update works on the latter but unfortunately it crashes in the former, with:

$ geewallet

Exception in Gtk# callback delegate
  Note: Applications can use GLib.ExceptionManager.UnhandledException to handle the exception.
System.TypeInitializationException: The type initializer for '<StartupCode$GWallet-Backend-NetStandard>.$Caching' threw an exception. ---> System.TypeInitializationException: The type initializer for '<StartupCode$GWallet-Backend-NetStandard>.$Server' threw an exception. ---> System.Exception: Embedded resource servers.json not found at all in assembly GWallet.Backend.NetStandard, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null (resource names: GWallet.Backend.NetStandard.servers.json;FSharpSignatureData.GWallet.Backend.NetStandard;FSharpOptimizationData.GWallet.Backend.NetStandard)
  at GWallet.Backend.Config.ExtractEmbeddedResourceFileContentsFromAssembly (System.String resourceName, System.Reflection.Assembly assembly) [0x00051] in <c6e07671e573c5003e72a8c1114b8666>:0 
  at <StartupCode$GWallet-Backend-NetStandard>.$Server..cctor () [0x0000a] in <c6e07671e573c5003e72a8c1114b8666>:0 
   --- End of inner exception stack trace ---
  at (wrapper managed-to-native) System.Object.__icall_wrapper_mono_generic_class_init(intptr)
  at GWallet.Backend.Caching+MainCache.InitServers (Microsoft.FSharp.Collections.FSharpMap`2[TKey,TValue] lastServerStats) [0x00000] in <c6e07671e573c5003e72a8c1114b8666>:0 
  at GWallet.Backend.Caching+MainCache..ctor (Microsoft.FSharp.Core.FSharpOption`1[T] maybeCacheFiles, System.TimeSpan unconfTxExpirationSpan) [0x0004d] in <c6e07671e573c5003e72a8c1114b8666>:0 
  at <StartupCode$GWallet-Backend-NetStandard>.$Caching..cctor () [0x0004c] in <c6e07671e573c5003e72a8c1114b8666>:0 
   --- End of inner exception stack trace ---
  at (wrapper managed-to-native) System.Object.__icall_wrapper_mono_generic_class_init(intptr)
  at GWallet.Backend.FiatValueEstimation+UsdValue@129.Invoke (Microsoft.FSharp.Core.Unit unitVar) [0x00000] in <c6e07671e573c5003e72a8c1114b8666>:0 
  at Microsoft.FSharp.Control.AsyncPrimitives.CallThenInvoke[T,TResult] (Microsoft.FSharp.Control.AsyncActivation`1[T] ctxt, TResult result1, Microsoft.FSharp.Core.FSharpFunc`2[T,TResult] part2) [0x00005] in <039b17603f7a807e0eeaa652dc64c784>:0 
  at Fsdk.FSharpUtil+AsyncExtensions+makeBoxed@37-3[a].Invoke (Microsoft.FSharp.Control.AsyncActivation`1[T] ctxt) [0x00000] in <a01c7e63e89b6942911ce4718574d569>:0 
  at Microsoft.FSharp.Control.Trampoline.Execute (Microsoft.FSharp.Core.FSharpFunc`2[T,TResult] firstAction) [0x00020] in <039b17603f7a807e0eeaa652dc64c784>:0 
--- End of stack trace from previous location where exception was thrown ---

  at GWallet.Frontend.XF.FrontendHelpers+MaybeCrash@253.Invoke () [0x0000b] in <dbca3929fc1c42c412d1a3720db63004>:0 
  at Xamarin.Forms.Platform.GTK.GtkPlatformServices+<>c__DisplayClass4_0.<BeginInvokeOnMainThread>b__0 () [0x00000] in <6cd6ad6b5d46467b9436a99696fdea5e>:0 
  at GLib.Idle+IdleProxy.Invoke (System.IntPtr data) [0x00000] in <ed39f21b9e9343dcbd442a17ad356a9f>:0 
  at GLib.SourceProxy.HandlerInternal (System.IntPtr data) [0x00000] in <ed39f21b9e9343dcbd442a17ad356a9f>:0 
  at GLib.ExceptionManager.RaiseUnhandledException (System.Exception e, System.Boolean is_terminal) [0x00000] in <ed39f21b9e9343dcbd442a17ad356a9f>:0 
  at GLib.SourceProxy.HandlerInternal (System.IntPtr data) [0x00000] in <ed39f21b9e9343dcbd442a17ad356a9f>:0 
  at Gtk.Application.gtk_main () [0x00000] in <7aab76e87bce48a4b45cf7fa613cb70c>:0 
  at Gtk.Application.Run () [0x00000] in <7aab76e87bce48a4b45cf7fa613cb70c>:0 
  at GWallet.Frontend.XF.Gtk.Main.main (System.String[] _argv) [0x00000] in <63ce1fa9944123fea7450383a91fce63>:0 
System.TypeInitializationException: The type initializer for '<StartupCode$GWallet-Backend-NetStandard>.$Caching' threw an exception. ---> System.TypeInitializationException: The type initializer for '<StartupCode$GWallet-Backend-NetStandard>.$Server' threw an exception. ---> System.Exception: Embedded resource servers.json not found at all in assembly GWallet.Backend.NetStandard, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null (resource names: GWallet.Backend.NetStandard.servers.json;FSharpSignatureData.GWallet.Backend.NetStandard;FSharpOptimizationData.GWallet.Backend.NetStandard)
  at GWallet.Backend.Config.ExtractEmbeddedResourceFileContentsFromAssembly (System.String resourceName, System.Reflection.Assembly assembly) [0x00051] in <c6e07671e573c5003e72a8c1114b8666>:0 
  at <StartupCode$GWallet-Backend-NetStandard>.$Server..cctor () [0x0000a] in <c6e07671e573c5003e72a8c1114b8666>:0 
   --- End of inner exception stack trace ---
  at (wrapper managed-to-native) System.Object.__icall_wrapper_mono_generic_class_init(intptr)
  at GWallet.Backend.Caching+MainCache.InitServers (Microsoft.FSharp.Collections.FSharpMap`2[TKey,TValue] lastServerStats) [0x00000] in <c6e07671e573c5003e72a8c1114b8666>:0 
  at GWallet.Backend.Caching+MainCache..ctor (Microsoft.FSharp.Core.FSharpOption`1[T] maybeCacheFiles, System.TimeSpan unconfTxExpirationSpan) [0x0004d] in <c6e07671e573c5003e72a8c1114b8666>:0 
  at <StartupCode$GWallet-Backend-NetStandard>.$Caching..cctor () [0x0004c] in <c6e07671e573c5003e72a8c1114b8666>:0 
   --- End of inner exception stack trace ---
  at (wrapper managed-to-native) System.Object.__icall_wrapper_mono_generic_class_init(intptr)
  at GWallet.Backend.FiatValueEstimation+UsdValue@129.Invoke (Microsoft.FSharp.Core.Unit unitVar) [0x00000] in <c6e07671e573c5003e72a8c1114b8666>:0 
  at Microsoft.FSharp.Control.AsyncPrimitives.CallThenInvoke[T,TResult] (Microsoft.FSharp.Control.AsyncActivation`1[T] ctxt, TResult result1, Microsoft.FSharp.Core.FSharpFunc`2[T,TResult] part2) [0x00005] in <039b17603f7a807e0eeaa652dc64c784>:0 
  at Fsdk.FSharpUtil+AsyncExtensions+makeBoxed@37-3[a].Invoke (Microsoft.FSharp.Control.AsyncActivation`1[T] ctxt) [0x00000] in <a01c7e63e89b6942911ce4718574d569>:0 
  at Microsoft.FSharp.Control.Trampoline.Execute (Microsoft.FSharp.Core.FSharpFunc`2[T,TResult] firstAction) [0x00020] in <039b17603f7a807e0eeaa652dc64c784>:0 
--- End of stack trace from previous location where exception was thrown ---

  at GWallet.Frontend.XF.FrontendHelpers+MaybeCrash@253.Invoke () [0x0000b] in <dbca3929fc1c42c412d1a3720db63004>:0 
  at Xamarin.Forms.Platform.GTK.GtkPlatformServices+<>c__DisplayClass4_0.<BeginInvokeOnMainThread>b__0 () [0x00000] in <6cd6ad6b5d46467b9436a99696fdea5e>:0 
  at GLib.Idle+IdleProxy.Invoke (System.IntPtr data) [0x00000] in <ed39f21b9e9343dcbd442a17ad356a9f>:0 
  at GLib.SourceProxy.HandlerInternal (System.IntPtr data) [0x00000] in <ed39f21b9e9343dcbd442a17ad356a9f>:0 

@webwarrior-ws this is the important bit FYI: Exception: Embedded resource servers.json not found at all in assembly GWallet.Backend.NetStandard, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null (resource names: GWallet.Backend.NetStandard.servers.json;FSharpSignatureData.GWallet.Backend.NetStandard;FSharpOptimizationData.GWallet.Backend.NetStandard)

@webwarrior-ws (which is an error msg that is in a failwith invocation inside GWallet.Backend)