Background (please complete the following information):
Describe the bug
When restarting one of the servers, I've gotten: https://hastebin.com/avijopevuj.pl
After that error, the panel for that server got glitched.
To Reproduce
Steps to reproduce the behavior: I'm not sure... Maybe if the server has an error and is unable to start, the panel will brick not stream data until reconnect.
EDIT: More details below
Expected behavior
The server should stop, the error message should be printed in the server-console and the panel should not brick.
Can you at least say what server this happened with? Nothing here is reproducible.
I think I've just found out a simple way to reproduce it. It seems like wings is unable to handle any errors. For example: remove server.jar, try to boot up the server. After that, the error will appear in wings. Now try to put the server.jar back and the panel (console) will remain bricked, and will no longer update, unless refreshing the page.
It happens with BungeeCord & Spigot, but I assume it would happen on any other game server.
I've seen this happen as well, but in a different scenario : Create a server with like 10mb (any amount as long as the server doesn't have enough disk) of disk space, the server will install but won't start, attempt to start it (it will fail again). Then increase the disk space to 10gb or w.e the server requires, and attempt to start it again, it will start however the panel will not update (websocket doesn't seem to be sending any data back), you won't see anything in the console unless you refresh the page.
I've seen this happen as well, but in a different scenario : Create a server with like 10mb (any amount as long as the server doesn't have enough disk) of disk space, the server will install but won't start, attempt to start it (it will fail again). Then increase the disk space to 10gb or w.e the server requires, and attempt to start it again, it will start however the panel will not update (websocket doesn't seem to be sending any data back), you won't see anything in the console unless you refresh the page.
Exactly, Wings is completely unable to handle any errors and will brick not be able to stream data until reconnect if those occur.
That is not really bricking, that's just it doesn't auto-refresh and reconnect to a valid socket. Bricking would imply that wings or the panel becomes completely unusable without manual code editing/data modification.
I think I actually fixed this in https://github.com/pterodactyl/wings/commit/82ffb9804d40e16a636ca18cd867d7fae10df436
Basically, I was trying to send the error over the websocket, but it locked up the handler trying to get two locks at the same time. Ergo, no error, and no more websocket data.