Changed types and added casts so that build is clean with gcc -Wsign-compare.
[mmh] / uip / comp.c
index ce76cd8..87953ad 100644 (file)
@@ -43,6 +43,8 @@ main(int argc, char **argv)
        char *folder = NULL, *msg = NULL, buf[BUFSIZ];
        char drft[BUFSIZ], **argp, **arguments;
        struct msgs *mp = NULL;
+       char *fmtstr;
+
 
 #ifdef LOCALE
        setlocale(LC_ALL, "");
@@ -162,14 +164,14 @@ main(int argc, char **argv)
                close(out);
 
        } else {
-               in = open_form(&form, components);
-
+               fmtstr = new_fs(form, components);
                strncpy(drft, m_draft(seq_beyond), sizeof(drft));
                if ((out = creat(drft, m_gmprot())) == NOTOK) {
                        adios(drft, "unable to create");
                }
-               cpydata(in, out, form, drft);
-               close(in);
+               if (write(out, fmtstr, strlen(fmtstr)) != (int)strlen(fmtstr)) {
+                       adios(drft, "error writing");
+               }
                close(out);
        }