aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMax Kellermann <max@duempel.org>2008-03-26 10:37:17 +0000
committerEric Wong <normalperson@yhbt.net>2008-03-26 10:37:17 +0000
commit66fe58064295f838f894758d92b087100ce022aa (patch)
treeb0f967f7e55bccb9d1390c23c0333d047384eaf3
parent13c17c3d942f1074d76caeaf39ebe0d5017593e9 (diff)
downloadmpd-66fe58064295f838f894758d92b087100ce022aa.tar.gz
mpd-66fe58064295f838f894758d92b087100ce022aa.tar.xz
mpd-66fe58064295f838f894758d92b087100ce022aa.zip
explicitly downcast
Tools like "sparse" check for missing downcasts, since implicit cast may be dangerous. Although that does not change the compiler result, it may make the code more readable (IMHO), because you always see when there may be data cut off. git-svn-id: https://svn.musicpd.org/mpd/trunk@7196 09075e82-0dd4-0310-85a5-a0d7c8717e4f
Diffstat (limited to '')
-rw-r--r--src/audio.c8
-rw-r--r--src/audioOutputs/audioOutput_alsa.c2
-rw-r--r--src/audioOutputs/audioOutput_oss.c4
-rw-r--r--src/inputPlugins/_flac_common.c6
-rw-r--r--src/inputPlugins/audiofile_plugin.c8
5 files changed, 14 insertions, 14 deletions
diff --git a/src/audio.c b/src/audio.c
index 145e6be3c..b0c731639 100644
--- a/src/audio.c
+++ b/src/audio.c
@@ -197,7 +197,7 @@ int parseAudioConfig(AudioFormat * audioFormat, char *conf)
return -1;
}
- audioFormat->bits = strtol(test + 1, &test, 10);
+ audioFormat->bits = (mpd_sint8)strtol(test + 1, &test, 10);
if (*test != ':') {
ERROR("error parsing audio output format: %s\n", conf);
@@ -213,7 +213,7 @@ int parseAudioConfig(AudioFormat * audioFormat, char *conf)
return -1;
}
- audioFormat->channels = strtol(test + 1, &test, 10);
+ audioFormat->channels = (mpd_sint8)strtol(test + 1, &test, 10);
if (*test != '\0') {
ERROR("error parsing audio output format: %s\n", conf);
@@ -428,7 +428,7 @@ void sendMetadataToAudioDevice(MpdTag * tag)
int enableAudioDevice(int fd, int device)
{
- if (device < 0 || device >= audioOutputArraySize) {
+ if (device >= audioOutputArraySize) {
commandError(fd, ACK_ERROR_ARG, "audio output device id %i "
"doesn't exist\n", device);
return -1;
@@ -442,7 +442,7 @@ int enableAudioDevice(int fd, int device)
int disableAudioDevice(int fd, int device)
{
- if (device < 0 || device >= audioOutputArraySize) {
+ if (device >= audioOutputArraySize) {
commandError(fd, ACK_ERROR_ARG, "audio output device id %i "
"doesn't exist\n", device);
return -1;
diff --git a/src/audioOutputs/audioOutput_alsa.c b/src/audioOutputs/audioOutput_alsa.c
index 1f90c6ee0..3da3e470d 100644
--- a/src/audioOutputs/audioOutput_alsa.c
+++ b/src/audioOutputs/audioOutput_alsa.c
@@ -215,7 +215,7 @@ configure_hw:
snd_strerror(-err));
goto fail;
}
- audioFormat->channels = channels;
+ audioFormat->channels = (mpd_sint8)channels;
err = snd_pcm_hw_params_set_rate_near(ad->pcmHandle, hwparams,
&sampleRate, NULL);
diff --git a/src/audioOutputs/audioOutput_oss.c b/src/audioOutputs/audioOutput_oss.c
index b2d913d6b..1051869f5 100644
--- a/src/audioOutputs/audioOutput_oss.c
+++ b/src/audioOutputs/audioOutput_oss.c
@@ -485,9 +485,9 @@ static int oss_openDevice(AudioOutput * audioOutput)
OssData *od = audioOutput->data;
AudioFormat *audioFormat = &audioOutput->outAudioFormat;
- od->channels = audioFormat->channels;
+ od->channels = (mpd_sint8)audioFormat->channels;
od->sampleRate = audioFormat->sampleRate;
- od->bits = audioFormat->bits;
+ od->bits = (mpd_sint8)audioFormat->bits;
if ((ret = oss_open(audioOutput)) < 0)
return ret;
diff --git a/src/inputPlugins/_flac_common.c b/src/inputPlugins/_flac_common.c
index 0a2adf6b7..3b351d3a7 100644
--- a/src/inputPlugins/_flac_common.c
+++ b/src/inputPlugins/_flac_common.c
@@ -66,7 +66,7 @@ static int flacFindVorbisCommentFloat(const FLAC__StreamMetadata * block,
comments[offset].entry[pos]);
tmp = p[len];
p[len] = '\0';
- *fl = atof((char *)p);
+ *fl = (float)atof((char *)p);
p[len] = tmp;
return 1;
@@ -170,9 +170,9 @@ void flac_metadata_common_cb(const FLAC__StreamMetadata * block,
switch (block->type) {
case FLAC__METADATA_TYPE_STREAMINFO:
- dc->audioFormat.bits = si->bits_per_sample;
+ dc->audioFormat.bits = (mpd_sint8)si->bits_per_sample;
dc->audioFormat.sampleRate = si->sample_rate;
- dc->audioFormat.channels = si->channels;
+ dc->audioFormat.channels = (mpd_sint8)si->channels;
dc->totalTime = ((float)si->total_samples) / (si->sample_rate);
getOutputAudioFormat(&(dc->audioFormat),
&(data->cb->audioFormat));
diff --git a/src/inputPlugins/audiofile_plugin.c b/src/inputPlugins/audiofile_plugin.c
index 1213d31e5..3ca9a14c3 100644
--- a/src/inputPlugins/audiofile_plugin.c
+++ b/src/inputPlugins/audiofile_plugin.c
@@ -67,9 +67,9 @@ static int audiofile_decode(OutputBuffer * cb, DecoderControl * dc, char *path)
afSetVirtualSampleFormat(af_fp, AF_DEFAULT_TRACK,
AF_SAMPFMT_TWOSCOMP, 16);
afGetVirtualSampleFormat(af_fp, AF_DEFAULT_TRACK, &fs, &bits);
- dc->audioFormat.bits = bits;
- dc->audioFormat.sampleRate = afGetRate(af_fp, AF_DEFAULT_TRACK);
- dc->audioFormat.channels = afGetVirtualChannels(af_fp, AF_DEFAULT_TRACK);
+ dc->audioFormat.bits = (mpd_uint8)bits;
+ dc->audioFormat.sampleRate = (unsigned int)afGetRate(af_fp, AF_DEFAULT_TRACK);
+ dc->audioFormat.channels = (mpd_uint8)afGetVirtualChannels(af_fp, AF_DEFAULT_TRACK);
getOutputAudioFormat(&(dc->audioFormat), &(cb->audioFormat));
frame_count = afGetFrameCount(af_fp, AF_DEFAULT_TRACK);
@@ -77,7 +77,7 @@ static int audiofile_decode(OutputBuffer * cb, DecoderControl * dc, char *path)
dc->totalTime =
((float)frame_count / (float)dc->audioFormat.sampleRate);
- bitRate = st.st_size * 8.0 / dc->totalTime / 1000.0 + 0.5;
+ bitRate = (mpd_uint16)(st.st_size * 8.0 / dc->totalTime / 1000.0 + 0.5);
if (dc->audioFormat.bits != 8 && dc->audioFormat.bits != 16) {
ERROR("Only 8 and 16-bit files are supported. %s is %i-bit\n",