summaryrefslogtreecommitdiffstats
path: root/daemon/device.c
diff options
context:
space:
mode:
authorGravatar Peter Wu2014-04-20 00:56:37 +0200
committerGravatar Nikias Bassen2014-05-07 01:46:33 +0200
commit1a57e4ad05fae295f2892e1aeae462cbaaded9a3 (patch)
tree0ed4c42ec65385fdfe8cfc11d1b67ca933754001 /daemon/device.c
parentb27e6ffe7233123fc99a26723443705595e925de (diff)
downloadusbmuxd-1a57e4ad05fae295f2892e1aeae462cbaaded9a3.tar.gz
usbmuxd-1a57e4ad05fae295f2892e1aeae462cbaaded9a3.tar.bz2
Fix connection abort if device buffer is full
When trying to upload a IPSW filesystem to an iPad, the process would randomly stop somewhere at 3% or 10%. It is possible that the receive buffer of the iPad is full. To prevent erroring out because size == conn->sendable == 0, skip reading from the client. There is a similar case where the clients is ready to accept data, but the device has no data to send. Apply a similar fix there. Hopefully the device is fast enough to reply in the next main loop iteration, otherwise the CPU usage of usbmux will spike because the client socket is ready while there is no data to process...
Diffstat (limited to 'daemon/device.c')
0 files changed, 0 insertions, 0 deletions