From a8a6c64b4d135e3c8c0411b2571f7bf65d724d8b Mon Sep 17 00:00:00 2001 From: Nikias Bassen Date: Thu, 19 Nov 2020 03:33:02 +0100 Subject: idevice: Handle -EAGAIN in case usbmuxd_send() returns it --- src/idevice.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/src/idevice.c b/src/idevice.c index 47c9ab4..c71c49b 100644 --- a/src/idevice.c +++ b/src/idevice.c @@ -527,7 +527,10 @@ static idevice_error_t internal_connection_send(idevice_connection_t connection, } if (connection->type == CONNECTION_USBMUXD) { - int res = usbmuxd_send((int)(long)connection->data, data, len, sent_bytes); + int res; + do { + res = usbmuxd_send((int)(long)connection->data, data, len, sent_bytes); + } while (res == -EAGAIN); if (res < 0) { debug_info("ERROR: usbmuxd_send returned %d (%s)", res, strerror(-res)); return IDEVICE_E_UNKNOWN_ERROR; -- cgit v1.1-32-gdbae