Continuos error after installing pre-release version 0.22

Hi,

I’ve installed pre-release version 0.22 on my Mac and started to get this error:

LOG: InternalError: UnhandledException: Object reference not set to an instance of an object in Outracks.Simulator.GeneratedApplication</usr/local/share/uno/Packages/FuseCore/0.32.6/$.uno:307>
LOG: InternalError: Failed to properly reset. Try exiting Fuse and restarting.: Object reference not set to an instance of an object in Outracks.Simulator.GeneratedApplication</usr/local/share/uno/Packages/Outracks.Simulator.Client.Uno/0.1.0/$.uno:174>
ERROR: Object reference not set to an instance of an object
    System.NullReferenceException occured.
      at Fuse.Controls.Image.OnSourceChanged () [0x00000] in <filename unknown>:0 
      at Fuse.Controls.Image.OnContainerSourceChanged (System.Object s, System.Object a) [0x00000] in <filename unknown>:0 
      at Fuse.Internal.ImageContainer.OnSourceChanged (System.Object s, System.Object a) [0x00000] in <filename unknown>:0 
      at Fuse.Internal.ImageContainer.set_Source (Fuse.Resources.ImageSource value) [0x00000] in <filename unknown>:0 
      at Fuse.Controls.Image.set_Source (Fuse.Resources.ImageSource value) [0x00000] in <filename unknown>:0 
      at (wrapper managed-to-native) System.Reflection.MonoMethod:InternalInvoke (System.Reflection.MonoMethod,object,object[],System.Exception&)
      at System.Reflection.MonoMethod.Invoke (System.Object obj, BindingFlags invokeAttr, System.Reflection.Binder binder, System.Object[] parameters, System.Globalization.CultureInfo culture) [0x00000] in <filename unknown>:0 
    --- End of stack trace from previous location where exception was thrown ---
      at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw () [0x00000] in <filename unknown>:0 
      at Outracks.Simulator.Runtime.TryInvokeExtension.Try (System.Func`1 func) [0x0000d] in /Users/outracks/buildAgent1/work/b939dc4c6ac331f9/Source/Outracks.Simulator.Runtime/Reflection/CompiledTypeReflection.cs:286 
      at Outracks.Simulator.Runtime.TryInvokeExtension.TryInvoke (System.Reflection.MethodInfo mi, System.Object obj, System.Object[] value) [0x0001b] in /Users/outracks/buildAgent1/work/b939dc4c6ac331f9/Source/Outracks.Simulator.Runtime/Reflection/CompiledTypeReflection.cs:275 
      at Outracks.Simulator.Runtime.CompiledTypeReflection.SetPropertyValue (System.Object obj, Outracks.Simulator.Bytecode.TypeMemberName propertyName, System.Object value) [0x00032] in /Users/outracks/buildAgent1/work/b939dc4c6ac331f9/Source/Outracks.Simulator.Runtime/Reflection/CompiledTypeReflection.cs:57 
      at Outracks.Fuse.Preview.RuntimeObjectPoker.<HookUpReflectionInterface>m__2 (System.Object a, System.String b, System.Object c) [0x00000] in /Users/outracks/buildAgent1/work/b939dc4c6ac331f9/Source/Outracks.Fuse.Preview/RuntimeObjectPoker.cs:29 
      at Outracks.Simulator.Reflection.DelegateReflection.Outracks.Simulator.Runtime.IReflection.SetPropertyValue (System.Object instance, Outracks.Simulator.Bytecode.TypeMemberName propertyName, System.Object value) [0x00000] in <filename unknown>:0 
      at Outracks.Simulator.Runtime.ScopeClosure.Evaluate (Outracks.Simulator.Bytecode.WriteProperty p) [0x00000] in <filename unknown>:0 
      at Outracks.Simulator.Bytecode.Expression.Match[Object] (System.Func`2 a1, System.Func`2 a2, System.Func`2 a3, System.Func`2 a4, System.Func`2 a5, System.Func`2 a6, System.Func`2 a7, System.Func`2 a8, System.Func`2 a9, System.Func`2 a10, System.Func`2 a11, System.Func`2 a12, System.Func`2 a13, System.Func`2 a15, System.Func`2 a16) [0x00000] in <filename unknown>:0 
      at Outracks.Simulator.Runtime.ScopeClosure.Evaluate (Outracks.Simulator.Bytecode.Expression expression) [0x00000] in <filename unknown>:0 
      at Outracks.Simulator.Runtime.ScopeClosure.Execute (IEnumerable`1 statements) [0x00000] in <filename unknown>:0 
      at Outracks.Simulator.Runtime.ScopeClosure.Execute (Outracks.Simulator.Bytecode.Lambda lambda, System.Object[] arguments) [0x00000] in <filename unknown>:0 
      at Outracks.Simulator.Runtime.LambdaClosure.Func (System.Object a1, System.Object a2) [0x00000] in <filename unknown>:0 
      at Outracks.Simulator.Runtime.LambdaClosure.Action (System.Object a1, System.Object a2) [0x00000] in <filename unknown>:0 
      at Outracks.Simulator.Runtime.UxProperty`1[Fuse.Resources.ImageSource].Set (Fuse.Resources.ImageSource value, IPropertyListener origin) [0x00000] in <filename unknown>:0 
      at Fuse.Controls.PropertyBinding`1[Fuse.Resources.ImageSource].Uno.UX.IPropertyListener.OnPropertyChanged (Uno.UX.PropertyObject src, Selector prop) [0x00000] in <filename unknown>:0 
      at Uno.UX.PropertyObject.OnPropertyChanged (Selector property, IPropertyListener origin) [0x00000] in <filename unknown>:0 
      at Uno.UX.PropertyObject.EmulatePropertyChanged (Uno.UX.PropertyObject obj, Selector sel, IPropertyListener origin) [0x00000] in <filename unknown>:0 
      at Outracks.Simulator.Runtime.LazyProperty`1[Fuse.Resources.ImageSource].Set (Fuse.Resources.ImageSource value, IPropertyListener origin) [0x00000] in <filename unknown>:0 
      at Fuse.Reactive.DataBinding`1[Fuse.Resources.ImageSource].OnUnrooted () [0x00000] in <filename unknown>:0 
      at Fuse.Binding.Unroot () [0x00000] in <filename unknown>:0 
      at Fuse.Node.UnrootBindings () [0x00000] in <filename unknown>:0 
      at Fuse.Node.OnUnrooted () [0x00000] in <filename unknown>:0 
      at Fuse.Visual.OnUnrooted () [0x00000] in <filename unknown>:0 
      at Fuse.Elements.Element.OnUnrooted () [0x00000] in <filename unknown>:0 
      at Fuse.Controls.Control.OnUnrooted () [0x00000] in <filename unknown>:0 
      at Fuse.Controls.LayoutControl.OnUnrooted () [0x00000] in <filename unknown>:0 
      at Fuse.Node.UnrootInternal () [0x00000] in <filename unknown>:0 
      at Fuse.Node.Unrelate (Fuse.Visual parent, Fuse.Node child) [0x00000] in <filename unknown>:0 
      at Fuse.Visual.OnRemoved (Fuse.Node b) [0x00000] in <filename unknown>:0 
      at Fuse.Visual.Remove (Fuse.Node item) [0x00000] in <filename unknown>:0 
      at Fuse.Visual.BeginRemoveVisual (Fuse.Visual child, System.Action then) [0x00000] in <filename unknown>:0 
      at Fuse.Visual.BeginRemoveChild (Fuse.Node n, System.Action then) [0x00000] in <filename unknown>:0 
      at Fuse.Reactive.Each.RemoveAll () [0x00000] in <filename unknown>:0 
      at Fuse.Reactive.Each.OnUnrooted () [0x00000] in <filename unknown>:0 
      at Fuse.Node.UnrootInternal () [0x00000] in <filename unknown>:0 
      at Fuse.Visual.OnUnrooted () [0x00000] in <filename unknown>:0 
      at Fuse.Elements.Element.OnUnrooted () [0x00000] in <filename unknown>:0 
      at Fuse.Controls.Control.OnUnrooted () [0x00000] in <filename unknown>:0 
      at Fuse.Controls.LayoutControl.OnUnrooted () [0x00000] in <filename unknown>:0 
      at Fuse.Node.UnrootInternal () [0x00000] in <filename unknown>:0 
      at Fuse.Visual.OnUnrooted () [0x00000] in <filename unknown>:0 
      at Fuse.Elements.Element.OnUnrooted () [0x00000] in <filename unknown>:0 
      at Fuse.Controls.Control.OnUnrooted () [0x00000] in <filename unknown>:0 
      at Fuse.Controls.LayoutControl.OnUnrooted () [0x00000] in <filename unknown>:0 
      at Fuse.Node.UnrootInternal () [0x00000] in <filename unknown>:0 
      at Fuse.Visual.OnUnrooted () [0x00000] in <filename unknown>:0 
      at Fuse.Elements.Element.OnUnrooted () [0x00000] in <filename unknown>:0 
      at Fuse.Controls.Control.OnUnrooted () [0x00000] in <filename unknown>:0 
      at Fuse.Controls.LayoutControl.OnUnrooted () [0x00000] in <filename unknown>:0 
      at Fuse.Node.UnrootInternal () [0x00000] in <filename unknown>:0 
      at Fuse.Visual.OnUnrooted () [0x00000] in <filename unknown>:0 
      at Fuse.Elements.Element.OnUnrooted () [0x00000] in <filename unknown>:0 
      at Fuse.Controls.Control.OnUnrooted () [0x00000] in <filename unknown>:0 
      at Fuse.Controls.LayoutControl.OnUnrooted () [0x00000] in <filename unknown>:0 
      at Fuse.Controls.NavigationControl.OnUnrooted () [0x00000] in <filename unknown>:0 
      at Fuse.Node.UnrootInternal () [0x00000] in <filename unknown>:0 
      at Fuse.Visual.OnUnrooted () [0x00000] in <filename unknown>:0 
      at Fuse.Elements.Element.OnUnrooted () [0x00000] in <filename unknown>:0 
      at Fuse.Controls.Control.OnUnrooted () [0x00000] in <filename unknown>:0 
      at Fuse.Controls.LayoutControl.OnUnrooted () [0x00000] in <filename unknown>:0 
      at Fuse.Node.UnrootInternal () [0x00000] in <filename unknown>:0 
      at Fuse.Node.Unrelate (Fuse.Visual parent, Fuse.Node child) [0x00000] in <filename unknown>:0 
      at Fuse.Visual.OnRemoved (Fuse.Node b) [0x00000] in <filename unknown>:0 
      at Fuse.Visual.Remove (Fuse.Node item) [0x00000] in <filename unknown>:0 
      at Fuse.Visual.ConcludePendingRemove () [0x00000] in <filename unknown>:0 
      at Fuse.PendingRemoveVisual.Remove () [0x00000] in <filename unknown>:0 
      at Fuse.PendingRemoveVisual.RemoveSubscriber () [0x00000] in <filename unknown>:0 
      at Fuse.Triggers.RemovingAnimation.OnDone () [0x00000] in <filename unknown>:0 
      at Fuse.Triggers.Trigger.Fuse.Animations.IPlayerFeedback.OnPlaybackDone (System.Object s) [0x00000] in <filename unknown>:0 
      at Fuse.Animations.TriggerAnimationState.Fuse.Animations.IPlayerFeedback.OnPlaybackDone (System.Object s) [0x00000] in <filename unknown>:0 
      at Fuse.Animations.Player.Done () [0x00000] in <filename unknown>:0 
      at Fuse.Animations.Player.CheckUpdate (Boolean interval) [0x00000] in <filename unknown>:0 
      at Fuse.Animations.Player.Fuse.IUpdateListener.Update () [0x00000] in <filename unknown>:0 
      at Fuse.UpdateListener.Invoke () [0x00000] in <filename unknown>:0 
      at Fuse.UpdateManager.Update (Fuse.Stage stage) [0x00000] in <filename unknown>:0

Unfortunately I get this error very often which makes it impossible to work. I’m testing on local preview and it sometimes occurs after saving a code change, routing to a new page or going back to previous page, etc.

I just wanted to let you know about the error before the release. For now I’ll go back to 0.21.

Ipek

Hi Ipek,

Which specific pre-release version was this? We released 0.22.0.6935 at 7/13/2016 10:32:55 AM CET, and got a few reports about this. We then fixed the bug, and released 0.22.0.6943 at 7/13/2016 6:02:22 PM CET.

If you saw this in 0.22.0.6935, can you please try to upgrade to 0.22.0.6943? If you saw it in 0.22.0.6943, is there any chance you could make a small reproduction of the issue and send us?

Hi Anders,

Sorry for the missing info. Hopefully it was 0.22.0.6935. So I will try 0.22.0.6943.

Thanks

Thanks ipek! But in the mean time we’ve managed to reproduce what we believe to be your issue even with 0.22.0.6943. A fix is being made now, and will be released shortly.

Are you able to send us your project, or a small reproduction of the issue, so we can verify that the issue is resolved?

If you upload it to https://www.dropbox.com/request/ZgndLtJQm5eGzG9cicGK, it can only be accessed by the Fuse team.

Yes, unfortunately I get the same error with also 0.22.0.6943.

My app is using ASP.NET MVC on the backend but the error doesn’t appear to be related with the HTTP requests so I think it’ll be enough if I just disable the login process for you to test.

I’ll let you know when I upload it.

Thanks! This is probably related to some Fuse component not handling being set up before whatever it databinds to is ready, and as you say probably not related to http.

Anders,

I’ve uploaded the project to DropBox with the name “error_test_ipek.zip”. Sorry that I couldn’t clean it up so much: most of the code is unnecessary. I’ve found the steps to reproduce the error and explained them in the stepToProduceError.rtf file, which is in the same zip file.

Hope it helps,

Ipek

Thank you! I have reproduced the issue using your app, and confirmed that the fix did indeed fix your problem! We’ll make an update soon that should fix this! Thanks for your patience :wink:

Thanks Erik,

I’m glad that it helped!

Hello, I have a similar mistake, when you change views

InternalError: UnhandledException: Object reference not set to an instance of an object. in Outracks.Simulator.GeneratedApplication

Also when upgrading to 0.22.0

Which is the best option?

return to 0.21.0

or wait for a new version

Daniel: could you please open up the monitor, and post a full stack-trace? If so, it’ll be easier for us to help

Hi Daniel,

This error ended in my app after I upgraded to the latest version: 0.22.0.6996

Ipek

Daniel,

Fuse 0.23 is now out, can you please see if your issue is fixed in that version? If not, please paste a stack trace from the monitor as Erik suggests.

Thank you very much for your prompt response. the error persists

When I assign values to a variable in JSON object and navigate to another view or ctrl + R to update, send me the error

            .then(function(responseObject) {

                ObjListado.value = responseObject; //Commenting this line works well

            })
            .catch(function(err) {
                reject(err);
                console.log("error ",err);

            });

sorry for my English. :slight_smile:

I found the error when assigning values to a view with code Base64. which it is located in the JSON object.

I occupied a method I found in the forum, apparently it is no longer compatible with these versions of Fuse

https://www.fusetools.com/community/forums/howto_discussions/base_64_images?page=1&highlight=14764335-f673-47cf-a5af-52a050000a33#post-14764335-f673-47cf-a5af-52a050000a33

                <Grid>
                    <Each Items="{ObjListado.documentos}">
                         <Grid  Alignment="Top" Columns="1,2.6,.4*" Height="95" >                            <Panel>
                                <Image>
                                    <Base64ImageSource Base64="{IMAGEN1X}" />
                                </Image>
                            </Panel>
                        </Grid>
                    </Each>                </Grid>

I occupied a method I found in the forum, apparently it is no longer compatible with these versions of Fuse

I have not found methods Base64 for use in Fuse and my application depends heavily on this method.

will have some other knowledge for use Base64?

Daniel,

If you’re using the Base64ImageSource in your project, you probably have to replace

_base64image = value;

with

_base64image = value ?? string.Empty;

This is because data-binding will return a null-value before the binding has been established properly.

I hope this helps.