X-Git-Url: https://git.ucc.asn.au/?a=blobdiff_plain;f=Usermode%2FLibraries%2Fld-acess.so_src%2Finclude_exp%2Facess%2Ffd_set.h;h=a0fbe4333f38029bb80e4a32b66ce6a7116c0e91;hb=c1b33e91984102c1aa9a2ffe19f02c315b481726;hp=8972cbe46bbcf78d4d7f68384e434fbaa4e8fdd1;hpb=c18c6fea968e72403f9a7b75d6f7f8e3f9e8757f;p=tpg%2Facess2.git diff --git a/Usermode/Libraries/ld-acess.so_src/include_exp/acess/fd_set.h b/Usermode/Libraries/ld-acess.so_src/include_exp/acess/fd_set.h index 8972cbe4..a0fbe433 100644 --- a/Usermode/Libraries/ld-acess.so_src/include_exp/acess/fd_set.h +++ b/Usermode/Libraries/ld-acess.so_src/include_exp/acess/fd_set.h @@ -30,17 +30,20 @@ static inline void FD_ZERO(fd_set *fdsetp) static inline void FD_CLR(int fd, fd_set *fdsetp) { if(fd < 0 || fd > FD_SETSIZE) return; - fdsetp->flags[fd/16] &= (fd_set_ent_t) ((~1 << (fd%16))) & 0xFFFF; + fd_set_ent_t mask = 1 << (fd % 16); + fdsetp->flags[fd/16] &= ~mask; } static inline void FD_SET(int fd, fd_set *fdsetp) { if(fd < 0 || fd > FD_SETSIZE) return; - fdsetp->flags[fd/16] |= (fd_set_ent_t) (1 << (fd%16)); + fd_set_ent_t mask = 1 << (fd % 16); + fdsetp->flags[fd/16] |= mask; } -static inline int FD_ISSET(int fd, fd_set *fdsetp) +static inline int FD_ISSET(int fd, const fd_set *fdsetp) { if(fd < 0 || fd > FD_SETSIZE) return 0; - return !!( fdsetp->flags[fd/16] & (1<<(fd%16)) ); + fd_set_ent_t mask = 1 << (fd % 16); + return !!( fdsetp->flags[fd/16] & mask ); } #endif