diff options
| author | cirakg <cirakg@cirakg.xyz> | 2026-11-03 00:28:31 +0100 |
|---|---|---|
| committer | cirakg <cirakg@cirakg.xyz> | 2026-11-03 00:28:31 +0100 |
| commit | 3e29ad38277195a2930b6ae89dba6d3e698c17e2 (patch) | |
| tree | 209cc84b76e98c1eaa29d8540cdf9eb1f5f4dfd5 /src/video_core/vulkan_common/vulkan_instance.cpp | |
| parent | 78e0a12180a71adf8dffc2c2f6697a0a0735d5ea (diff) | |
network: use the socket type for room stream reads and wake all readers
socket(AF_INET, SOCK_STREAM, 0) leaves the protocol unspecified, so the
TCP checks in ProxySocket::Recv and ReceivePacket missed such sockets.
recv() then waited for the timeout and returned EAGAIN instead of end of
stream, and partial reads dropped the rest of the packet. Keep the socket
type and use it for these checks. The protocol stays as it is, because it
is sent to other room members.
A MSG_PEEK reader leaves the packet queued, so notify every waiter when a
packet arrives instead of only one.
Assisted-by: Claude Opus 5.5 (investigation and implementation)
Diffstat (limited to 'src/video_core/vulkan_common/vulkan_instance.cpp')
0 files changed, 0 insertions, 0 deletions
