- Avoid accessing window properties directly, instead, use accessors.

This should be no-op for now, but allows the code to work if we
   move to NCURSES_OPAQUE.
 - Use calloc() instead of malloc+bzero.

MFC after:	2 weeks
This commit is contained in:
Xin LI 2015-09-10 22:07:52 +00:00
parent 8fb15ddb00
commit 1e902b3b7e
4 changed files with 16 additions and 21 deletions

View File

@ -112,10 +112,8 @@ initiostat(void)
if ((num_devices = devstat_getnumdevs(NULL)) < 0)
return(0);
cur.dinfo = (struct devinfo *)malloc(sizeof(struct devinfo));
last.dinfo = (struct devinfo *)malloc(sizeof(struct devinfo));
bzero(cur.dinfo, sizeof(struct devinfo));
bzero(last.dinfo, sizeof(struct devinfo));
cur.dinfo = calloc(1, sizeof(struct devinfo));
last.dinfo = calloc(1, sizeof(struct devinfo));
/*
* This value for maxshowdevs (100) is bogus. I'm not sure exactly
@ -196,7 +194,7 @@ numlabels(int row)
char tmpstr[10];
#define COLWIDTH 17
#define DRIVESPERLINE ((wnd->_maxx - INSET) / COLWIDTH)
#define DRIVESPERLINE ((getmaxx(wnd) - 1 - INSET) / COLWIDTH)
for (ndrives = 0, i = 0; i < num_devices; i++)
if (dev_select[i].selected)
ndrives++;
@ -204,7 +202,7 @@ numlabels(int row)
/*
* Deduct -regions for blank line after each scrolling region.
*/
linesperregion = (wnd->_maxy - row - regions) / regions;
linesperregion = (getmaxy(wnd) - 1 - row - regions) / regions;
/*
* Minimum region contains space for two
* label lines and one line of statistics.
@ -214,9 +212,9 @@ numlabels(int row)
_col = INSET;
for (i = 0; i < num_devices; i++)
if (dev_select[i].selected) {
if (_col + COLWIDTH >= wnd->_maxx - INSET) {
if (_col + COLWIDTH >= getmaxx(wnd) - 1 - INSET) {
_col = INSET, row += linesperregion + 1;
if (row > wnd->_maxy - (linesperregion + 1))
if (row > getmaxy(wnd) - 1 - (linesperregion + 1))
break;
}
sprintf(tmpstr, "%s%d", dev_select[i].device_name,
@ -241,7 +239,7 @@ barlabels(int row)
linesperregion = 2 + kbpt;
for (i = 0; i < num_devices; i++)
if (dev_select[i].selected) {
if (row > wnd->_maxy - linesperregion)
if (row > getmaxy(wnd) - 1 - linesperregion)
break;
sprintf(tmpstr, "%s%d", dev_select[i].device_name,
dev_select[i].unit_number);
@ -276,7 +274,7 @@ showiostat(void)
row += 2;
for (i = 0; i < num_devices; i++)
if (dev_select[i].selected) {
if (row > wnd->_maxy - linesperregion)
if (row > getmaxy(wnd) - linesperregion)
break;
row = devstats(row, INSET, i);
}
@ -289,9 +287,9 @@ showiostat(void)
winsertln(wnd);
for (i = 0; i < num_devices; i++)
if (dev_select[i].selected) {
if (_col + COLWIDTH >= wnd->_maxx - INSET) {
if (_col + COLWIDTH >= getmaxx(wnd) - 1 - INSET) {
_col = INSET, row += linesperregion + 1;
if (row > wnd->_maxy - (linesperregion + 1))
if (row > getmaxy(wnd) - 1 - (linesperregion + 1))
break;
wmove(wnd, row + linesperregion, 0);
wdeleteln(wnd);

View File

@ -85,7 +85,7 @@ static char *inetname(struct sockaddr *);
static void inetprint(struct sockaddr *, const char *);
#define streq(a,b) (strcmp(a,b)==0)
#define YMAX(w) ((w)->_maxy-1)
#define YMAX(w) (getmaxy(w)-2)
WINDOW *
opennetstat(void)

View File

@ -94,8 +94,8 @@ showpigs(void)
qsort(pt, nproc, sizeof (struct p_times), compar);
y = 1;
i = nproc;
if (i > wnd->_maxy-1)
i = wnd->_maxy-1;
if (i > getmaxy(wnd)-2)
i = getmaxy(wnd)-2;
for (k = 0; i > 0 && pt[k].pt_pctcpu > 0.01; i--, y++, k++) {
uname = user_from_uid(pt[k].pt_kp->ki_uid, 0);
pname = pt[k].pt_kp->ki_comm;

View File

@ -205,12 +205,9 @@ initkre(void)
return(0);
}
cur.dinfo = (struct devinfo *)malloc(sizeof(struct devinfo));
last.dinfo = (struct devinfo *)malloc(sizeof(struct devinfo));
run.dinfo = (struct devinfo *)malloc(sizeof(struct devinfo));
bzero(cur.dinfo, sizeof(struct devinfo));
bzero(last.dinfo, sizeof(struct devinfo));
bzero(run.dinfo, sizeof(struct devinfo));
cur.dinfo = calloc(1, sizeof(struct devinfo));
last.dinfo = calloc(1, sizeof(struct devinfo));
run.dinfo = calloc(1, sizeof(struct devinfo));
if (dsinit(MAXDRIVES, &cur, &last, &run) != 1)
return(0);