The _open_osfhandle() function in MSVCRT is expected to take the absence of either _O_TEXT or _O_BINARY to mean _O_BINARY. Currently it defaults to _O_TEXT. An example of this is MFC's CStdioFile::Open in binary mode - it passes flags of 0 when it wants to write a binary file - under WINE we do text mode conversions! The attached patch ensures that _O_BINARY is set if neither is set in the passed-in flags. Seeya, Adam -- Real Programmers don't comment their code. If it was hard to write, it should be hard to read, and even harder to modify. These are all my own opinions.
Attachment:
wine-binary.pat
Description: Binary data