[PATCH v2] winmm: Use _lopen instead of OpenFile.
Alistair Leslie-Hughes
leslie_alistair at hotmail.com
Sun Mar 29 16:54:30 CDT 2020
OpenFile has a filpath limit of 128.
Use _lopen which calls through to CreateFile which
doesn't have this limit.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=48832
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=27324
Signed-off-by: Alistair Leslie-Hughes <leslie_alistair at hotmail.com>
---
dlls/winmm/mmio.c | 6 ++++--
1 file changed, 4 insertions(+), 2 deletions(-)
diff --git a/dlls/winmm/mmio.c b/dlls/winmm/mmio.c
index 6f14301975..800a86894f 100644
--- a/dlls/winmm/mmio.c
+++ b/dlls/winmm/mmio.c
@@ -76,8 +76,10 @@ static LRESULT CALLBACK mmioDosIOProc(LPMMIOINFO lpmmioinfo, UINT uMessage,
/* if filename NULL, assume open file handle in adwInfo[0] */
if (szFileName) {
- OFSTRUCT ofs;
- lpmmioinfo->adwInfo[0] = OpenFile(szFileName, &ofs, lpmmioinfo->dwFlags & 0xFFFF);
+ if (lpmmioinfo->dwFlags & OF_CREATE)
+ lpmmioinfo->adwInfo[0] = _lcreat(szFileName, lpmmioinfo->dwFlags);
+ else
+ lpmmioinfo->adwInfo[0] = _lopen(szFileName, lpmmioinfo->dwFlags);
}
if (lpmmioinfo->adwInfo[0] == HFILE_ERROR)
ret = MMIOERR_FILENOTFOUND;
--
2.25.1
More information about the wine-devel
mailing list