PATCH: mmioAdvance
Johan Gill
johane at lysator.liu.se
Tue May 14 15:52:40 CDT 2002
Changelog:
lpmmioinfo can sometimes, proven in the read case, be NULL.
--
Johan Gill, johane at lysator.liu.se
-------------- next part --------------
Index: wine/dlls/winmm/mmio.c
===================================================================
RCS file: /home/wine/wine/dlls/winmm/mmio.c,v
retrieving revision 1.31
diff -u -u -r1.31 mmio.c
--- wine/dlls/winmm/mmio.c 9 Mar 2002 23:44:33 -0000 1.31
+++ wine/dlls/winmm/mmio.c 14 May 2002 13:29:10 -0000
@@ -1284,17 +1284,21 @@
}
if (MMIO_Flush(wm, 0) != MMSYSERR_NOERROR)
return MMIOERR_CANNOTWRITE;
- wm->dwFileSize = max(wm->dwFileSize, lpmmioinfo->lBufOffset + (lpmmioinfo->pchNext - lpmmioinfo->pchBuffer));
+ if (lpmmioinfo) {
+ wm->dwFileSize = max(wm->dwFileSize, lpmmioinfo->lBufOffset + (lpmmioinfo->pchNext - lpmmioinfo->pchBuffer));
+ }
MMIO_GrabNextBuffer(wm, uFlags == MMIO_READ);
- lpmmioinfo->pchNext = lpmmioinfo->pchBuffer;
- lpmmioinfo->pchEndRead = lpmmioinfo->pchBuffer +
- (wm->info.pchEndRead - wm->info.pchBuffer);
- lpmmioinfo->pchEndWrite = lpmmioinfo->pchBuffer +
- (wm->info.pchEndWrite - wm->info.pchBuffer);
- lpmmioinfo->lDiskOffset = wm->info.lDiskOffset;
- lpmmioinfo->lBufOffset = wm->info.lBufOffset;
+ if (lpmmioinfo) {
+ lpmmioinfo->pchNext = lpmmioinfo->pchBuffer;
+ lpmmioinfo->pchEndRead = lpmmioinfo->pchBuffer +
+ (wm->info.pchEndRead - wm->info.pchBuffer);
+ lpmmioinfo->pchEndWrite = lpmmioinfo->pchBuffer +
+ (wm->info.pchEndWrite - wm->info.pchBuffer);
+ lpmmioinfo->lDiskOffset = wm->info.lDiskOffset;
+ lpmmioinfo->lBufOffset = wm->info.lBufOffset;
+ }
return MMSYSERR_NOERROR;
}
More information about the wine-patches
mailing list