mirror of
https://github.com/RGBCube/serenity
synced 2025-07-27 06:37:44 +00:00
LibC: Remove semicolon in definition of FD_ZERO
This causes problems in code of the form if (/* condition */) FD_ZERO(&thing); else do_other_thing(); Wrapping the call to memset() in a do/while block fixes the issue.
This commit is contained in:
parent
7d5d5b387e
commit
ad1065e213
1 changed files with 4 additions and 1 deletions
|
@ -7,7 +7,10 @@
|
||||||
#pragma once
|
#pragma once
|
||||||
|
|
||||||
#define FD_SETSIZE 1024
|
#define FD_SETSIZE 1024
|
||||||
#define FD_ZERO(set) memset((set), 0, sizeof(fd_set));
|
#define FD_ZERO(set) \
|
||||||
|
do { \
|
||||||
|
memset((set), 0, sizeof(fd_set)); \
|
||||||
|
} while (0)
|
||||||
#define FD_CLR(fd, set) ((set)->fds_bits[(fd / 8)] &= ~(1 << (fd) % 8))
|
#define FD_CLR(fd, set) ((set)->fds_bits[(fd / 8)] &= ~(1 << (fd) % 8))
|
||||||
#define FD_SET(fd, set) ((set)->fds_bits[(fd / 8)] |= (1 << (fd) % 8))
|
#define FD_SET(fd, set) ((set)->fds_bits[(fd / 8)] |= (1 << (fd) % 8))
|
||||||
#define FD_ISSET(fd, set) ((set)->fds_bits[(fd / 8)] & (1 << (fd) % 8))
|
#define FD_ISSET(fd, set) ((set)->fds_bits[(fd / 8)] & (1 << (fd) % 8))
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue