Fix one ugly bug (horrible cast) into dmusic code to get Unreal2
crashing later (when trying to launch loaded sound) :)
This commit is contained in:
parent
490fbd84fb
commit
5b8d5131a3
|
@ -486,6 +486,7 @@ HRESULT WINAPI IDirectMusicPerformance8ImplCreateAudioPath (LPDIRECTMUSICPERFORM
|
||||||
*/
|
*/
|
||||||
HRESULT WINAPI IDirectMusicPerformance8ImplCreateStandardAudioPath (LPDIRECTMUSICPERFORMANCE8 iface, DWORD dwType, DWORD dwPChannelCount, BOOL fActivate, IDirectMusicAudioPath** ppNewPath) {
|
HRESULT WINAPI IDirectMusicPerformance8ImplCreateStandardAudioPath (LPDIRECTMUSICPERFORMANCE8 iface, DWORD dwType, DWORD dwPChannelCount, BOOL fActivate, IDirectMusicAudioPath** ppNewPath) {
|
||||||
IDirectMusicAudioPathImpl *default_path;
|
IDirectMusicAudioPathImpl *default_path;
|
||||||
|
IDirectMusicAudioPath *pPath;
|
||||||
DSBUFFERDESC desc;
|
DSBUFFERDESC desc;
|
||||||
WAVEFORMATEX format;
|
WAVEFORMATEX format;
|
||||||
LPDIRECTSOUNDBUFFER8 buffer;
|
LPDIRECTSOUNDBUFFER8 buffer;
|
||||||
|
@ -499,9 +500,10 @@ HRESULT WINAPI IDirectMusicPerformance8ImplCreateStandardAudioPath (LPDIRECTMUSI
|
||||||
return E_POINTER;
|
return E_POINTER;
|
||||||
}
|
}
|
||||||
|
|
||||||
DMUSIC_CreateDirectMusicAudioPathImpl (&IID_IDirectMusicAudioPath, (LPVOID*)&default_path, NULL);
|
DMUSIC_CreateDirectMusicAudioPathImpl (&IID_IDirectMusicAudioPath, (LPVOID*)&pPath, NULL);
|
||||||
|
default_path = (IDirectMusicAudioPathImpl*)((char*)(pPath) - offsetof(IDirectMusicAudioPathImpl,AudioPathVtbl));
|
||||||
default_path->pPerf = (IDirectMusicPerformance8*) This;
|
default_path->pPerf = (IDirectMusicPerformance8*) This;
|
||||||
|
|
||||||
/* Secondary buffer description */
|
/* Secondary buffer description */
|
||||||
format.wFormatTag = WAVE_FORMAT_PCM;
|
format.wFormatTag = WAVE_FORMAT_PCM;
|
||||||
format.nChannels = 1;
|
format.nChannels = 1;
|
||||||
|
@ -565,7 +567,7 @@ HRESULT WINAPI IDirectMusicPerformance8ImplCreateStandardAudioPath (LPDIRECTMUSI
|
||||||
}
|
}
|
||||||
default_path->pPrimary = (IDirectSoundBuffer*) buffer;
|
default_path->pPrimary = (IDirectSoundBuffer*) buffer;
|
||||||
|
|
||||||
*ppNewPath = (LPDIRECTMUSICAUDIOPATH) default_path;
|
*ppNewPath = (LPDIRECTMUSICAUDIOPATH) pPath;
|
||||||
|
|
||||||
TRACE(" returning IDirectMusicPerformance interface at %p.\n", *ppNewPath);
|
TRACE(" returning IDirectMusicPerformance interface at %p.\n", *ppNewPath);
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue