Fixed comparison to be signed instead of unsigned.
[mmh] / uip / mhshowsbr.c
index 6f511f3..550669a 100644 (file)
@@ -38,12 +38,6 @@ pid_t xpid = 0;
 static sigjmp_buf intrenv;
 
 
-/* termsbr.c */
-int SOprintf (char *, ...);
-
-/* mhparse.c */
-int pidcheck (int);
-
 /* mhmisc.c */
 int part_ok (CT, int);
 int type_ok (CT, int);
@@ -533,13 +527,13 @@ show_content_aux2 (CT ct, int serial, int alternate, char *cracked, char *buffer
        else
            list_switch (ct, -1, 1, 0, 0);
 
-       if (xpause && SOprintf ("Press <return> to show content..."))
-           printf ("Press <return> to show content...");
-
-       if (xpause) {
+       if (xpause && isatty (fileno (stdout))) {
            int intr;
            SIGNAL_HANDLER istat;
 
+           if (SOprintf ("Press <return> to show content..."))
+               printf ("Press <return> to show content...");
+
            istat = SIGNAL (SIGINT, intrser);
            if ((intr = sigsetjmp (intrenv, 1)) == OK) {
                fflush (stdout);
@@ -564,7 +558,7 @@ show_content_aux2 (CT ct, int serial, int alternate, char *cracked, char *buffer
 
     fflush (stdout);
 
-    for (i = 0; (child_id = vfork ()) == NOTOK && i < 5; i++)
+    for (i = 0; (child_id = vfork()) == NOTOK && i < 5; i++)
        sleep (5);
     switch (child_id) {
        case NOTOK:
@@ -986,7 +980,7 @@ raw:
     }
 
     if (buflen <= 0 ||
-        (ct->c_termproc && (size_t) buflen <= strlen(ct->c_termproc))) {
+        (ct->c_termproc && buflen <= (ssize_t) strlen(ct->c_termproc))) {
        /* content_error would provide a more useful error message
         * here, except that if we got overrun, it probably would
         * too.