ladybird/Libraries/LibWebSocket
Luke Wilde 9c5dff5be0 RequestServer+LibWebSocket: Drain underlying socket and resulting frames
`curl_easy_recv` must be called in a loop until it returns EAGAIN,
because it may cache data, but only activate the read notifier once.

Additionally, the data received can contain multiple WebSocket frames
and only activate the notifier once, so we have to keep reading frames
until there isn't enough data.

We also have to do this immediately after connecting a WebSocket,
since the server may immediately send data when the WebSocket opens
and before we create the read notifier.

This makes Discord login faster and more reliable, and makes Discord
activities start loading.
2025-07-22 13:55:45 +02:00
..
Impl LibTLS: Remove blocking option and simplify Options struct 2025-06-23 17:49:21 +02:00
CMakeLists.txt CMake: Rename serenity_* helper functions/macros to ladybird_* 2025-07-03 23:19:41 +02:00
ConnectionInfo.cpp
ConnectionInfo.h LibWebSocket+RequestServer: Resolve WebSocket hosts using our resolver 2025-02-20 15:04:50 -07:00
Message.h LibWebSocket: Remove meaningless const&& Message constructor 2025-03-09 11:14:20 -04:00
WebSocket.cpp RequestServer+LibWebSocket: Drain underlying socket and resulting frames 2025-07-22 13:55:45 +02:00
WebSocket.h RequestServer+LibWebSocket: Drain underlying socket and resulting frames 2025-07-22 13:55:45 +02:00