10 Jun
2006
10 Jun
'06
8:30 p.m.
Peter Åstrand wrote:
1) I believe the mciwave.c patch below makes sense in any case, right?
Without it freed memory is used.
I don't see why ?
wmw->openParms.lpstrElementName and filename is a pointer to the same memory, due to this statement in WAVE_mciOpen:
memcpy(&wmw->openParms, lpOpenParms, sizeof(MCI_WAVE_OPEN_PARMSA));
actually not exactly as mciOpenFile is called with lpOpenParms->lpstrElementName but you're right that the code is wrong, as we're freeing the lpstrElementName as passed by the calling program the right fix would be to set wmw->openParms.lpstrElementName to NULL after memcpy:ing lpOpenParams in mciOpen A+