Wilfred Hughes d993f9d1c9 fix: Report both IO errors and main_loop errors
If rust-analyzer receives a malformed LSP request, the IO thread
terminates with a meaningful error, but then closes the channel.

Once the channel has closed, the main_loop also terminates, but it
only has RecvError and can't show a meaningful error. As a result,
rust-analyzer would incorrectly claim that the client forgot to
shutdown.

```
$ buggy_lsp_client | rust-analyzer
Error: client exited without proper shutdown sequence
```

Instead, include both error messages when the server shuts down.
2024-05-08 16:53:30 -07:00
..
2024-04-01 17:55:56 +02:00
2024-04-06 13:12:07 +02:00
2024-04-01 17:55:56 +02:00
2024-04-18 11:00:22 +02:00
2024-03-19 15:39:00 +01:00
2024-03-21 20:08:30 +01:00