wmmemload: Consistent formatting.
Format the source so as to minimize warnings from checkpatch.pl in the Window Maker source tree.
This commit is contained in:
parent
917d454f0d
commit
ea2cf286ef
8 changed files with 722 additions and 741 deletions
|
@ -36,8 +36,8 @@ Bool dockapp_isbrokenwm = False;
|
|||
/* private */
|
||||
static Window window = None;
|
||||
static Window icon_window = None;
|
||||
static GC gc = NULL;
|
||||
static int depth = 0;
|
||||
static GC gc;
|
||||
static int depth;
|
||||
static Atom delete_win;
|
||||
static int width, height;
|
||||
static int offset_w, offset_h;
|
||||
|
@ -78,11 +78,10 @@ dockapp_open_window(char *display_specified, char *appname,
|
|||
|
||||
/* Create Windows */
|
||||
icon_window = XCreateSimpleWindow(display, root, 0, 0, ww, wh, 0, 0, 0);
|
||||
if (dockapp_isbrokenwm) {
|
||||
if (dockapp_isbrokenwm)
|
||||
window = XCreateSimpleWindow(display, root, 0, 0, ww, wh, 0, 0, 0);
|
||||
} else {
|
||||
else
|
||||
window = XCreateSimpleWindow(display, root, 0, 0, 1, 1, 0, 0, 0);
|
||||
}
|
||||
|
||||
/* Set ClassHint */
|
||||
classhint = XAllocClassHint();
|
||||
|
@ -113,7 +112,7 @@ dockapp_open_window(char *display_specified, char *appname,
|
|||
|
||||
/* Set WM Protocols */
|
||||
delete_win = XInternAtom(display, "WM_DELETE_WINDOW", False);
|
||||
XSetWMProtocols (display, icon_window, &delete_win, 1);
|
||||
XSetWMProtocols(display, icon_window, &delete_win, 1);
|
||||
|
||||
/* Set Size Hints */
|
||||
sizehints.flags = USSize;
|
||||
|
@ -210,7 +209,7 @@ dockapp_show(void)
|
|||
|
||||
Bool
|
||||
dockapp_xpm2pixmap(char **data, Pixmap *pixmap, Pixmap *mask,
|
||||
XpmColorSymbol * colorSymbol, unsigned int nsymbols)
|
||||
XpmColorSymbol *colorSymbol, unsigned int nsymbols)
|
||||
{
|
||||
XpmAttributes xpmAttr;
|
||||
xpmAttr.valuemask = XpmCloseness;
|
||||
|
@ -232,7 +231,7 @@ dockapp_xpm2pixmap(char **data, Pixmap *pixmap, Pixmap *mask,
|
|||
Pixmap
|
||||
dockapp_XCreatePixmap(int w, int h)
|
||||
{
|
||||
return (XCreatePixmap(display, icon_window, w, h, depth));
|
||||
return XCreatePixmap(display, icon_window, w, h, depth);
|
||||
}
|
||||
|
||||
|
||||
|
@ -256,7 +255,7 @@ dockapp_copyarea(Pixmap src, Pixmap dist, int x_src, int y_src, int w, int h,
|
|||
|
||||
|
||||
void
|
||||
dockapp_copy2window (Pixmap src)
|
||||
dockapp_copy2window(Pixmap src)
|
||||
{
|
||||
if (dockapp_isbrokenwm) {
|
||||
XCopyArea(display, src, window, gc, 0, 0, width, height, offset_w,
|
||||
|
@ -289,7 +288,7 @@ dockapp_nextevent_or_timeout(XEvent *event, unsigned long miliseconds)
|
|||
XNextEvent(display, event);
|
||||
if (event->type == ClientMessage) {
|
||||
if (event->xclient.data.l[0] == delete_win) {
|
||||
XDestroyWindow(display,event->xclient.window);
|
||||
XDestroyWindow(display, event->xclient.window);
|
||||
XCloseDisplay(display);
|
||||
exit(0);
|
||||
}
|
||||
|
@ -329,7 +328,7 @@ dockapp_blendedcolor(char *color_name, int r, int g, int b, float fac)
|
|||
{
|
||||
XColor color;
|
||||
|
||||
if ((r < -255 || r > 255)||(g < -255 || g > 255)||(b < -255 || b > 255)){
|
||||
if ((r < -255 || r > 255) || (g < -255 || g > 255) || (b < -255 || b > 255)) {
|
||||
fprintf(stderr, "r:%d,g:%d,b:%d (r,g,b must be 0 to 255)", r, g, b);
|
||||
exit(1);
|
||||
}
|
||||
|
@ -352,31 +351,28 @@ dockapp_blendedcolor(char *color_name, int r, int g, int b, float fac)
|
|||
return color.pixel;
|
||||
|
||||
/* red */
|
||||
if (color.red + r > 0xffff) {
|
||||
if (color.red + r > 0xffff)
|
||||
color.red = 0xffff;
|
||||
} else if (color.red + r < 0) {
|
||||
else if (color.red + r < 0)
|
||||
color.red = 0;
|
||||
} else {
|
||||
else
|
||||
color.red = (unsigned short)(fac * color.red + r);
|
||||
}
|
||||
|
||||
/* green */
|
||||
if (color.green + g > 0xffff) {
|
||||
if (color.green + g > 0xffff)
|
||||
color.green = 0xffff;
|
||||
} else if (color.green + g < 0) {
|
||||
else if (color.green + g < 0)
|
||||
color.green = 0;
|
||||
} else {
|
||||
else
|
||||
color.green = (unsigned short)(fac * color.green + g);
|
||||
}
|
||||
|
||||
/* blue */
|
||||
if (color.blue + b > 0xffff) {
|
||||
if (color.blue + b > 0xffff)
|
||||
color.blue = 0xffff;
|
||||
} else if (color.blue + b < 0) {
|
||||
else if (color.blue + b < 0)
|
||||
color.blue = 0;
|
||||
} else {
|
||||
else
|
||||
color.blue = (unsigned short)(fac * color.blue + b);
|
||||
}
|
||||
|
||||
color.flags = DoRed | DoGreen | DoBlue;
|
||||
|
||||
|
|
|
@ -83,14 +83,14 @@ void dockapp_open_window(char *display_specified, char *appname,
|
|||
void dockapp_set_eventmask(long mask);
|
||||
void dockapp_set_background(Pixmap pixmap);
|
||||
void dockapp_show(void);
|
||||
Bool dockapp_xpm2pixmap(char **data, Pixmap * pixmap, Pixmap * mask,
|
||||
XpmColorSymbol * colorSymbol,
|
||||
Bool dockapp_xpm2pixmap(char **data, Pixmap *pixmap, Pixmap *mask,
|
||||
XpmColorSymbol *colorSymbol,
|
||||
unsigned int nsymbols);
|
||||
Pixmap dockapp_XCreatePixmap(int w, int h);
|
||||
void dockapp_setshape(Pixmap mask, int x_ofs, int y_ofs);
|
||||
void dockapp_copyarea(Pixmap src, Pixmap dist, int x_src, int y_src,
|
||||
int w, int h, int x_dist, int y_dist);
|
||||
void dockapp_copy2window(Pixmap src);
|
||||
Bool dockapp_nextevent_or_timeout(XEvent * event, unsigned long miliseconds);
|
||||
Bool dockapp_nextevent_or_timeout(XEvent *event, unsigned long miliseconds);
|
||||
unsigned long dockapp_getcolor(char *color);
|
||||
unsigned long dockapp_blendedcolor(char *color, int r, int g, int b, float fac);
|
||||
|
|
|
@ -44,13 +44,13 @@ Pixmap backdrop_off;
|
|||
Pixmap parts;
|
||||
Pixmap mask;
|
||||
static char *display_name = "";
|
||||
static char *light_color = NULL; /* back-light color */
|
||||
static char *light_color; /* back-light color */
|
||||
static unsigned update_interval = 1;
|
||||
static light backlight = LIGHTOFF;
|
||||
|
||||
static struct mem_options mem_opts;
|
||||
static int mem_usage = 0;
|
||||
static int swap_usage = 0;
|
||||
static int mem_usage;
|
||||
static int swap_usage;
|
||||
static unsigned alarm_mem = 101;
|
||||
static unsigned alarm_swap = 101;
|
||||
|
||||
|
@ -78,43 +78,40 @@ int main(int argc, char **argv)
|
|||
dockapp_open_window(display_name, PACKAGE, SIZE, SIZE, argc, argv);
|
||||
dockapp_set_eventmask(ButtonPressMask);
|
||||
|
||||
if(light_color)
|
||||
{
|
||||
if (light_color) {
|
||||
colors[0].pixel = dockapp_getcolor(light_color);
|
||||
colors[1].pixel = dockapp_blendedcolor(light_color, -24, -24, -24, 1.0);
|
||||
ncolor = 2;
|
||||
}
|
||||
|
||||
/* change raw xpm data to pixmap */
|
||||
if(dockapp_iswindowed)
|
||||
if (dockapp_iswindowed)
|
||||
backlight_on_xpm[1] = backlight_off_xpm[1] = WINDOWED_BG;
|
||||
|
||||
if(!dockapp_xpm2pixmap(backlight_on_xpm, &backdrop_on, &mask, colors, ncolor))
|
||||
{
|
||||
if (!dockapp_xpm2pixmap(backlight_on_xpm, &backdrop_on, &mask, colors, ncolor)) {
|
||||
fprintf(stderr, "Error initializing backlit background image.\n");
|
||||
exit(1);
|
||||
}
|
||||
if(!dockapp_xpm2pixmap(backlight_off_xpm, &backdrop_off, NULL, NULL, 0))
|
||||
{
|
||||
if (!dockapp_xpm2pixmap(backlight_off_xpm, &backdrop_off, NULL, NULL, 0)) {
|
||||
fprintf(stderr, "Error initializing background image.\n");
|
||||
exit(1);
|
||||
}
|
||||
if(!dockapp_xpm2pixmap(parts_xpm, &parts, NULL, colors, ncolor))
|
||||
{
|
||||
if (!dockapp_xpm2pixmap(parts_xpm, &parts, NULL, colors, ncolor)) {
|
||||
fprintf(stderr, "Error initializing parts image.\n");
|
||||
exit(1);
|
||||
}
|
||||
|
||||
/* shape window */
|
||||
if(!dockapp_iswindowed)
|
||||
if (!dockapp_iswindowed)
|
||||
dockapp_setshape(mask, 0, 0);
|
||||
if(mask) XFreePixmap(display, mask);
|
||||
if (mask)
|
||||
XFreePixmap(display, mask);
|
||||
|
||||
/* pixmap : draw area */
|
||||
pixmap = dockapp_XCreatePixmap(SIZE, SIZE);
|
||||
|
||||
/* Initialize pixmap */
|
||||
if(backlight == LIGHTON)
|
||||
if (backlight == LIGHTON)
|
||||
dockapp_copyarea(backdrop_on, pixmap, 0, 0, SIZE, SIZE, 0, 0);
|
||||
else
|
||||
dockapp_copyarea(backdrop_off, pixmap, 0, 0, SIZE, SIZE, 0, 0);
|
||||
|
@ -123,22 +120,17 @@ int main(int argc, char **argv)
|
|||
dockapp_show();
|
||||
|
||||
/* Main loop */
|
||||
while(1)
|
||||
{
|
||||
if (dockapp_nextevent_or_timeout(&event, update_interval * 1000))
|
||||
{
|
||||
while (1) {
|
||||
if (dockapp_nextevent_or_timeout(&event, update_interval * 1000)) {
|
||||
/* Next Event */
|
||||
switch(event.type)
|
||||
{
|
||||
switch (event.type) {
|
||||
case ButtonPress:
|
||||
switch_light();
|
||||
break;
|
||||
default: /* make gcc happy */
|
||||
break;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
} else {
|
||||
/* Time Out */
|
||||
update();
|
||||
}
|
||||
|
@ -157,26 +149,19 @@ static void update(void)
|
|||
mem_getusage(&mem_usage, &swap_usage, &mem_opts);
|
||||
|
||||
/* alarm mode */
|
||||
if(mem_usage >= alarm_mem || swap_usage >= alarm_swap)
|
||||
{
|
||||
if(!in_alarm_mode)
|
||||
{
|
||||
if (mem_usage >= alarm_mem || swap_usage >= alarm_swap) {
|
||||
if (!in_alarm_mode) {
|
||||
in_alarm_mode = True;
|
||||
pre_backlight = backlight;
|
||||
}
|
||||
if(backlight == LIGHTOFF)
|
||||
{
|
||||
if (backlight == LIGHTOFF) {
|
||||
switch_light();
|
||||
return;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
if(in_alarm_mode)
|
||||
{
|
||||
} else {
|
||||
if (in_alarm_mode) {
|
||||
in_alarm_mode = False;
|
||||
if (backlight != pre_backlight)
|
||||
{
|
||||
if (backlight != pre_backlight) {
|
||||
switch_light();
|
||||
return;
|
||||
}
|
||||
|
@ -200,8 +185,7 @@ static void update(void)
|
|||
/* called when mouse button pressed */
|
||||
static void switch_light(void)
|
||||
{
|
||||
switch (backlight)
|
||||
{
|
||||
switch (backlight) {
|
||||
case LIGHTOFF:
|
||||
backlight = LIGHTON;
|
||||
dockapp_copyarea(backdrop_on, pixmap, 0, 0, 58, 58, 0, 0);
|
||||
|
@ -226,21 +210,23 @@ static void draw_memdigit(int per)
|
|||
int v100, v10, v1;
|
||||
int y = 0;
|
||||
|
||||
if (per < 0) per = 0;
|
||||
if (per > 100) per = 100;
|
||||
if (per < 0)
|
||||
per = 0;
|
||||
if (per > 100)
|
||||
per = 100;
|
||||
|
||||
v100 = per / 100;
|
||||
v10 = (per - v100 * 100) / 10;
|
||||
v1 = (per - v100 * 100 - v10 * 10);
|
||||
|
||||
if (backlight == LIGHTON) y = 20;
|
||||
if (backlight == LIGHTON)
|
||||
y = 20;
|
||||
|
||||
/* draw digit */
|
||||
dockapp_copyarea(parts, pixmap, v1 * 10, y, 10, 20, 29, 7);
|
||||
if (v10 != 0)
|
||||
dockapp_copyarea(parts, pixmap, v10 * 10, y, 10, 20, 17, 7);
|
||||
if (v100 == 1)
|
||||
{
|
||||
if (v100 == 1) {
|
||||
dockapp_copyarea(parts, pixmap, 10, y, 10, 20, 5, 7);
|
||||
dockapp_copyarea(parts, pixmap, 0, y, 10, 20, 17, 7);
|
||||
}
|
||||
|
@ -252,21 +238,23 @@ static void draw_swapdigit(int per)
|
|||
int v100, v10, v1;
|
||||
int y = 0;
|
||||
|
||||
if (per < 0) per = 0;
|
||||
if (per > 100) per = 100;
|
||||
if (per < 0)
|
||||
per = 0;
|
||||
if (per > 100)
|
||||
per = 100;
|
||||
|
||||
v100 = per / 100;
|
||||
v10 = (per - v100 * 100) / 10;
|
||||
v1 = (per - v100 * 100 - v10 * 10);
|
||||
|
||||
if (backlight == LIGHTON) y = 20;
|
||||
if (backlight == LIGHTON)
|
||||
y = 20;
|
||||
|
||||
/* draw digit */
|
||||
dockapp_copyarea(parts, pixmap, v1 * 10, y, 10, 20, 29, 34);
|
||||
if (v10 != 0)
|
||||
dockapp_copyarea(parts, pixmap, v10 * 10, y, 10, 20, 17, 34);
|
||||
if (v100 == 1)
|
||||
{
|
||||
if (v100 == 1) {
|
||||
dockapp_copyarea(parts, pixmap, 10, y, 10, 20, 5, 34);
|
||||
dockapp_copyarea(parts, pixmap, 0, y, 10, 20, 17, 34);
|
||||
}
|
||||
|
@ -276,19 +264,15 @@ static void parse_arguments(int argc, char **argv)
|
|||
{
|
||||
int i;
|
||||
int integer;
|
||||
for (i = 1; i < argc; i++)
|
||||
{
|
||||
for (i = 1; i < argc; i++) {
|
||||
if (!strcmp(argv[i], "--help") || !strcmp(argv[i], "-h"))
|
||||
print_help(argv[0]), exit(0);
|
||||
else if (!strcmp(argv[i], "--version") || !strcmp(argv[i], "-v"))
|
||||
printf("%s version %s\n", PACKAGE, VERSION), exit(0);
|
||||
else if (!strcmp(argv[i], "--display") || !strcmp(argv[i], "-d"))
|
||||
{
|
||||
else if (!strcmp(argv[i], "--display") || !strcmp(argv[i], "-d")) {
|
||||
display_name = argv[i + 1];
|
||||
i++;
|
||||
}
|
||||
else if (!strcmp(argv[i], "--alarm-mem") || !strcmp(argv[i], "-am"))
|
||||
{
|
||||
} else if (!strcmp(argv[i], "--alarm-mem") || !strcmp(argv[i], "-am")) {
|
||||
if (argc == i + 1)
|
||||
alarm_mem = 90;
|
||||
else if (sscanf(argv[i + 1], "%i", &integer) != 1)
|
||||
|
@ -298,9 +282,7 @@ static void parse_arguments(int argc, char **argv)
|
|||
argv[0], argv[i]), exit(1);
|
||||
else
|
||||
alarm_mem = integer, i++;
|
||||
}
|
||||
else if (!strcmp(argv[i], "--alarm-swap") || !strcmp(argv[i], "-as"))
|
||||
{
|
||||
} else if (!strcmp(argv[i], "--alarm-swap") || !strcmp(argv[i], "-as")) {
|
||||
if (argc == i + 1)
|
||||
alarm_swap = 50;
|
||||
else if (sscanf(argv[i + 1], "%i", &integer) != 1)
|
||||
|
@ -310,16 +292,12 @@ static void parse_arguments(int argc, char **argv)
|
|||
argv[0], argv[i]), exit(1);
|
||||
else
|
||||
alarm_swap = integer, i++;
|
||||
}
|
||||
else if (!strcmp(argv[i], "--backlight") || !strcmp(argv[i], "-bl"))
|
||||
} else if (!strcmp(argv[i], "--backlight") || !strcmp(argv[i], "-bl"))
|
||||
backlight = LIGHTON;
|
||||
else if (!strcmp(argv[i], "--light-color") || !strcmp(argv[i], "-lc"))
|
||||
{
|
||||
else if (!strcmp(argv[i], "--light-color") || !strcmp(argv[i], "-lc")) {
|
||||
light_color = argv[i + 1];
|
||||
i++;
|
||||
}
|
||||
else if (!strcmp(argv[i], "--interval") || !strcmp(argv[i], "-i"))
|
||||
{
|
||||
} else if (!strcmp(argv[i], "--interval") || !strcmp(argv[i], "-i")) {
|
||||
if (argc == i + 1)
|
||||
fprintf(stderr, "%s: error parsing argument for option %s\n",
|
||||
argv[0], argv[i]), exit(1);
|
||||
|
@ -331,8 +309,7 @@ static void parse_arguments(int argc, char **argv)
|
|||
argv[0], argv[i]), exit(1);
|
||||
update_interval = integer;
|
||||
i++;
|
||||
}
|
||||
else if (!strcmp(argv[i], "--windowed") || !strcmp(argv[i], "-w"))
|
||||
} else if (!strcmp(argv[i], "--windowed") || !strcmp(argv[i], "-w"))
|
||||
dockapp_iswindowed = True;
|
||||
else if (!strcmp(argv[i], "--broken-wm") || !strcmp(argv[i], "-bw"))
|
||||
dockapp_isbrokenwm = True;
|
||||
|
@ -348,14 +325,12 @@ static void parse_arguments(int argc, char **argv)
|
|||
else if (!strcmp(argv[i], "--ignore-wired") || !strcmp(argv[i], "-wr"))
|
||||
mem_opts.ignore_wired = True;
|
||||
#endif
|
||||
else
|
||||
{
|
||||
else {
|
||||
fprintf(stderr, "%s: unrecognized option '%s'\n", argv[0], argv[i]);
|
||||
print_help(argv[0]), exit(1);
|
||||
}
|
||||
}
|
||||
if (alarm_mem != 101 && alarm_swap != 101)
|
||||
{
|
||||
if (alarm_mem != 101 && alarm_swap != 101) {
|
||||
fprintf(stderr,
|
||||
"%s: select either '-am, --alarm-mem' or '-as, --alarm-swap'\n",
|
||||
argv[0]);
|
||||
|
|
|
@ -32,7 +32,7 @@
|
|||
#ifdef DEBUG
|
||||
# define INLINE_STATIC static
|
||||
#else
|
||||
# define INLINE_STATIC inline static
|
||||
# define INLINE_STATIC static inline
|
||||
#endif
|
||||
|
||||
/* initialize function */
|
||||
|
@ -43,28 +43,32 @@ void mem_init(void)
|
|||
|
||||
/* get kernel version */
|
||||
if (uname(&un) == -1)
|
||||
perror ("uname()");
|
||||
sscanf (un.release, "%d.%d", &version, &patchlevel);
|
||||
perror("uname()");
|
||||
sscanf(un.release, "%d.%d", &version, &patchlevel);
|
||||
}
|
||||
|
||||
|
||||
INLINE_STATIC char * skip_line (const char *p)
|
||||
INLINE_STATIC char *skip_line(const char *p)
|
||||
{
|
||||
while (*p != '\n') p++;
|
||||
while (*p != '\n')
|
||||
p++;
|
||||
return (char *) ++p;
|
||||
}
|
||||
|
||||
INLINE_STATIC char * skip_token (const char *p)
|
||||
INLINE_STATIC char *skip_token(const char *p)
|
||||
{
|
||||
while (isspace(*p)) p++;
|
||||
while (*p && !isspace(*p)) p++;
|
||||
while (isspace(*p))
|
||||
p++;
|
||||
while (*p && !isspace(*p))
|
||||
p++;
|
||||
return (char *)p;
|
||||
}
|
||||
|
||||
INLINE_STATIC char * skip_multiple_token (const char *p, int count)
|
||||
INLINE_STATIC char *skip_multiple_token(const char *p, int count)
|
||||
{
|
||||
int i;
|
||||
for (i = 0; i < count; i++) p = skip_token (p);
|
||||
for (i = 0; i < count; i++)
|
||||
p = skip_token(p);
|
||||
return (char *)p;
|
||||
}
|
||||
|
||||
|
@ -103,7 +107,8 @@ void mem_getusage(int *per_mem, int *per_swap, const struct mem_options *opts)
|
|||
/* skip N lines and examine info about swap */
|
||||
while (isprint(p[0])) {
|
||||
p = skip_line(p);
|
||||
if (strncmp(p, "SwapTotal", 9) == 0) break;
|
||||
if (strncmp(p, "SwapTotal", 9) == 0)
|
||||
break;
|
||||
}
|
||||
|
||||
p = skip_token(p);
|
||||
|
@ -120,13 +125,12 @@ void mem_getusage(int *per_mem, int *per_swap, const struct mem_options *opts)
|
|||
|
||||
/* calculate swap usage in percent */
|
||||
sused = stotal - sfree;
|
||||
if(opts->ignore_cached)
|
||||
if (opts->ignore_cached)
|
||||
sused -= scached;
|
||||
if (!stotal) {
|
||||
if (!stotal)
|
||||
*per_swap = 0;
|
||||
} else {
|
||||
else
|
||||
*per_swap = 100 * (double) sused / (double) stotal;
|
||||
}
|
||||
|
||||
#if DEBUG
|
||||
printf("-----------------------\n");
|
||||
|
|
|
@ -28,12 +28,12 @@
|
|||
#include <sys/utsname.h>
|
||||
#include "mem.h"
|
||||
|
||||
static int isnewformat = 0; /* for kernel 2.5.1 or later */
|
||||
static int isnewformat; /* for kernel 2.5.1 or later */
|
||||
|
||||
#ifdef DEBUG
|
||||
# define INLINE_STATIC static
|
||||
#else
|
||||
# define INLINE_STATIC inline static
|
||||
# define INLINE_STATIC static inline
|
||||
#endif
|
||||
|
||||
/* initialize function */
|
||||
|
@ -44,35 +44,39 @@ void mem_init(void)
|
|||
|
||||
/* get kernel version */
|
||||
if (uname(&un) == -1)
|
||||
perror ("uname()");
|
||||
sscanf (un.release, "%d.%d.%d", &version, &patchlevel, &sublevel);
|
||||
perror("uname()");
|
||||
sscanf(un.release, "%d.%d.%d", &version, &patchlevel, &sublevel);
|
||||
|
||||
/* new format ? (kernel >= 2.5.1pre?) */
|
||||
/* see linux/fs/proc/proc_misc.c */
|
||||
if ((version == 2 && patchlevel >= 5 && sublevel >= 1) || \
|
||||
(version == 2 && patchlevel >= 6 && sublevel >= 0) || \
|
||||
version >2 )
|
||||
if ((version == 2 && patchlevel >= 5 && sublevel >= 1) ||
|
||||
(version == 2 && patchlevel >= 6 && sublevel >= 0) ||
|
||||
version > 2)
|
||||
isnewformat = 1;
|
||||
}
|
||||
|
||||
|
||||
INLINE_STATIC char * skip_line (const char *p)
|
||||
INLINE_STATIC char *skip_line(const char *p)
|
||||
{
|
||||
while (*p != '\n') p++;
|
||||
while (*p != '\n')
|
||||
p++;
|
||||
return (char *) ++p;
|
||||
}
|
||||
|
||||
INLINE_STATIC char * skip_token (const char *p)
|
||||
INLINE_STATIC char *skip_token(const char *p)
|
||||
{
|
||||
while (isspace(*p)) p++;
|
||||
while (*p && !isspace(*p)) p++;
|
||||
while (isspace(*p))
|
||||
p++;
|
||||
while (*p && !isspace(*p))
|
||||
p++;
|
||||
return (char *)p;
|
||||
}
|
||||
|
||||
INLINE_STATIC char * skip_multiple_token (const char *p, int count)
|
||||
INLINE_STATIC char *skip_multiple_token(const char *p, int count)
|
||||
{
|
||||
int i;
|
||||
for (i = 0; i < count; i++) p = skip_token (p);
|
||||
for (i = 0; i < count; i++)
|
||||
p = skip_token(p);
|
||||
return (char *)p;
|
||||
}
|
||||
|
||||
|
@ -111,8 +115,7 @@ void mem_getusage(int *per_mem, int *per_swap, const struct mem_options *opts)
|
|||
mbuffer = strtoul(p, &p, 0); p = skip_multiple_token(p, 2);
|
||||
mcached = strtoul(p, &p, 0); p = skip_multiple_token(p, 2);
|
||||
scached = strtoul(p, &p, 0);
|
||||
}
|
||||
else {
|
||||
} else {
|
||||
p = skip_token(p);
|
||||
/* examine each line of file */
|
||||
mtotal = strtoul(p, &p, 0); p = skip_multiple_token(p, 2);
|
||||
|
@ -127,7 +130,8 @@ void mem_getusage(int *per_mem, int *per_swap, const struct mem_options *opts)
|
|||
/* kernel-2.4.2:N=8 2.4.16:N=7 */
|
||||
while (isprint(p[0])) {
|
||||
p = skip_line(p);
|
||||
if (strncmp(p, "SwapTotal", 9) == 0) break;
|
||||
if (strncmp(p, "SwapTotal", 9) == 0)
|
||||
break;
|
||||
}
|
||||
|
||||
p = skip_token(p);
|
||||
|
@ -144,13 +148,12 @@ void mem_getusage(int *per_mem, int *per_swap, const struct mem_options *opts)
|
|||
|
||||
/* calculate swap usage in percent */
|
||||
sused = stotal - sfree;
|
||||
if(opts->ignore_cached)
|
||||
if (opts->ignore_cached)
|
||||
sused -= scached;
|
||||
if (!stotal) {
|
||||
if (!stotal)
|
||||
*per_swap = 0;
|
||||
} else {
|
||||
else
|
||||
*per_swap = 100 * (double) sused / (double) stotal;
|
||||
}
|
||||
|
||||
#if DEBUG
|
||||
printf("-----------------------\n");
|
||||
|
|
|
@ -37,10 +37,12 @@ get_swap_usage(void)
|
|||
|
||||
stotal = sused = 0;
|
||||
|
||||
if ((num_swap = swapctl(SWAP_NSWAP, 0, 0)) == 0)
|
||||
num_swap = swapctl(SWAP_NSWAP, 0, 0);
|
||||
if (num_swap == 0)
|
||||
return 0;
|
||||
|
||||
if ((swap_dev = malloc(num_swap * sizeof(*swap_dev))) == NULL)
|
||||
swap_dev = malloc(num_swap * sizeof(*swap_dev));
|
||||
if (swap_dev == NULL)
|
||||
return 0;
|
||||
|
||||
if (swapctl(SWAP_STATS, swap_dev, num_swap) == -1)
|
||||
|
@ -79,7 +81,8 @@ mem_getusage(int *per_mem, int *per_swap, const struct mem_options *opts)
|
|||
if (vm.t_rm > 0)
|
||||
*per_mem = 100 * (double) vm.t_rm / (double) (vm.t_rm + vm.t_free);
|
||||
|
||||
if (*per_mem > 97) *per_mem = 100;
|
||||
if (*per_mem > 97)
|
||||
*per_mem = 100;
|
||||
|
||||
/* swap */
|
||||
*per_swap = get_swap_usage();
|
||||
|
|
Loading…
Reference in a new issue