From owner-svn-src-user@FreeBSD.ORG Tue Oct 14 23:51:31 2008 Return-Path: Delivered-To: svn-src-user@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 2BC03106568C; Tue, 14 Oct 2008 23:51:31 +0000 (UTC) (envelope-from edwin@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:4f8:fff6::2c]) by mx1.freebsd.org (Postfix) with ESMTP id 1A3B28FC22; Tue, 14 Oct 2008 23:51:31 +0000 (UTC) (envelope-from edwin@FreeBSD.org) Received: from svn.freebsd.org (localhost [127.0.0.1]) by svn.freebsd.org (8.14.3/8.14.3) with ESMTP id m9ENpVdE019024; Tue, 14 Oct 2008 23:51:31 GMT (envelope-from edwin@svn.freebsd.org) Received: (from edwin@localhost) by svn.freebsd.org (8.14.3/8.14.3/Submit) id m9ENpUJ4019023; Tue, 14 Oct 2008 23:51:30 GMT (envelope-from edwin@svn.freebsd.org) Message-Id: <200810142351.m9ENpUJ4019023@svn.freebsd.org> From: Edwin Groothuis Date: Tue, 14 Oct 2008 23:51:30 +0000 (UTC) To: src-committers@freebsd.org, svn-src-user@freebsd.org X-SVN-Group: user MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Cc: Subject: svn commit: r183899 - user/edwin/top/top-3.8b1/usr.bin/top X-BeenThere: svn-src-user@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: "SVN commit messages for the experimental " user" src tree" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 14 Oct 2008 23:51:31 -0000 Author: edwin Date: Tue Oct 14 23:51:30 2008 New Revision: 183899 URL: http://svn.freebsd.org/changeset/base/183899 Log: Display the original command between ()'s just like the old top did when the command and the first argument of the command-line-arguments don't match. According to include/sys/user.h, PS_INMEM is obsoleted in favour of P_INMEM, not the other way around. Modified: user/edwin/top/top-3.8b1/usr.bin/top/machine.c Modified: user/edwin/top/top-3.8b1/usr.bin/top/machine.c ============================================================================== --- user/edwin/top/top-3.8b1/usr.bin/top/machine.c Tue Oct 14 22:48:38 2008 (r183898) +++ user/edwin/top/top-3.8b1/usr.bin/top/machine.c Tue Oct 14 23:51:30 2008 (r183899) @@ -734,9 +734,10 @@ fmt_command(char *buf, int sz, struct ki char *bufp; char **args; char *ps; + char *rawcmd; int argc; -#if OSMAJOR <= 4 +#if OSMAJOR > 4 inmem = (PP(pp, flag) & P_INMEM); #else inmem = (PP(pp, sflag) & PS_INMEM); @@ -747,7 +748,9 @@ fmt_command(char *buf, int sz, struct ki /* get the pargs structure */ if ((args = kvm_getargv(kd, pp, sz)) != NULL) { - /* successfull retrieval: now convert nulls and cr/lf in to spaces */ + /* + * successfull retrieval: now convert nulls and cr/lf in to spaces + */ bufp = cmd; cmd[0] = '\0'; argc = 0; @@ -765,6 +768,17 @@ fmt_command(char *buf, int sz, struct ki *ps = ' '; } + if ((rawcmd = strrchr(args[0], '/')) != NULL) + rawcmd++; + else + rawcmd = args[0]; + + if (strcmp(rawcmd, pp->ki_comm) != 0) { + strcat(cmd, " ("); + strcat(cmd, pp->ki_comm); + strcat(cmd, ")"); + } + /* format cmd as our answer */ return snprintf(buf, sz, "%s", cmd); }