1
0
Fork 0
mirror of git://git.code.sf.net/p/cdesktopenv/code synced 2025-03-09 15:50:02 +00:00

xtclient.c, spcd_event.c: stop referencing fds_bits directly

This commit is contained in:
Jon Trulson 2014-03-24 19:37:09 -06:00
parent 4312a1190b
commit 3c35e2d14d
2 changed files with 18 additions and 27 deletions

View file

@ -59,8 +59,7 @@ extern void
_DtCm_register_xtcallback(XtAppContext appct) _DtCm_register_xtcallback(XtAppContext appct)
{ {
XtInputId id; XtInputId id;
int i, j; int i;
fd_mask fmask, *bits;
fd_set fdset = svc_fdset; fd_set fdset = svc_fdset;
DP(("xtclient.c: _DtCm_register_xtcallback()\n")); DP(("xtclient.c: _DtCm_register_xtcallback()\n"));
@ -69,29 +68,21 @@ _DtCm_register_xtcallback(XtAppContext appct)
return; return;
/* assuming only 1 bit is set */ /* assuming only 1 bit is set */
bits = fdset.fds_bits;
for (i = 0; i < FD_SETSIZE; i += NFDBITS) { for (i = 0; i < FD_SETSIZE; i++) {
fmask = *bits; if (FD_ISSET(i, &svc_fdset))
for (j = 0; fmask != 0; j++, fmask >>= 1) { {
if (fmask & 0x1) { /* register callback with XtAppAddInput
* for rpc input
*/
id = XtAppAddInput(appct, i,
(XtPointer)XtInputReadMask,
xtcallback, NULL);
if ((i + j) >= FD_SETSIZE) DP(("xtclient.c: id %d for input at fd %d\n",
break; id, ((i * NFDBITS) + j)));
}
/* register callback with XtAppAddInput }
* for rpc input
*/
id = XtAppAddInput(appct, ((i *NFDBITS) + j),
(XtPointer)XtInputReadMask,
xtcallback, NULL);
DP(("xtclient.c: id %d for input at fd %d\n",
id, ((i * NFDBITS) + j)));
}
}
bits++;
}
} }
/***************************************************************************** /*****************************************************************************

View file

@ -84,11 +84,11 @@ void SPCD_MainLoopUntil(Boolean *flag)
fd_set input_mask, except_mask; fd_set input_mask, except_mask;
int n, fd; int n, fd;
int result; int result;
do { do {
for (n=0; n<fd_vec_size; n++) { memcpy(&input_mask, &Sb_Input_Mask, sizeof(fd_set));
input_mask.fds_bits[n] = Sb_Input_Mask.fds_bits[n]; memcpy(&except_mask, &Sb_Except_Mask, sizeof(fd_set));
except_mask.fds_bits[n] = Sb_Except_Mask.fds_bits[n];
}
do result=select(SPCD_max_fd + 1, FD_SET_CAST(&input_mask), do result=select(SPCD_max_fd + 1, FD_SET_CAST(&input_mask),
FD_SET_CAST(NULL), FD_SET_CAST(NULL),