Author: bz
Date: Fri Feb 10 06:02:21 2012
New Revision: 231337
URL: http://svn.freebsd.org/changeset/base/231337

Log:
  MFC r224202:
  
   Constantly print the command name and if set include the thread
   name in per-thread mode.
  
   Discussed with: jhb
   Obtained from:  Ed Maste at Sandvine Incorporated
   Sponsored by:   Sandvine Incorporated

Modified:
  stable/8/usr.bin/top/machine.c
Directory Properties:
  stable/8/usr.bin/top/   (props changed)

Modified: stable/8/usr.bin/top/machine.c
==============================================================================
--- stable/8/usr.bin/top/machine.c      Fri Feb 10 05:05:42 2012        
(r231336)
+++ stable/8/usr.bin/top/machine.c      Fri Feb 10 06:02:21 2012        
(r231337)
@@ -831,7 +831,8 @@ format_next_process(caddr_t handle, char
        if (!(flags & FMT_SHOWARGS)) {
                if (ps.thread && pp->ki_flag & P_HADTHREADS &&
                    pp->ki_ocomm[0]) {
-                       snprintf(cmdbuf, cmdlengthdelta, "{%s}", pp->ki_ocomm);
+                       snprintf(cmdbuf, cmdlengthdelta, "%s{%s}", pp->ki_comm,
+                           pp->ki_ocomm);
                } else {
                        snprintf(cmdbuf, cmdlengthdelta, "%s", pp->ki_comm);
                }
@@ -843,7 +844,7 @@ format_next_process(caddr_t handle, char
                        if (ps.thread && pp->ki_flag & P_HADTHREADS &&
                            pp->ki_ocomm[0]) {
                                snprintf(cmdbuf, cmdlengthdelta,
-                                   "{%s}", pp->ki_ocomm);
+                                   "[%s{%s}]", pp->ki_comm, pp->ki_ocomm);
                        } else {
                                snprintf(cmdbuf, cmdlengthdelta,
                                    "[%s]", pp->ki_comm);
@@ -887,12 +888,23 @@ format_next_process(caddr_t handle, char
                                dst--;
                        *dst = '\0';
 
-                       if (strcmp(cmd, pp->ki_comm) != 0 )
-                               snprintf(cmdbuf, cmdlengthdelta,
-                                   "%s (%s)",argbuf,  pp->ki_comm);
-                       else
-                               strlcpy(cmdbuf, argbuf, cmdlengthdelta);
-
+                       if (strcmp(cmd, pp->ki_comm) != 0 ) {
+                               if (ps.thread && pp->ki_flag & P_HADTHREADS &&
+                                   pp->ki_ocomm[0])
+                                       snprintf(cmdbuf, cmdlengthdelta,
+                                           "%s (%s){%s}", argbuf, pp->ki_comm,
+                                           pp->ki_ocomm);
+                               else
+                                       snprintf(cmdbuf, cmdlengthdelta,
+                                           "%s (%s)", argbuf, pp->ki_comm);
+                       } else {
+                               if (ps.thread && pp->ki_flag & P_HADTHREADS &&
+                                   pp->ki_ocomm[0])
+                                       snprintf(cmdbuf, cmdlengthdelta,
+                                           "%s{%s}", argbuf, pp->ki_ocomm);
+                               else
+                                       strlcpy(cmdbuf, argbuf, cmdlengthdelta);
+                       }
                        free(argbuf);
                }
        }
_______________________________________________
[email protected] mailing list
http://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to "[email protected]"

Reply via email to