]> granicus.if.org Git - procps-ng/commitdiff
completed the move, output.* --> escape.*
authoralbert <>
Sat, 21 Dec 2002 13:36:36 +0000 (13:36 +0000)
committeralbert <>
Sat, 21 Dec 2002 13:36:36 +0000 (13:36 +0000)
proc/output.c [deleted file]
proc/output.h [deleted file]
top.c
w.c

diff --git a/proc/output.c b/proc/output.c
deleted file mode 100644 (file)
index bd21f7e..0000000
+++ /dev/null
@@ -1,56 +0,0 @@
-// Some output conversion routines for libproc
-// Copyright (C) 1996, Charles Blake.  See COPYING for details.
-//
-// Copyright 2002, Albert Cahalan
-
-#include <stdio.h>
-#include <ctype.h>
-#include <string.h>
-#include "output.h"
-
-#if 1
-/* output a string, converting unprintables to octal as we go, and stopping after
-   processing max chars of output (accounting for expansion due to octal rep).
-*/
-unsigned print_str(FILE *restrict file, const char *restrict const s, unsigned max) {
-    unsigned i;
-    for (i=0; likely(s[i]) && likely(i<max); i++)
-       if (likely(isprint(s[i]) || s[i] == ' '))
-           fputc(s[i], file);
-       else {
-           if (max > i+3) {
-               fprintf(file, "\\%03o", (unsigned char)s[i]);
-               i += 3; /* 4 printed, but i counts one */
-           } else
-               return max - i;
-       }
-    return max - i;
-}
-#endif
-
-/* output an argv style NULL-terminated string list, converting unprintables
-   to octal as we go, separating items of the list by 'sep' and stopping after
-   processing max chars of output (accounting for expansion due to octal rep).
-*/
-unsigned print_strlist(FILE *restrict file, const char *restrict const *restrict strs, unsigned max) {
-    unsigned i, n;
-    for (n=0; *strs && n<max; strs++) {
-       for (i=0; strs[0][i] && n+i < max; i++)
-           if (likely(isprint(strs[0][i]) || strs[0][i] == ' '))
-               fputc(strs[0][i], file);
-           else {
-               if (max > n+i+3) {
-                   fprintf(file, "\\%03o", (unsigned char)strs[0][i]);
-                   n += 3; /* 4 printed, but i counts one */
-               } else
-                   return max - n;
-           }
-       n += i;
-       if (n + 1 < max) {
-           fputc(' ', file);
-           n++;
-       } else
-           return max - n;
-    }
-    return max - n;
-}
diff --git a/proc/output.h b/proc/output.h
deleted file mode 100644 (file)
index a2a0541..0000000
+++ /dev/null
@@ -1,15 +0,0 @@
-#ifndef PROCPS_PROC_OUTPUT_H
-#define PROCPS_PROC_OUTPUT_H
-
-#include <stdio.h>
-#include <sys/types.h>
-#include "procps.h"
-
-EXTERN_C_BEGIN
-
-extern unsigned print_str    (FILE *restrict file, const char *restrict s, unsigned max);
-extern unsigned print_strlist(FILE *restrict file, const char *restrict const *restrict strs, unsigned max);
-
-EXTERN_C_END
-
-#endif
diff --git a/top.c b/top.c
index 07cf2997dc735071fbbbc665bf8ea938d24a6312..b49e9a568bf99b8fa95e9a7057a277a4a7105af1 100644 (file)
--- a/top.c
+++ b/top.c
@@ -43,6 +43,7 @@
 #include "proc/wchan.h"
 #include "proc/procps.h"
 #include "proc/readproc.h"
+#include "proc/escape.h"
 #include "proc/sig.h"
 #ifdef USE_LIB_STA3
 #include "proc/status.h"
@@ -282,11 +283,8 @@ static inline char *scat (char *restrict dst, const char *restrict src)
 }
 
 
-        /*
-         * This guy was originally designed just to trim the rc file lines and
-         * any 'open_psdb_message' result which arrived with an inappropriate
-         * newline (thanks to 'sysmap_mmap') -- but when tabs (^I) were found
-         * in some proc cmdlines, a choice was offered twix space or null. */
+// Trim the rc file lines and any 'open_psdb_message' result which arrives
+// with an inappropriate newline (thanks to 'sysmap_mmap')
 static char *strim_0 (char *str)
 {
    static const char ws[] = "\b\e\f\n\r\t\v\x9b";  // 0x9b is an escape
@@ -296,20 +294,6 @@ static char *strim_0 (char *str)
    return str;
 }
 
-        /*
-         * This guy was originally designed just to trim the rc file lines and
-         * any 'open_psdb_message' result which arrived with an inappropriate
-         * newline (thanks to 'sysmap_mmap') -- but when tabs (^I) were found
-         * in some proc cmdlines, a choice was offered twix space or null. */
-static char *strim_1 (char *str)
-{
-   static const char ws[] = "\b\e\f\n\r\t\v\x9b";  // 0x9b is an escape
-   char *p;
-
-   while (unlikely(p = strpbrk(str, ws))) *p = ' ';
-   return str;
-}
-
 
         /*
          * This guy just facilitates Batch and protects against dumb ttys
@@ -1016,7 +1000,6 @@ static void prochlp (proc_t *this)
    // we're just saving elapsed tics, to be converted into %cpu if
    // this task wins it's displayable screen row lottery... */
    this->pcpu = tics;
-   strim_1(this->cmd);
 // if (Frames_maxcmdln) { }
    // shout this to the world with the final call (or us the next time in)
    Frame_maxtask++;
@@ -2909,6 +2892,7 @@ static void task_show (const WIN_t *q, const proc_t *p)
       unsigned    w = Fieldstab[i].width;
 
       switch (i) {
+#if 0
          case P_CMD:
          {  const char *cp;
             if (CHKw(q, Show_CMDLIN)) {
@@ -2930,6 +2914,16 @@ static void task_show (const WIN_t *q, const proc_t *p)
             MKCOL(q->maxcmdln, q->maxcmdln, cp);
          }
             break;
+#endif
+         case P_CMD:
+         {  char tmp[ROWBUFSIZ];
+            unsigned flags;
+            if (CHKw(q, Show_CMDLIN)) flags = ESC_DEFUNCT | ESC_BRACKETS | ESC_ARGS;
+            else                      flags = ESC_DEFUNCT;
+            escape_command(tmp, p, sizeof tmp, q->maxcmdln, flags);
+            MKCOL(q->maxcmdln, q->maxcmdln, tmp);
+         }
+            break;
          case P_COD:
             MKCOL(scale_num(PAGES_2K(p->trs), w, s));
             break;
diff --git a/w.c b/w.c
index 4c6e7b453c9ef8785412699b068783edcdbb8f60..9fa711fbda2d022b27e48da7a5d59e89d6eb67e9 100644 (file)
--- a/w.c
+++ b/w.c
@@ -10,7 +10,6 @@
 #include "proc/readproc.h"
 #include "proc/devname.h"
 #include "proc/procps.h"
-#include "proc/output.h"
 #include "proc/sysinfo.h"
 #include "proc/escape.h"
 #include <ctype.h>
@@ -221,11 +220,6 @@ static void showinfo(utmp_t *u, int formtype, int maxcmd, int from) {
        char cmdbuf[512];
        escape_command(cmdbuf, best, sizeof cmdbuf, maxcmd, ESC_ARGS);
        fputs(cmdbuf,stdout);
-       
-//     if (best->cmdline)
-//         print_strlist(stdout, best->cmdline, maxcmd);
-//     else
-//         printf("%*.*s", -maxcmd, maxcmd, best->cmd);
     } else {
        printf("-");
     }