diff --git a/usbfluxd/client.c b/usbfluxd/client.c index 6e87258..ce60515 100644 --- a/usbfluxd/client.c +++ b/usbfluxd/client.c @@ -977,8 +977,9 @@ static void process_recv(struct mux_client *client) if(client->ib_size < hdr->length) return; } - client_command(client, hdr); - client->ib_size = 0; + if (client_command(client, hdr) == 0) { + client->ib_size = 0; + } } void client_process(int fd, short events)