#118 closed defect (fixed)
libc: Incorrect DosSetFHState mask
Reported by: | bird | Owned by: | bird |
---|---|---|---|
Priority: | normal | Milestone: | libc-0.6.2 |
Component: | libc-backend | Version: | 0.6 |
Severity: | normal | Keywords: | DosSetFHState close-on-exec |
Cc: |
Description
We're using the incorrect mask to "turn off non=participating bits" for between DosQueryFHState
and DosSetFHState
. We're using 0x7F88 just like the example in cpref, but the documentation clearly states that bits 8 thru 11 and bit 3 should be all 0. The correct mask is 0x7080, or OPEN_FLAGS_WRITE_THROUGH | OPEN_FLAGS_FAIL_ON_ERROR | OPEN_FLAGS_NO_CACHE | OPEN_FLAGS_NOINHERIT
if you like.
This breaks modifying the close-on-exec flag on file handles which has the locality set. Bit 3 is not used to my knowledge.
Note:
See TracTickets
for help on using tickets.
(In [2794]) Corrected DosSetFHState mask. Fixes #118.