volume: use bool instead of int
Return true/false on success/failure, instead of 0/-1. Pass true/false instead of 1/0 for the "rel" boolean parameter.
This commit is contained in:
parent
f31c371fbd
commit
f15d879e37
|
@ -1039,33 +1039,39 @@ handle_listall(struct client *client, G_GNUC_UNUSED int argc, char *argv[])
|
||||||
static enum command_return
|
static enum command_return
|
||||||
handle_volume(struct client *client, G_GNUC_UNUSED int argc, char *argv[])
|
handle_volume(struct client *client, G_GNUC_UNUSED int argc, char *argv[])
|
||||||
{
|
{
|
||||||
int change, ret;
|
int change;
|
||||||
|
bool success;
|
||||||
|
|
||||||
if (!check_int(client, &change, argv[1], need_integer))
|
if (!check_int(client, &change, argv[1], need_integer))
|
||||||
return COMMAND_RETURN_ERROR;
|
return COMMAND_RETURN_ERROR;
|
||||||
|
|
||||||
ret = volume_level_change(change, 1);
|
success = volume_level_change(change, true);
|
||||||
if (ret == -1)
|
if (!success) {
|
||||||
command_error(client, ACK_ERROR_SYSTEM,
|
command_error(client, ACK_ERROR_SYSTEM,
|
||||||
"problems setting volume");
|
"problems setting volume");
|
||||||
|
return COMMAND_RETURN_ERROR;
|
||||||
|
}
|
||||||
|
|
||||||
return ret;
|
return COMMAND_RETURN_OK;
|
||||||
}
|
}
|
||||||
|
|
||||||
static enum command_return
|
static enum command_return
|
||||||
handle_setvol(struct client *client, G_GNUC_UNUSED int argc, char *argv[])
|
handle_setvol(struct client *client, G_GNUC_UNUSED int argc, char *argv[])
|
||||||
{
|
{
|
||||||
int level, ret;
|
int level;
|
||||||
|
bool success;
|
||||||
|
|
||||||
if (!check_int(client, &level, argv[1], need_integer))
|
if (!check_int(client, &level, argv[1], need_integer))
|
||||||
return COMMAND_RETURN_ERROR;
|
return COMMAND_RETURN_ERROR;
|
||||||
|
|
||||||
ret = volume_level_change(level, 0);
|
success = volume_level_change(level, 0);
|
||||||
if (ret == -1)
|
if (!success) {
|
||||||
command_error(client, ACK_ERROR_SYSTEM,
|
command_error(client, ACK_ERROR_SYSTEM,
|
||||||
"problems setting volume");
|
"problems setting volume");
|
||||||
|
return COMMAND_RETURN_ERROR;
|
||||||
|
}
|
||||||
|
|
||||||
return ret;
|
return COMMAND_RETURN_OK;
|
||||||
}
|
}
|
||||||
|
|
||||||
static enum command_return
|
static enum command_return
|
||||||
|
|
12
src/volume.c
12
src/volume.c
|
@ -215,7 +215,7 @@ int volume_level_get(void)
|
||||||
return -1;
|
return -1;
|
||||||
}
|
}
|
||||||
|
|
||||||
static int software_volume_change(int change, int rel)
|
static bool software_volume_change(int change, bool rel)
|
||||||
{
|
{
|
||||||
int new = change;
|
int new = change;
|
||||||
|
|
||||||
|
@ -240,10 +240,10 @@ static int software_volume_change(int change, int rel)
|
||||||
|
|
||||||
setPlayerSoftwareVolume(new);
|
setPlayerSoftwareVolume(new);
|
||||||
|
|
||||||
return 0;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
static int hardware_volume_change(int change, int rel)
|
static bool hardware_volume_change(int change, bool rel)
|
||||||
{
|
{
|
||||||
int device, count;
|
int device, count;
|
||||||
|
|
||||||
|
@ -254,10 +254,10 @@ static int hardware_volume_change(int change, int rel)
|
||||||
for (device=0; device<count ;device++) {
|
for (device=0; device<count ;device++) {
|
||||||
mixer_control_setvol(device, change, rel);
|
mixer_control_setvol(device, change, rel);
|
||||||
}
|
}
|
||||||
return 0;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
int volume_level_change(int change, int rel)
|
bool volume_level_change(int change, bool rel)
|
||||||
{
|
{
|
||||||
idle_add(IDLE_MIXER);
|
idle_add(IDLE_MIXER);
|
||||||
|
|
||||||
|
@ -267,7 +267,7 @@ int volume_level_change(int change, int rel)
|
||||||
case VOLUME_MIXER_TYPE_SOFTWARE:
|
case VOLUME_MIXER_TYPE_SOFTWARE:
|
||||||
return software_volume_change(change, rel);
|
return software_volume_change(change, rel);
|
||||||
default:
|
default:
|
||||||
return 0;
|
return true;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -20,6 +20,7 @@
|
||||||
#ifndef MPD_VOLUME_H
|
#ifndef MPD_VOLUME_H
|
||||||
#define MPD_VOLUME_H
|
#define MPD_VOLUME_H
|
||||||
|
|
||||||
|
#include <stdbool.h>
|
||||||
#include <stdio.h>
|
#include <stdio.h>
|
||||||
|
|
||||||
#define VOLUME_MIXER_OSS "oss"
|
#define VOLUME_MIXER_OSS "oss"
|
||||||
|
@ -34,7 +35,7 @@ void volume_finish(void);
|
||||||
|
|
||||||
int volume_level_get(void);
|
int volume_level_get(void);
|
||||||
|
|
||||||
int volume_level_change(int change, int rel);
|
bool volume_level_change(int change, bool rel);
|
||||||
|
|
||||||
void read_sw_volume_state(FILE *fp);
|
void read_sw_volume_state(FILE *fp);
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue