diff --git a/src/outputs.c b/src/outputs.c index 8ea05e18..84377022 100644 --- a/src/outputs.c +++ b/src/outputs.c @@ -890,7 +890,7 @@ outputs_device_flush(struct output_device *device, output_status_cb cb) ret = outputs[device->type]->device_flush(device, callback_add(device, cb)); - return device_state_update(device, ret); + return ret; // We don't change device state just because of a failed flush } void @@ -917,7 +917,7 @@ outputs_device_volume_set(struct output_device *device, output_status_cb cb) ret = outputs[device->type]->device_volume_set(device, callback_add(device, cb)); - return device_state_update(device, ret); + return ret; // We don't change device state just because of a failed volume change } int @@ -955,7 +955,7 @@ outputs_device_authorize(struct output_device *device, const char *pin, output_s ret = outputs[device->type]->device_authorize(device, pin, callback_add(device, cb)); - return device_state_update(device, ret); + return device_state_update(device, ret); // If ret < 0 then we couldn't reach the speaker } void diff --git a/src/outputs/raop.c b/src/outputs/raop.c index a7670bf0..6ee8ebe0 100644 --- a/src/outputs/raop.c +++ b/src/outputs/raop.c @@ -4752,7 +4752,7 @@ raop_device_flush(struct output_device *device, int callback_id) int ret; if (rs->state != RAOP_STATE_STREAMING) - return -1; + return 0; // No-op, nothing to flush ret = raop_send_req_flush(rs, raop_cb_flush, "flush"); if (ret < 0)