clang compiler warnings: Fix -Wself-assign
authorMatthew Jordan <mjordan@digium.com>
Sat, 28 Mar 2015 12:48:45 +0000 (12:48 +0000)
committerMatthew Jordan <mjordan@digium.com>
Sat, 28 Mar 2015 12:48:45 +0000 (12:48 +0000)
Assigning a variable to itself isn't super useful. However, the WAV format
modules make use of this in order to perform byte endian checks. This patch
works around the warning by only performing the self assignment if we are
going to do more than just assign it to ourselves. Which is odd, but true.

Review: https://reviewboard.asterisk.org/r/4544/

ASTERISK-24917
Reported by: dkdegroot
patches:
  rb4544.patch submitted by dkdegroot (License 6600)
........

Merged revisions 433690 from http://svn.asterisk.org/svn/asterisk/branches/11
........

Merged revisions 433691 from http://svn.asterisk.org/svn/asterisk/branches/13

git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@433692 65c4cc65-6c06-0410-ace0-fbb531ad65f3

formats/format_wav.c
formats/format_wav_gsm.c

index 27da015..90ef986 100644 (file)
@@ -64,14 +64,14 @@ struct wav_desc {   /* format-specific parameters */
 #define ltohs(b) (b)
 #else
 #if __BYTE_ORDER == __BIG_ENDIAN
-#define htoll(b)  \
-          (((((b)      ) & 0xFF) << 24) | \
-              ((((b) >>  8) & 0xFF) << 16) | \
-                  ((((b) >> 16) & 0xFF) <<  8) | \
-                  ((((b) >> 24) & 0xFF)      ))
+#define htoll(b) \
+       (((((b)      ) & 0xFF) << 24) | \
+       ((( (b) >>  8) & 0xFF) << 16) | \
+       ((( (b) >> 16) & 0xFF) <<  8) | \
+       ((( (b) >> 24) & 0xFF)      ))
 #define htols(b) \
-          (((((b)      ) & 0xFF) << 8) | \
-                  ((((b) >> 8) & 0xFF)      ))
+       (((((b)      ) & 0xFF) <<  8) | \
+       ((( (b) >>  8) & 0xFF)      ))
 #define ltohl(b) htoll(b)
 #define ltohs(b) htols(b)
 #else
@@ -110,8 +110,8 @@ static int check_header_fmt(FILE *f, int hsize, int hz)
                return -1;
        }
        if (((ltohl(freq) != 8000) && (ltohl(freq) != 16000)) ||
-           ((ltohl(freq) == 8000) && (hz != 8000)) ||
-           ((ltohl(freq) == 16000) && (hz != 16000))) {
+               ((ltohl(freq) == 8000) && (hz != 8000)) ||
+               ((ltohl(freq) == 16000) && (hz != 16000))) {
                ast_log(LOG_WARNING, "Unexpected frequency mismatch %d (expecting %d)\n", ltohl(freq),hz);
                return -1;
        }
@@ -153,7 +153,9 @@ static int check_header(FILE *f, int hz)
                ast_log(LOG_WARNING, "Read failed (size)\n");
                return -1;
        }
+#if __BYTE_ORDER == __BIG_ENDIAN
        size = ltohl(size);
+#endif
        if (fread(&formtype, 1, 4, f) != 4) {
                ast_log(LOG_WARNING, "Read failed (formtype)\n");
                return -1;
@@ -170,30 +172,32 @@ static int check_header(FILE *f, int hz)
        for(;;)
        { 
                char buf[4];
-           
-           /* Begin data chunk */
-           if (fread(&buf, 1, 4, f) != 4) {
+               
+               /* Begin data chunk */
+               if (fread(&buf, 1, 4, f) != 4) {
                        ast_log(LOG_WARNING, "Read failed (block header format)\n");
                        return -1;
-           }
-           /* Data has the actual length of data in it */
-           if (fread(&data, 1, 4, f) != 4) {
+               }
+               /* Data has the actual length of data in it */
+               if (fread(&data, 1, 4, f) != 4) {
                        ast_log(LOG_WARNING, "Read failed (block '%.4s' header length)\n", buf);
                        return -1;
-           }
-           data = ltohl(data);
+               }
+#if __BYTE_ORDER == __BIG_ENDIAN
+               data = ltohl(data);
+#endif
                if (memcmp(&buf, "fmt ", 4) == 0) {
                        if (check_header_fmt(f, data, hz))
                                return -1;
                        continue;
                }
-           if(memcmp(buf, "data", 4) == 0 ) 
+               if(memcmp(buf, "data", 4) == 0 ) 
                        break;
                ast_log(LOG_DEBUG, "Skipping unknown block '%.4s'\n", buf);
-           if (fseek(f,data,SEEK_CUR) == -1 ) {
+               if (fseek(f,data,SEEK_CUR) == -1 ) {
                        ast_log(LOG_WARNING, "Failed to skip '%.4s' block: %d\n", buf, data);
                        return -1;
-           }
+               }
        }
 #if 0
        curpos = lseek(fd, 0, SEEK_CUR);
@@ -461,13 +465,14 @@ static int wav_seek(struct ast_filestream *fs, off_t sample_offset, int whence)
                return -1;
        }
 
-       if (whence == SEEK_SET)
+       if (whence == SEEK_SET) {
                offset = samples + min;
-       else if (whence == SEEK_CUR || whence == SEEK_FORCECUR)
+       } else if (whence == SEEK_CUR || whence == SEEK_FORCECUR) {
                offset = samples + cur;
-       else if (whence == SEEK_END)
+       } else if (whence == SEEK_END) {
                offset = max - samples;
-        if (whence != SEEK_FORCECUR) {
+       }
+       if (whence != SEEK_FORCECUR) {
                offset = (offset > max)?max:offset;
        }
        /* always protect the header space. */
index 594989c..06597ab 100644 (file)
@@ -74,14 +74,14 @@ struct wavg_desc {
 #define ltohs(b) (b)
 #else
 #if __BYTE_ORDER == __BIG_ENDIAN
-#define htoll(b)  \
-          (((((b)      ) & 0xFF) << 24) | \
-              ((((b) >>  8) & 0xFF) << 16) | \
-                  ((((b) >> 16) & 0xFF) <<  8) | \
-                  ((((b) >> 24) & 0xFF)      ))
+#define htoll(b) \
+       (((((b)      ) & 0xFF) << 24) | \
+       ((( (b) >>  8) & 0xFF) << 16) | \
+       ((( (b) >> 16) & 0xFF) <<  8) | \
+       ((( (b) >> 24) & 0xFF)      ))
 #define htols(b) \
-          (((((b)      ) & 0xFF) << 8) | \
-                  ((((b) >> 8) & 0xFF)      ))
+       (((((b)      ) & 0xFF) <<  8) | \
+       ((( (b) >>  8) & 0xFF)      ))
 #define ltohl(b) htoll(b)
 #define ltohs(b) htols(b)
 #else
@@ -105,7 +105,9 @@ static int check_header(FILE *f)
                ast_log(LOG_WARNING, "Read failed (size)\n");
                return -1;
        }
+#if __BYTE_ORDER == __BIG_ENDIAN
        size = ltohl(size);
+#endif
        if (fread(&formtype, 1, 4, f) != 4) {
                ast_log(LOG_WARNING, "Read failed (formtype)\n");
                return -1;