mirror of
https://github.com/asterisk/asterisk.git
synced 2025-09-02 19:16:15 +00:00
utils: Don't set or clear flags that don't need setting or clearing
Change-Id: I0e7fb507ac09b15e45e1ff8501ecfca67afa5217
This commit is contained in:
@@ -2730,9 +2730,17 @@ int __ast_fd_set_flags(int fd, int flags, enum ast_fd_flag_operation op,
|
|||||||
|
|
||||||
switch (op) {
|
switch (op) {
|
||||||
case AST_FD_FLAG_SET:
|
case AST_FD_FLAG_SET:
|
||||||
|
if ((f & flags) == flags) {
|
||||||
|
/* There is nothing to set */
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
f |= flags;
|
f |= flags;
|
||||||
break;
|
break;
|
||||||
case AST_FD_FLAG_CLEAR:
|
case AST_FD_FLAG_CLEAR:
|
||||||
|
if (!(f & flags)) {
|
||||||
|
/* There is nothing to clear */
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
f &= ~flags;
|
f &= ~flags;
|
||||||
break;
|
break;
|
||||||
default:
|
default:
|
||||||
|
Reference in New Issue
Block a user