[MP1-4578] Crashes after standby. (1 Viewer)

HTPCSourcer

Retired Team Member
  • Premium Supporter
  • May 16, 2008
    11,418
    2,335
    Home Country
    Germany Germany
    Hi @Sebastiii ,

    After my initial sucess report, I sadly have to tell you that suddenly things don't work out anymore. Upon each resume MePo crashes and is automatically terminated. The only new thing is that I ran windows updates on Wednesday evening.

    I have attached a mediaportal.log. Apologies for not having cleaned the log for all the MusicInfoHandler errors, running crazy because it has no internet connection.
     

    Attachments

    • MediaPortal.1.zip
      181.3 KB

    Sebastiii

    Development Group
  • Team MediaPortal
  • November 12, 2007
    16,583
    10,403
    France
    Home Country
    France France
    I almost thought disabling the minidisplay plugin fixed the loadskin error but after a whole afternoon the error is back:( Here is the watchdog zip.

    Beside that it seems V14 is quite good, the only crash I had was the zip posted with my last post. I've tried standby and resume many times, for long and short periods but only the previous crash.

    Yep but this time the loadskin comes from :
    FanartHandler.FanartSelected
    and
    TraktPlugin.TraktDashboard

    We have have identified that minidisplay / FH and Trakt lead to loadskin error and each error need to be fixed on each plugins :)
    Now we have to know if the method/fix apply on TVplugin can work for above plugin :)
     

    killer8

    Portal Pro
    July 29, 2012
    378
    186
    Home Country
    Netherlands Netherlands
    I almost thought disabling the minidisplay plugin fixed the loadskin error but after a whole afternoon the error is back:( Here is the watchdog zip.

    Beside that it seems V14 is quite good, the only crash I had was the zip posted with my last post. I've tried standby and resume many times, for long and short periods but only the previous crash.

    Yep but this time the loadskin comes from :
    FanartHandler.FanartSelected
    and
    TraktPlugin.TraktDashboard

    We have have identified that minidisplay / FH and Trakt lead to loadskin error and each error need to be fixed on each plugins :)
    Now we have to know if the method/fix apply on TVplugin can work for above plugin :)
    I think it works since i haven't seen the error anymore since I installed the patched file. But this can be coincidence, any way I can prove this? Or any additional testing needed?
     

    Sebastiii

    Development Group
  • Team MediaPortal
  • November 12, 2007
    16,583
    10,403
    France
    Home Country
    France France
    I'm not so sure when the loadskin error comes up. I mean it's just sometimes, even with minidisplay enabled. When do I exactly have to take a log? after one standby or using it for a while or something?[DOUBLEPOST=1416142719][/DOUBLEPOST]I was testing V14 a bit more and disabled minidisplay to prevent loadskin error. But got a crash, I was watching live tv and did put the htpc in standby without stopping the tv first. After a wake there was a frozen picture of my tv show and medieportal froze completely.

    Although when I try to get in taskmanager to kill mediaportal I wasn't able to do this since mediaportal is set as always in front and seems to be still working(I head some button sounds when I click around in the screen). Alt F4 however did kill mediaportal correctly but this didn't give me watchdog in front so maybe it wasn't really crashed. Here is the watchdog zip.

    In this one :
    Code:
    [2014-11-16 13:54:03,237] [Log    ] [MPMain   ] [ERROR] - Exception: System.NullReferenceException: De objectverwijzing is niet op een exemplaar van een object ingesteld.
       bij MediaPortal.GUI.Library.GUIFont.InitializeDeviceObjects()
       bij MediaPortal.GUI.Library.GUIFontManager.InitializeDeviceObjects()
       bij MediaPortal.D3D.RecreateSwapChain()
       bij MediaPortal.D3D.RecoverDevice()
       bij MediaPortalApp.OnDeviceLost(Object sender, EventArgs e)
       bij System.EventHandler.Invoke(Object sender, EventArgs e)
       bij Microsoft.DirectX.Direct3D.Device.raise_DeviceLost(Object i1, EventArgs i2)
       bij Microsoft.DirectX.Direct3D.Device.Reset(PresentParameters[] presentationParameters)
       bij MediaPortal.D3D.RecreateSwapChain()
       bij MediaPortalApp.OnDisplayChange(Message& msg)
       bij MediaPortalApp.WndProc(Message& msg)  Message: De objectverwijzing is niet op een exemplaar van een object ingesteld.  Site   : Void InitializeDeviceObjects()  Source : Core  Stack Trace:     bij MediaPortal.GUI.Library.GUIFont.InitializeDeviceObjects()
       bij MediaPortal.GUI.Library.GUIFontManager.InitializeDeviceObjects()
       bij MediaPortal.D3D.RecreateSwapChain()
       bij MediaPortal.D3D.RecoverDevice()
       bij MediaPortalApp.OnDeviceLost(Object sender, EventArgs e)
       bij System.EventHandler.Invoke(Object sender, EventArgs e)
       bij Microsoft.DirectX.Direct3D.Device.raise_DeviceLost(Object i1, EventArgs i2)
       bij Microsoft.DirectX.Direct3D.Device.Reset(PresentParameters[] presentationParameters)
       bij MediaPortal.D3D.RecreateSwapChain()
       bij MediaPortalApp.OnDisplayChange(Message& msg)
       bij MediaPortalApp.WndProc(Message& msg)

    OnDeviceLost seems to be trigger when D3D is not ready or something, not really sure what to do, maybe not handle devicelost ?
    No clue :(
     

    Sebastiii

    Development Group
  • Team MediaPortal
  • November 12, 2007
    16,583
    10,403
    France
    Home Country
    France France
    Hi @Sebastiii ,

    After my initial sucess report, I sadly have to tell you that suddenly things don't work out anymore. Upon each resume MePo crashes and is automatically terminated. The only new thing is that I ran windows updates on Wednesday evening.

    I have attached a mediaportal.log. Apologies for not having cleaned the log for all the MusicInfoHandler errors, running crazy because it has no internet connection.

    Good thing is that it seems to be the same error has Killer :)

    Code:
    [2014-11-16 15:13:35,646] [Log    ] [MPMain   ] [ERROR] - Exception: System.NullReferenceException: Der Objektverweis wurde nicht auf eine Objektinstanz festgelegt.
       bei MediaPortal.GUI.Library.GUIFont.InitializeDeviceObjects()
       bei MediaPortal.GUI.Library.GUIFontManager.InitializeDeviceObjects()
       bei MediaPortal.D3D.RecreateSwapChain()
       bei MediaPortal.D3D.RecoverDevice()
       bei MediaPortalApp.OnDeviceLost(Object sender, EventArgs e)
       bei System.EventHandler.Invoke(Object sender, EventArgs e)
       bei Microsoft.DirectX.Direct3D.Device.raise_DeviceLost(Object i1, EventArgs i2)
       bei Microsoft.DirectX.Direct3D.Device.Reset(PresentParameters[] presentationParameters)
       bei MediaPortal.D3D.RecreateSwapChain()
       bei MediaPortalApp.OnDisplayChange(Message& msg)
       bei MediaPortalApp.WndProc(Message& msg)  Message: Der Objektverweis wurde nicht auf eine Objektinstanz festgelegt.  Site   : Void InitializeDeviceObjects()  Source : Core  Stack Trace:     bei MediaPortal.GUI.Library.GUIFont.InitializeDeviceObjects()
       bei MediaPortal.GUI.Library.GUIFontManager.InitializeDeviceObjects()
       bei MediaPortal.D3D.RecreateSwapChain()
       bei MediaPortal.D3D.RecoverDevice()
       bei MediaPortalApp.OnDeviceLost(Object sender, EventArgs e)
       bei System.EventHandler.Invoke(Object sender, EventArgs e)
       bei Microsoft.DirectX.Direct3D.Device.raise_DeviceLost(Object i1, EventArgs i2)
       bei Microsoft.DirectX.Direct3D.Device.Reset(PresentParameters[] presentationParameters)
       bei MediaPortal.D3D.RecreateSwapChain()
       bei MediaPortalApp.OnDisplayChange(Message& msg)
       bei MediaPortalApp.WndProc(Message& msg)

    So let me try something :)
     

    Sebastiii

    Development Group
  • Team MediaPortal
  • November 12, 2007
    16,583
    10,403
    France
    Home Country
    France France
    I almost thought disabling the minidisplay plugin fixed the loadskin error but after a whole afternoon the error is back:( Here is the watchdog zip.

    Beside that it seems V14 is quite good, the only crash I had was the zip posted with my last post. I've tried standby and resume many times, for long and short periods but only the previous crash.

    Yep but this time the loadskin comes from :
    FanartHandler.FanartSelected
    and
    TraktPlugin.TraktDashboard

    We have have identified that minidisplay / FH and Trakt lead to loadskin error and each error need to be fixed on each plugins :)
    Now we have to know if the method/fix apply on TVplugin can work for above plugin :)
    I think it works since i haven't seen the error anymore since I installed the patched file. But this can be coincidence, any way I can prove this? Or any additional testing needed?

    Yep it seems working for TVplugin but need to know and if it's possible to apply the same code for plugins :)
    What i have in mind is to create a public method to get the current MP sync process and then when plugins need to call loadskin, they sync to that method, but i don't know if it's the correct way etc.
     

    Sebastiii

    Development Group
  • Team MediaPortal
  • November 12, 2007
    16,583
    10,403
    France
    Home Country
    France France
    @HTPC_Sourcer : in your log :
    You have :
    [2014-11-16 15:13:30,602] [Log ] [MPMain ] [DEBUG] - Main: OnPowerBroadcast - wait for ResumeAutomatic / ResumeDelayed message
    This is not based on V14, but other Vxx or official 1.10-Pre.
     

    HTPCSourcer

    Retired Team Member
  • Premium Supporter
  • May 16, 2008
    11,418
    2,335
    Home Country
    Germany Germany
    Correct, I've been using V13. Should I try directly V15?
     

    Sebastiii

    Development Group
  • Team MediaPortal
  • November 12, 2007
    16,583
    10,403
    France
    Home Country
    France France
    About loadskin (need to open a new topic) :)
    What i have do is :

    Added public method in core.dll and then now plugins can execute the code in sync by using :
    Code:
                    GUIWindow._mainThreadContext.Send(delegate
                                                      {
                                                        blablalbbla
                                                      }, null);
    It will force to send what need based on main MP thread :)
    Not sure if it's ok but could be nice to test :)
     

    Users who are viewing this thread

    Top Bottom