[easytag] Fix libapetag unused result warnings, bug 699979
- From: David King <davidk src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [easytag] Fix libapetag unused result warnings, bug 699979
- Date: Thu, 9 May 2013 20:22:09 +0000 (UTC)
commit 95d34d6981afe72f6f0a1b30596f6005519d34e3
Author: David King <amigadave amigadave com>
Date: Thu May 9 21:20:45 2013 +0100
Fix libapetag unused result warnings, bug 699979
src/libapetag/apetaglib.c | 13 +++++++++++--
src/libapetag/info_mac.c | 6 +++++-
src/libapetag/info_mpc.c | 6 +++++-
src/libapetag/is_tag.c | 24 ++++++++++++++++++++----
4 files changed, 41 insertions(+), 8 deletions(-)
---
diff --git a/src/libapetag/apetaglib.c b/src/libapetag/apetaglib.c
index 2841591..6f5d3b1 100644
--- a/src/libapetag/apetaglib.c
+++ b/src/libapetag/apetaglib.c
@@ -916,7 +916,13 @@ apetag_save (char *filename, apetag *mem_cnt, int flag)
if (id3v1) {
fseek (fp, -128, SEEK_END);
- fread (&id3v1_tag, 1, sizeof (struct _id3v1Tag), fp);
+ if (fread (&id3v1_tag, 1, sizeof (struct _id3v1Tag), fp)
+ != sizeof (struct _id3v1Tag))
+ {
+ PRINT_ERR ("ERROR->apetaglib->apetag_save::fread");
+ fclose (fp);
+ return ATL_FREAD;
+ }
skipBytes += id3v1;
}
skipBytes += apeTag;
@@ -1033,7 +1039,10 @@ apetag_save (char *filename, apetag *mem_cnt, int flag)
fflush (fp);
fclose (fp);
/* ftruncate don't work */
- truncate (filename, newFileSize);
+ if (truncate (filename, newFileSize) == -1)
+ {
+ PRINT_ERR ("FATAL_ERROR->libapetag->apetag_save::fwrite [file not truncated]");
+ }
} else { /* !!SAVE_FAKE_SAVE */
libapetag_print_mem_cnt (mem_cnt);
}
diff --git a/src/libapetag/info_mac.c b/src/libapetag/info_mac.c
index 9410eb8..fb19f97 100644
--- a/src/libapetag/info_mac.c
+++ b/src/libapetag/info_mac.c
@@ -104,7 +104,11 @@ info_mac_read(const char *fn, StreamInfoMac * Info)
// skip id3v2
SkipSizeID3 = is_id3v2(tmpFile);
fseek(tmpFile, SkipSizeID3, SEEK_SET);
- fread((void *) HeaderData, sizeof (int), 16, tmpFile);
+ if (fread ((void *) HeaderData, sizeof (int), 16, tmpFile) != 16)
+ {
+ fclose (tmpFile);
+ return 1;
+ }
fseek(tmpFile, 0, SEEK_END);
Info->FileSize = ftell(tmpFile);
fclose(tmpFile);
diff --git a/src/libapetag/info_mpc.c b/src/libapetag/info_mpc.c
index a7081d8..94070fa 100644
--- a/src/libapetag/info_mpc.c
+++ b/src/libapetag/info_mpc.c
@@ -77,7 +77,11 @@ info_mpc_read(const char *fn, StreamInfoMpc * Info)
// skip id3v2
SkipSizeID3=is_id3v2(tmpFile);
fseek(tmpFile,SkipSizeID3 , SEEK_SET);
- fread((void *) HeaderData, sizeof (int), 16, tmpFile);
+ if (fread ((void *) HeaderData, sizeof (int), 16, tmpFile) != 16)
+ {
+ fclose (tmpFile);
+ return 1;
+ }
fseek(tmpFile, 0, SEEK_END);
Info->FileSize=ftell(tmpFile);
// stream size
diff --git a/src/libapetag/is_tag.c b/src/libapetag/is_tag.c
index d55fa02..7cef2b1 100644
--- a/src/libapetag/is_tag.c
+++ b/src/libapetag/is_tag.c
@@ -58,7 +58,11 @@ is_id3v1 (FILE * fp)
n++;
memset (buf, 0, sizeof (buf));
fseek (fp, ((-128)*n) - 3 , SEEK_END);
- fread (&buf, 1, sizeof (buf), fp);
+ if (fread (&buf, 1, sizeof (buf), fp) != sizeof (buf))
+ {
+ fseek (fp, savedFilePosition, SEEK_SET);
+ return 0;
+ }
if (memcmp (buf, "APETAGEX",8) == 0) /*APE.TAG.EX*/
break;
} while (memcmp (buf+3, "TAG", 3) == 0);
@@ -87,7 +91,11 @@ is_id3v2 (FILE * fp)
do {
memset (buf, 0, sizeof (buf));
fseek (fp, id3v2size, SEEK_SET);
- fread (&buf, 1, sizeof (buf), fp);
+ if (fread (&buf, 1, sizeof (buf), fp) != sizeof (buf))
+ {
+ fseek (fp, savedFilePosition, SEEK_SET);
+ return 0;
+ }
if (memcmp (buf, "ID3", 3) != 0) {
break;
}
@@ -117,7 +125,11 @@ is_ape_ver (FILE * fp)
memset (buf, 0, sizeof (buf));
fseek (fp, (is_id3v1 (fp) ? -32 - 128 : -32), SEEK_END);
- fread (&buf, 1, sizeof (buf), fp);
+ if (fread (&buf, 1, sizeof (buf), fp) != sizeof (buf))
+ {
+ fseek (fp, savedFilePosition, SEEK_SET);
+ return 0;
+ }
if (memcmp (buf, "APETAGEX", 8) != 0) {
fseek (fp, savedFilePosition, SEEK_SET);
return 0;
@@ -145,7 +157,11 @@ is_ape (FILE * fp)
memset (buf, 0, sizeof (buf));
fseek (fp, (is_id3v1 (fp) ? -32 - 128 : -32), SEEK_END);
- fread (&buf, 1, sizeof (buf), fp);
+ if (fread (&buf, 1, sizeof (buf), fp) != sizeof (buf))
+ {
+ fseek (fp, savedFilePosition, SEEK_SET);
+ return 0;
+ }
if (memcmp (buf, "APETAGEX", 8) != 0) {
fseek (fp, savedFilePosition, SEEK_SET);
return 0;
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]