Commit e9cd872
* fix(signalling): do not crash when a forced subscription is declined
sendToStreamer() force-subscribes a player that sends a message while
unsubscribed, then forwards the message through non-null assertions on
subscribedStreamer. subscribe() can decline - most commonly because
maxSubscribers is already reached - and signals that only by leaving
subscribedStreamer unset, so the assertions throw a TypeError out of a
websocket message handler and bring the whole process down with them,
disconnecting every other player.
This is easiest to hit at --max_players 1, where the second player to
send anything is by definition over the limit.
Check the subscription took and disconnect that one player if it did
not, which is what the branch above already does when there is no
streamer to subscribe to at all.
* chore: declare wilbur in the forced-subscribe crash changeset
The fix ships to operators as Wilbur, so name it in the changeset rather
than letting it land as a bare "updated dependencies" entry. Matches the
two most recent Signalling changesets, which both list it alongside the
library.
---------
(cherry picked from commit c6e78fb)
Co-authored-by: marekl11 <55535563+marekl11@users.noreply.github.com>
1 parent 1ada332 commit e9cd872
2 files changed
Lines changed: 18 additions & 2 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
| 1 | + | |
| 2 | + | |
| 3 | + | |
| 4 | + | |
| 5 | + | |
| 6 | + | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
142 | 142 | | |
143 | 143 | | |
144 | 144 | | |
| 145 | + | |
| 146 | + | |
| 147 | + | |
| 148 | + | |
| 149 | + | |
| 150 | + | |
| 151 | + | |
| 152 | + | |
| 153 | + | |
| 154 | + | |
145 | 155 | | |
146 | 156 | | |
147 | 157 | | |
148 | 158 | | |
149 | | - | |
150 | | - | |
| 159 | + | |
| 160 | + | |
151 | 161 | | |
152 | 162 | | |
153 | 163 | | |
| |||
0 commit comments