diff --git a/Userland/Utilities/pixelflut.cpp b/Userland/Utilities/pixelflut.cpp index a087bd5ef75..a2b4eb2ae56 100644 --- a/Userland/Utilities/pixelflut.cpp +++ b/Userland/Utilities/pixelflut.cpp @@ -118,7 +118,12 @@ ErrorOr Client::send_current_pixel() auto hex_without_hash = hex.substring(1); // PX - TRY(m_socket->write_formatted("PX {} {} {}\n", m_current_point.x() + m_image_offset.x(), m_current_point.y() + m_image_offset.y(), hex_without_hash)); + while (true) { + auto result = m_socket->write_formatted("PX {} {} {}\n", m_current_point.x() + m_image_offset.x(), m_current_point.y() + m_image_offset.y(), hex_without_hash); + // Very contested servers will cause frequent EAGAIN errors. + if (!result.is_error() || result.error().code() != EAGAIN) + break; + } return {}; }