> > + case 'T':
> > + FIXME("Implement T flag (temporary file, i.e. delete on close, don't flush to disk if possible)");
> > + break;
> So what actually prevents you from properly implementing this? Especially
> that Wine already supports temporary files. Search for MSVCRT__O_TEMPORARY

My lack of knowledge of what was already implemented, I guess :-). Plus: I was already so happy that my Win32 application didn't crash any more :-).

But OK, I try implementing it properly. Then I'll map as follows:
'T' -> MSVCRT__O_SHORT_LIVED
'D' -> MSVCRT__O_TEMPORARY
I'll try to send a new version (try 3) tomorrow.

By the way, 'R' also doesn't follow the MS spec:
'R' is supposed to mean "_O_RANDOM_" but the current Wine implementation maps it like 'r', which is "read".
I find it scary to blindly change that, cause there may be some risky cases like "R+", etc. If I have time I'll try to investigate that too, but it'll have to go in a later patch...

Regards,
Robert