diff options
author | Max Kellermann <max@duempel.org> | 2008-09-07 13:51:50 +0200 |
---|---|---|
committer | Max Kellermann <max@duempel.org> | 2008-09-07 13:51:50 +0200 |
commit | 4ddc0a48e2e53acc58990ec72e907a136e51d77e (patch) | |
tree | a92187be3b042e2a89923d767e85d5bb99b09739 /src/command.c | |
parent | f7e414d9347aaf2397f883181c8bdb6959380143 (diff) | |
download | mpd-4ddc0a48e2e53acc58990ec72e907a136e51d77e.tar.gz mpd-4ddc0a48e2e53acc58990ec72e907a136e51d77e.tar.xz mpd-4ddc0a48e2e53acc58990ec72e907a136e51d77e.zip |
audio: don't pass "fd" to {en,dis}ableAudioDevice()
No protocol code in the audio output library.
Diffstat (limited to '')
-rw-r--r-- | src/command.c | 18 |
1 files changed, 14 insertions, 4 deletions
diff --git a/src/command.c b/src/command.c index c1422d2c0..9b579e37d 100644 --- a/src/command.c +++ b/src/command.c @@ -1177,21 +1177,31 @@ static int handleCrossfade(int fd, mpd_unused int *permission, static int handleEnableDevice(int fd, mpd_unused int *permission, mpd_unused int argc, char *argv[]) { - int device; + int device, ret; if (check_int(fd, &device, argv[1], check_non_negative, argv[1]) < 0) return -1; - return enableAudioDevice(fd, device); + + ret = enableAudioDevice(device); + if (ret == -1) + commandError(fd, ACK_ERROR_NO_EXIST, "No such audio output"); + + return ret; } static int handleDisableDevice(int fd, mpd_unused int *permission, mpd_unused int argc, char *argv[]) { - int device; + int device, ret; if (check_int(fd, &device, argv[1], check_non_negative, argv[1]) < 0) return -1; - return disableAudioDevice(fd, device); + + ret = disableAudioDevice(device); + if (ret == -1) + commandError(fd, ACK_ERROR_NO_EXIST, "No such audio output"); + + return ret; } static int handleDevices(int fd, mpd_unused int *permission, |