* Fix warn_unused_result compiler warnings with FORTIFY_SOURCE defined.

This commit is contained in:
Justin Maggard
2012-03-28 08:15:15 +00:00
parent 29738ed064
commit 40f3664390
8 changed files with 79 additions and 72 deletions

View File

@ -82,7 +82,8 @@ fget_byte(FILE *fp)
{
__u8 d;
(void)fread(&d, sizeof(d), 1, fp);
if (!fread(&d, sizeof(d), 1, fp))
return 0;
return d;
}
@ -91,7 +92,8 @@ fget_le16(FILE *fp)
{
__u16 d;
(void)fread(&d, sizeof(d), 1, fp);
if (!fread(&d, sizeof(d), 1, fp))
return 0;
d = le16_to_cpu(d);
return d;
}
@ -101,7 +103,8 @@ fget_le32(FILE *fp)
{
__u32 d;
(void)fread(&d, sizeof(d), 1, fp);
if (!fread(&d, sizeof(d), 1, fp))
return 0;
d = le32_to_cpu(d);
return d;
}

View File

@ -24,20 +24,6 @@
* This file is derived from mt-daap project.
*/
// _mac_to_unix_time
static time_t
_mac_to_unix_time(int t)
{
struct timeval tv;
struct timezone tz;
gettimeofday(&tv, &tz);
return (t - (365L * 66L * 24L * 60L * 60L + 17L * 60L * 60L * 24L) +
(tz.tz_minuteswest * 60));
}
// _aac_findatom:
static long
@ -278,7 +264,6 @@ _get_aacfileinfo(char *file, struct song_metadata *psong)
off_t file_size;
int ms;
unsigned char buffer[2];
int time = 0;
aac_object_type_t profile_id = 0;
psong->vbr_scale = -1;
@ -298,13 +283,10 @@ _get_aacfileinfo(char *file, struct song_metadata *psong)
atom_offset = _aac_lookforatom(infile, "moov:mvhd", (unsigned int*)&atom_length);
if(atom_offset != -1)
{
fseek(infile, 8, SEEK_CUR);
fread((void *)&time, sizeof(int), 1, infile);
time = ntohl(time);
// slimserver prefer to use filesystem time
//psong->time_modified = _mac_to_unix_time(time);
fread((void*)&sample_size, 1, sizeof(int), infile);
fread((void*)&samples, 1, sizeof(int), infile);
fseek(infile, 12, SEEK_CUR);
if(!fread((void*)&sample_size, 1, sizeof(int), infile) ||
!fread((void*)&samples, 1, sizeof(int), infile))
return -1;
sample_size = ntohl(sample_size);
samples = ntohl(samples);
@ -327,9 +309,8 @@ _get_aacfileinfo(char *file, struct song_metadata *psong)
atom_offset = _aac_lookforatom(infile, "moov:trak:mdia:minf:stbl:stsd:alac", (unsigned int*)&atom_length);
if(atom_offset != -1) {
fseek(infile, atom_offset + 32, SEEK_SET);
fread(buffer, sizeof(unsigned char), 2, infile);
psong->samplerate = (buffer[0] << 8) | (buffer[1]);
if (fread(buffer, sizeof(unsigned char), 2, infile) == 2)
psong->samplerate = (buffer[0] << 8) | (buffer[1]);
goto bad_esds;
}
@ -338,9 +319,8 @@ _get_aacfileinfo(char *file, struct song_metadata *psong)
if(atom_offset != -1)
{
fseek(infile, atom_offset + 32, SEEK_SET);
fread(buffer, sizeof(unsigned char), 2, infile);
psong->samplerate = (buffer[0] << 8) | (buffer[1]);
if(fread(buffer, sizeof(unsigned char), 2, infile) == 2)
psong->samplerate = (buffer[0] << 8) | (buffer[1]);
fseek(infile, 2, SEEK_CUR);
@ -352,25 +332,24 @@ _get_aacfileinfo(char *file, struct song_metadata *psong)
// skip the version number
fseek(infile, atom_offset + 4, SEEK_CUR);
// should be 0x03, to signify the descriptor type (section)
fread((void *)&buffer, 1, 1, infile);
if( (buffer[0] != 0x03) || (_aac_check_extended_descriptor(infile) != 0) )
if( !fread((void *)&buffer, 1, 1, infile) || (buffer[0] != 0x03) || (_aac_check_extended_descriptor(infile) != 0) )
goto bad_esds;
fseek(infile, 4, SEEK_CUR);
fread((void *)&buffer, 1, 1, infile);
if( (buffer[0] != 0x04) || (_aac_check_extended_descriptor(infile) != 0) )
if( !fread((void *)&buffer, 1, 1, infile) || (buffer[0] != 0x04) || (_aac_check_extended_descriptor(infile) != 0) )
goto bad_esds;
fseek(infile, 10, SEEK_CUR); // 10 bytes into section 4 should be average bitrate. max bitrate is 6 bytes in.
fread((void *)&bitrate, sizeof(unsigned int), 1, infile);
psong->bitrate = ntohl(bitrate);
fread((void *)&buffer, 1, 1, infile);
if( (buffer[0] != 0x05) || (_aac_check_extended_descriptor(infile) != 0) )
if(fread((void *)&bitrate, sizeof(unsigned int), 1, infile))
psong->bitrate = ntohl(bitrate);
if( !fread((void *)&buffer, 1, 1, infile) || (buffer[0] != 0x05) || (_aac_check_extended_descriptor(infile) != 0) )
goto bad_esds;
fseek(infile, 1, SEEK_CUR); // 1 bytes into section 5 should be the setup data
fread((void *)&buffer, 2, 1, infile);
profile_id = (buffer[0] >> 3); // first 5 bits of setup data is the Audo Profile ID
/* Frequency index: (((buffer[0] & 0x7) << 1) | (buffer[1] >> 7))) */
samples = ((buffer[1] >> 3) & 0xF);
psong->channels = (samples == 7 ? 8 : samples);
if(fread((void *)&buffer, 2, 1, infile))
{
profile_id = (buffer[0] >> 3); // first 5 bits of setup data is the Audo Profile ID
/* Frequency index: (((buffer[0] & 0x7) << 1) | (buffer[1] >> 7))) */
samples = ((buffer[1] >> 3) & 0xF);
psong->channels = (samples == 7 ? 8 : samples);
}
}
}
bad_esds:

View File

@ -23,4 +23,3 @@
static int _get_aactags(char *file, struct song_metadata *psong);
static int _get_aacfileinfo(char *file, struct song_metadata *psong);
static off_t _aac_lookforatom(FILE *aac_fp, char *atom_path, unsigned int *atom_length);
static time_t _mac_to_unix_time(int t) __attribute__((unused));

View File

@ -208,7 +208,8 @@ _asf_read_header_extension(FILE *fp, struct song_metadata *psong, __u32 size)
if(size < sizeof(asf_header_extension_t))
return -1;
fread(&ext.Reserved1, 1, sizeof(ext.Reserved1), fp);
if(sizeof(ext.Reserved1) != fread(&ext.Reserved1, 1, sizeof(ext.Reserved1), fp))
return -1;
ext.Reserved2 = fget_le16(fp);
ext.DataSize = fget_le32(fp);
@ -351,11 +352,7 @@ _asf_load_picture(FILE *fp, int size, void *bm, int *bm_size)
else
{
*bm_size = size;
if(size <= *bm_size)
{
fread(bm, 1, size, fp);
}
else
if(size > *bm_size || fread(bm, 1, size, fp) != size)
{
DPRINTF(E_ERROR, L_SCANNER, "Overrun %d bytes required\n", size);
free(bm);