Changed types and added casts so that build is clean with gcc -Wsign-compare.
[mmh] / uip / burst.c
index 4c50485..d0d06b6 100644 (file)
@@ -216,11 +216,13 @@ find_delim(int msgnum, struct smsg *smsgs)
 
                for (c = 0; fgets(buffer, sizeof(buffer), in); c = buffer[0]) {
                        if (strncmp(buffer, delim3, ld3) == 0
-                                       && (msgp == 1 || c == '\n')
-                                       && ((cc = peekc(in)) == '\n' ||
-                                       cc == EOF))
-                               break;
-                       else
+                                       && (msgp == 1 || c == '\n')) {
+                               cc = getc(in);
+                               ungetc(cc, in);
+                               if (cc == '\n' || cc == EOF) {
+                                       break;
+                               }
+                       } else
                                pos += (long) strlen(buffer);
                }
 
@@ -229,13 +231,6 @@ find_delim(int msgnum, struct smsg *smsgs)
                        smsgs[msgp++].s_stop = (c == '\n' && wasdlm) ?
                                        pos - 1 : pos;
                if (feof(in)) {
-#if 0
-                       if (wasdlm) {
-                               smsgs[msgp - 1].s_stop -=
-                                               ((long) strlen(buffer) + 1);
-                               msgp++;  /* fake "End of XXX Digest" */
-                       }
-#endif
                        break;
                }
                pos += (long) strlen(buffer);
@@ -265,7 +260,7 @@ burst(struct msgs **mpp, int msgnum, struct smsg *smsgs, int numburst,
                adios(msgnam, "unable to read message");
 
        mode = fstat(fileno(in), &st) != NOTOK ?
-                       (st.st_mode & 0777) : m_gmprot();
+                       (int)(st.st_mode & 0777) : m_gmprot();
        mp = *mpp;
 
        /*