You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
The original code masks flags with O_RDONLY, which is 0:
```
.read((flags & O_RDONLY != 0) | (flags & O_RDWR != 0))
.write((flags & O_WRONLY != 0) | (flags & O_RDWR != 0))
```
This generates Clippy errors because it's equivalent to 0 & 0 != 0.
The correct code uses O_ACCMODE to mask off the lower bits:
```
.read((flags & O_ACCMODE == O_RDONLY) | (flags & O_ACCMODE == O_RDWR))
.write((flags & O_ACCMODE == O_WRONLY) | (flags & O_ACCMODE == O_RDWR))
```
The code could be further simplified with `let access_flags = flags & O_ACCMODE` at the top, but this version maintains the original intent and consistency with similar libinput examples across the internet.
This commit updates all 3 occurrences of the code fragment.
FixesSmithay#66
Signed-off-by: Tom Stokes <[email protected]>
0 commit comments