mirror of
git://source.winehq.org/git/wine.git
synced 2024-10-06 09:35:52 +00:00
dmcompos: Return a valid pointer from ComposeSegmentFromTemplate().
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=53941
This commit is contained in:
parent
c92d01016b
commit
3f0afe8e5c
|
@ -77,12 +77,38 @@ static ULONG WINAPI IDirectMusicComposerImpl_Release(IDirectMusicComposer *iface
|
|||
|
||||
/* IDirectMusicComposerImpl IDirectMusicComposer part: */
|
||||
static HRESULT WINAPI IDirectMusicComposerImpl_ComposeSegmentFromTemplate(IDirectMusicComposer *iface,
|
||||
IDirectMusicStyle *pStyle, IDirectMusicSegment *pTemplate, WORD wActivity,
|
||||
IDirectMusicChordMap *pChordMap, IDirectMusicSegment **ppSegment)
|
||||
IDirectMusicStyle *style, IDirectMusicSegment *template, WORD activity, IDirectMusicChordMap *chordmap,
|
||||
IDirectMusicSegment **segment)
|
||||
{
|
||||
IDirectMusicComposerImpl *This = impl_from_IDirectMusicComposer(iface);
|
||||
FIXME("(%p, %p, %p, %d, %p, %p): stub\n", This, pStyle, pTemplate, wActivity, pChordMap, ppSegment);
|
||||
return S_OK;
|
||||
IDirectMusicComposerImpl *This = impl_from_IDirectMusicComposer(iface);
|
||||
IDirectMusicTrack *track;
|
||||
HRESULT hr;
|
||||
|
||||
FIXME("(%p, %p, %p, %d, %p, %p): semi-stub\n", This, style, template, activity, chordmap, segment);
|
||||
|
||||
if (!segment)
|
||||
return E_POINTER;
|
||||
if (!template)
|
||||
return E_INVALIDARG;
|
||||
|
||||
if (!style) {
|
||||
hr = IDirectMusicSegment_GetTrack(template, &CLSID_DirectMusicStyleTrack, 0xFFFFFFFF,
|
||||
DMUS_SEG_ANYTRACK, &track);
|
||||
if (FAILED(hr))
|
||||
return E_INVALIDARG;
|
||||
else
|
||||
IDirectMusicTrack_Release(track); /* Temp to not leak memory */
|
||||
}
|
||||
if (!chordmap) {
|
||||
hr = IDirectMusicSegment_GetTrack(template, &CLSID_DirectMusicChordMapTrack, 0xFFFFFFFF,
|
||||
DMUS_SEG_ANYTRACK, &track);
|
||||
if (FAILED(hr))
|
||||
return E_INVALIDARG;
|
||||
else
|
||||
IDirectMusicTrack_Release(track); /* Temp to not leak memory */
|
||||
}
|
||||
|
||||
return IDirectMusicSegment_Clone(template, -1, 0, segment);
|
||||
}
|
||||
|
||||
static HRESULT WINAPI IDirectMusicComposerImpl_ComposeSegmentFromShape(IDirectMusicComposer *iface,
|
||||
|
|
Loading…
Reference in a new issue