]> granicus.if.org Git - procps-ng/commitdiff
Some tweaks for top
authorCraig Small <csmall@enc.com.au>
Wed, 26 Oct 2011 11:31:48 +0000 (22:31 +1100)
committerCraig Small <csmall@enc.com.au>
Wed, 26 Oct 2011 11:31:48 +0000 (22:31 +1100)
tweaked signal setup valgrind complaint as nls
some input error messages made more descriptive
eliminated audible escape a from all error messa
added include of proc readproc.h to top.h
optimization for show_special function
remove unnecessary variables clang analyze

top.c
top.h

diff --git a/top.c b/top.c
index 235f215e1523784d47349b2e4a76b33580ca6bfa..64e794dce028a7f41864e8582554d6424ec58b7b 100644 (file)
--- a/top.c
+++ b/top.c
@@ -645,7 +645,7 @@ static void msg_save (const char *fmts, ...) {
    vsnprintf(tmp, sizeof(tmp), fmts, va);
    va_end(va);
    // we'll add some extra attention grabbers to whatever this is
-   snprintf(Msg_delayed, sizeof(Msg_delayed), "\a***  %s  ***", strim(tmp));
+   snprintf(Msg_delayed, sizeof(Msg_delayed), "***  %s  ***", strim(tmp));
    Msg_awaiting = 1;
 } // end: msg_save
 
@@ -714,7 +714,7 @@ static inline void show_scroll (void) {
          * what will fit within the current screen width.
          *    Our special formatting consists of:
          *       "some text <_delimiter_> some more text <_delimiter_>...\n"
-         *    Where <_delimiter_> is a two bye combination consisting of a
+         *    Where <_delimiter_> is a two byte combination consisting of a
          *    tilde followed by an ascii digit in the the range of 1 - 8.
          *       examples: ~1,  ~5,  ~8, etc.
          *    The tilde is effectively stripped and the next digit
@@ -770,12 +770,13 @@ static void show_special (int interact, const char *glob) {
          switch (ch) {
             case 0:                    // no end delim, captab makes normal
                *(sub_end + 1) = '\0';  // extend str end, then fall through
+               *(sub_end + 2) = '\0';  // ( +1 optimization for usual path )
             case 1 ... 8:
                *sub_end = '\0';
                snprintf(tmp, sizeof(tmp), "%s%.*s%s", Curwin->captab[ch], room, sub_beg, Caps_off);
                rp = scat(rp, tmp);
                room -= (sub_end - sub_beg);
-               sub_beg = (sub_end += (ch ? 2 : 1));
+               sub_beg = (sub_end += 2);
                break;
             default:                   // nothin' special, just text
                ++sub_end;
@@ -965,9 +966,9 @@ static char *linein (const char *prompt) {
  #define bufMAX  ((int)sizeof(buf)-2)  // -1 for '\0' string delimeter
    static char buf[MEDBUFSIZ+1];       // +1 for '\0' string delimeter
    int beg, pos, len;
-   int i, key;
+   int key;
 
-   pos = i = 0;
+   pos = 0;
    beg = show_pmt(prompt);
    memset(buf, '\0', sizeof(buf));
    do {
@@ -1029,7 +1030,7 @@ static float get_float (const char *prompt) {
    if (!(*(line = linein(prompt)))) return -1.0;
    // note: we're not allowing negative floats
    if (strcspn(line, "+,.0123456789")) {
-      show_msg("Not valid");
+      show_msg("Unacceptable floating point");
       return -1.0;
    }
    sscanf(line, "%f", &f);
@@ -1046,7 +1047,7 @@ static int get_int (const char *prompt) {
    if (!(*(line = linein(prompt)))) return INT_MIN;
    // note: we've got to allow negative ints (renice)
    if (strcspn(line, "-+0123456789")) {
-      show_msg("\aNot valid");
+      show_msg("Unacceptable integer");
       return INT_MIN;
    }
    sscanf(line, "%d", &n);
@@ -2098,7 +2099,7 @@ static void before (char *me) {
    // lastly, establish a robust signals environment
    sigemptyset(&sa.sa_mask);
    sa.sa_flags = SA_RESTART;
-   for (i = SIGRTMAX + 1; i; i--) {
+   for (i = SIGRTMAX; i; i--) {
       switch (i) {
          case SIGALRM: case SIGHUP:  case SIGINT:
          case SIGPIPE: case SIGQUIT: case SIGTERM:
@@ -2466,10 +2467,10 @@ static WIN_t *win_select (char ch) {
 static int win_warn (int what) {
    switch (what) {
       case Warn_ALT:
-         show_msg("\aCommand disabled, 'A' mode required");
+         show_msg("Command disabled, 'A' mode required");
          break;
       case Warn_VIZ:
-         show_msg(fmtmk("\aCommand disabled, activate %s with '-' or '_'"
+         show_msg(fmtmk("Command disabled, activate %s with '-' or '_'"
             , Curwin->grpname));
          break;
       default:                    // keep gcc happy
@@ -2509,7 +2510,7 @@ static void wins_colors (void) {
    char ch, tgt = 'T';
 
    if (0 >= max_colors) {
-      show_msg("\aNo colors to map!");
+      show_msg("No colors to map!");
       return;
    }
    winsclrhlp(w, 1);
@@ -2634,7 +2635,6 @@ static void wins_stage_1 (void) {
       w->captab[8] = w->capclr_rownorm;
       w->next = w + 1;
       w->prev = w - 1;
-      ++w;
    }
 
    // fixup the circular chains...
@@ -2672,7 +2672,7 @@ static void file_writerc (void) {
    int i;
 
    if (!(fp = fopen(Rc_name, "w"))) {
-      show_msg(fmtmk("\aFailed '%s' open: %s", Rc_name, strerror(errno)));
+      show_msg(fmtmk("Failed '%s' open: %s", Rc_name, strerror(errno)));
       return;
    }
    fprintf(fp, "%s's " RCF_EYECATCHER, Myname);
@@ -2730,8 +2730,8 @@ static void help_view (void) {
 
 static void keys_global (int ch) {
    // standardized error message(s)
-   static const char err_secure[] = "\aUnavailable in secure mode";
-   static const char err_notsmp[] = "\aOnly 1 cpu detected";
+   static const char err_secure[] = "Unavailable in secure mode";
+   static const char err_notsmp[] = "Only 1 cpu detected";
    WIN_t *w = Curwin;             // avoid gcc bloat with a local copy
 
    switch (ch) {
@@ -2778,7 +2778,7 @@ static void keys_global (int ch) {
                str = linein(fmtmk("Send pid %d signal [%d/sigterm]", pid, SIGTERM));
                if (*str) sig = signal_name_to_number(str);
                if (0 < sig && kill(pid, sig))
-                  show_msg(fmtmk("\aFailed signal pid '%d' with '%d': %s"
+                  show_msg(fmtmk("Failed signal pid '%d' with '%d': %s"
                      , pid, sig, strerror(errno)));
                else if (0 > sig) show_msg("Invalid signal");
             }
@@ -2792,7 +2792,7 @@ static void keys_global (int ch) {
             if (-1 < (pid = get_int("PID to renice"))
             && INT_MIN < (val = get_int(fmtmk("Renice PID %d to value", pid))))
                if (setpriority(PRIO_PROCESS, (unsigned)pid, val))
-                  show_msg(fmtmk("\aFailed renice of PID %d to %d: %s"
+                  show_msg(fmtmk("Failed renice of PID %d to %d: %s"
                      , pid, val, strerror(errno)));
          }
          break;
@@ -2893,7 +2893,7 @@ static void keys_task (int ch) {
 #else
             if (!CHKw(w, Show_HICOLS | Show_HIROWS))
 #endif
-               show_msg("\aNothing to highlight!");
+               show_msg("Nothing to highlight!");
             else {
                TOGw(w, Show_HIBOLD);
                capsmk(w);
@@ -3204,7 +3204,7 @@ static void do_key (int ch) {
             }
 
          if (!(i < MAXTBL(key_tab))) {
-            show_msg("\aUnknown command - try 'h' for help");
+            show_msg("Unknown command - try 'h' for help");
             return;
          }
    };
diff --git a/top.h b/top.h
index e071bba3b9f8233b227b3873b841a80df2ce776a..a409c61a3d44e2571f04131c2439c173f64d07b6 100644 (file)
--- a/top.h
+++ b/top.h
@@ -19,6 +19,8 @@
 #ifndef _Itop
 #define _Itop
 
+#include "proc/readproc.h"
+
         /* Development/Debugging defines ----------------------------------- */
 //#define ATEOJ_RPTHSH            /* report on hash specifics, at end-of-job */
 //#define ATEOJ_RPTSTD            /* report on misc stuff, at end-of-job     */