Git-Url: http://git.frugalware.org/gitweb/gitweb.cgi?p=pacman-g2.git;a=commitdiff;h=8116d2f4bf785faae197e65d3987e852d4656bfe
commit 8116d2f4bf785faae197e65d3987e852d4656bfe Author: Miklos Vajna <vmik...@frugalware.org> Date: Sun May 15 01:35:34 2011 +0200 pacman -P: skip some wellknown nonlibrary memorymapped files fixes false positives while firefox is running, for example diff --git a/src/pacman-g2/ps.c b/src/pacman-g2/ps.c index 09bf535..8ce6f06 100644 --- a/src/pacman-g2/ps.c +++ b/src/pacman-g2/ps.c @@ -135,8 +135,26 @@ static list_t* ps_parse(FILE *fp) ptr = buf+1; if (!strcmp(ptr, "DEL")) { ptr = buf+strlen(buf)+1; - if (ptr[0] == 'n') - ps->files = list_add(ps->files, strdup(ptr+1)); + if (ptr[0] == 'n') { + /* skip some wellknown nonlibrary memorymapped files */ + int skip = 0; + if(config->verbose <= 0) { + static const char * black[] = { + "/SYSV", + "/var/run/", + "/dev/" + }; + int i; + for (i = 0; i < ARRAY_SIZE(black); i++) { + if (!strncmp(black[i], ptr+1, strlen(black[i]))) { + skip = 1; + break; + } + } + } + if (!skip) + ps->files = list_add(ps->files, strdup(ptr+1)); + } } } } diff --git a/src/pacman-g2/util.h b/src/pacman-g2/util.h index 809d193..de1c06b 100644 --- a/src/pacman-g2/util.h +++ b/src/pacman-g2/util.h @@ -44,6 +44,8 @@ #define _(str) gettext(str) +#define ARRAY_SIZE(x) (sizeof(x)/sizeof(x[0])) + void indentprint(char *str, int indent); char *buildstring(list_t *strlist); char *strtoupper(char *str); _______________________________________________ Frugalware-git mailing list Frugalware-git@frugalware.org http://frugalware.org/mailman/listinfo/frugalware-git