openplanet-nl / plugin-manager

In-game plugin manager, installer, and updater.
6 stars 5 forks source link

Gracefully handle Plugin Manager failure on failed connection/response #3

Closed chipsTM closed 2 years ago

chipsTM commented 2 years ago

When OpenPlanet servers were down on Feb 8th-9th, opening up the plugin manager caused it unload. I pasted the logs of my game below:

[   ScriptRuntime] [21:47:34] [PluginManager]  Checking for plugin updates..
[   ScriptRuntime] [21:47:55] [PluginManager]  Script exception: Json value is not an object or array!
[   ScriptRuntime] [21:47:55] [PluginManager]    D:\Epic Games\TrackmaniaNext\Openplanet/Plugins/PluginManager/src/UpdateCheck.as (line 63, column 19)
[   ScriptRuntime] [21:47:55] [PluginManager]      #0  void CheckForUpdatesAsync() (D:\Epic Games\TrackmaniaNext\Openplanet/Plugins/PluginManager/src/UpdateCheck.as line 63)
[   ScriptRuntime] [21:47:55] [PluginManager]      openplanet-nl/issues#1  void Main() (D:\Epic Games\TrackmaniaNext\Openplanet/Plugins/PluginManager/src/main.as line 15)
[   ScriptRuntime] [22:17:14] [PluginManager]  Script exception: Json value is not an object!
[   ScriptRuntime] [22:17:14] [PluginManager]    D:\Epic Games\TrackmaniaNext\Openplanet/Plugins/PluginManager/src/Interface/Tabs/PluginList.as (line 100, column 4)
[   ScriptRuntime] [22:17:14] [PluginManager]      #0  void PluginListTab::CheckRequest() (D:\Epic Games\TrackmaniaNext\Openplanet/Plugins/PluginManager/src/Interface/Tabs/PluginList.as line 100)
[   ScriptRuntime] [22:17:14] [PluginManager]      openplanet-nl/issues#1  void PluginListTab::Render() (D:\Epic Games\TrackmaniaNext\Openplanet/Plugins/PluginManager/src/Interface/Tabs/PluginList.as line 134)
[   ScriptRuntime] [22:17:14] [PluginManager]      openplanet-nl/issues#2  void Window::RenderTabContents(Tab@ tab) (D:\Epic Games\TrackmaniaNext\Openplanet/Plugins/PluginManager/src/Interface/Window.as line 32)
[   ScriptRuntime] [22:17:14] [PluginManager]      openplanet-nl/issues#3  void Window::Render() (D:\Epic Games\TrackmaniaNext\Openplanet/Plugins/PluginManager/src/Interface/Window.as line 81)
[   ScriptRuntime] [22:17:14] [PluginManager]      openplanet-nl/issues#4  void RenderInterface() (D:\Epic Games\TrackmaniaNext\Openplanet/Plugins/PluginManager/src/main.as line 22)
[   ScriptRuntime] [22:17:14]  Unrolling dangling script UI stack: D:\Epic Games\TrackmaniaNext\Openplanet/Plugins/PluginManager/src/Interface/Window.as line 31
[   ScriptRuntime] [22:17:14]  Unrolling dangling script UI stack: D:\Epic Games\TrackmaniaNext\Openplanet/Plugins/PluginManager/src/Interface/Window.as line 79
[   ScriptRuntime] [22:17:14]  Unrolling dangling script UI stack: D:\Epic Games\TrackmaniaNext\Openplanet/Plugins/PluginManager/src/Interface/Tab.as line 15
[   ScriptRuntime] [22:17:14]  Unrolling dangling script UI stack: D:\Epic Games\TrackmaniaNext\Openplanet/Plugins/PluginManager/src/Interface/Tab.as line 14
[   ScriptRuntime] [22:17:14]  Unrolling dangling script UI stack: D:\Epic Games\TrackmaniaNext\Openplanet/Plugins/PluginManager/src/Interface/Tab.as line 13
[   ScriptRuntime] [22:17:14]  Unrolling dangling script UI stack: D:\Epic Games\TrackmaniaNext\Openplanet/Plugins/PluginManager/src/Interface/Window.as line 59
[   ScriptRuntime] [22:17:14]  Unrolling dangling script UI stack: D:\Epic Games\TrackmaniaNext\Openplanet/Plugins/PluginManager/src/Interface/Window.as line 51
[   ScriptRuntime] [22:17:14]  Unrolling dangling script UI stack: D:\Epic Games\TrackmaniaNext\Openplanet/Plugins/PluginManager/src/Interface/Tab.as line 15
[   ScriptRuntime] [22:17:14]  Unrolling dangling script UI stack: D:\Epic Games\TrackmaniaNext\Openplanet/Plugins/PluginManager/src/Interface/Tab.as line 14
[   ScriptRuntime] [22:17:14]  Unrolling dangling script UI stack: D:\Epic Games\TrackmaniaNext\Openplanet/Plugins/PluginManager/src/Interface/Tab.as line 13
[   ScriptRuntime] [22:17:14]  Unrolling dangling script UI stack: D:\Epic Games\TrackmaniaNext\Openplanet/Plugins/PluginManager/src/Interface/Window.as line 44
codecat commented 2 years ago

Thanks for the report! The second exception was fixed in e2556f43f5dfa86f5ca21cf95965ed3e178574da. I'll fix the first one as well 👍