Commit 84d53173 authored by Michael Stefaniuc's avatar Michael Stefaniuc Committed by Alexandre Julliard

dsound: Remove the now obsolete IDirectSoundBufferImpl_Destroy().

parent c7f5f10a
...@@ -964,6 +964,11 @@ HRESULT IDirectSoundBufferImpl_Create( ...@@ -964,6 +964,11 @@ HRESULT IDirectSoundBufferImpl_Create(
void secondarybuffer_destroy(IDirectSoundBufferImpl *This) void secondarybuffer_destroy(IDirectSoundBufferImpl *This)
{ {
ULONG ref = InterlockedIncrement(&This->numIfaces);
if (ref > 1)
WARN("Destroying buffer with %u in use interfaces\n", ref - 1);
DirectSoundDevice_RemoveBuffer(This->device, This); DirectSoundDevice_RemoveBuffer(This->device, This);
RtlDeleteResource(&This->lock); RtlDeleteResource(&This->lock);
...@@ -981,20 +986,6 @@ void secondarybuffer_destroy(IDirectSoundBufferImpl *This) ...@@ -981,20 +986,6 @@ void secondarybuffer_destroy(IDirectSoundBufferImpl *This)
TRACE("(%p) released\n", This); TRACE("(%p) released\n", This);
} }
HRESULT IDirectSoundBufferImpl_Destroy(
IDirectSoundBufferImpl *pdsb)
{
TRACE("(%p)\n",pdsb);
/* This keeps the *_Destroy functions from possibly deleting
* this object until it is ready to be deleted */
InterlockedIncrement(&pdsb->numIfaces);
secondarybuffer_destroy(pdsb);
return S_OK;
}
HRESULT IDirectSoundBufferImpl_Duplicate( HRESULT IDirectSoundBufferImpl_Duplicate(
DirectSoundDevice *device, DirectSoundDevice *device,
IDirectSoundBufferImpl **ppdsb, IDirectSoundBufferImpl **ppdsb,
......
...@@ -1244,7 +1244,7 @@ ULONG DirectSoundDevice_Release(DirectSoundDevice * device) ...@@ -1244,7 +1244,7 @@ ULONG DirectSoundDevice_Release(DirectSoundDevice * device)
/* The kill event should have allowed the timer process to expire /* The kill event should have allowed the timer process to expire
* but try to grab the lock just in case. Can't hold lock because * but try to grab the lock just in case. Can't hold lock because
* IDirectSoundBufferImpl_Destroy also grabs the lock */ * secondarybuffer_destroy also grabs the lock */
RtlAcquireResourceShared(&(device->buffer_list_lock), TRUE); RtlAcquireResourceShared(&(device->buffer_list_lock), TRUE);
RtlReleaseResource(&(device->buffer_list_lock)); RtlReleaseResource(&(device->buffer_list_lock));
...@@ -1256,7 +1256,7 @@ ULONG DirectSoundDevice_Release(DirectSoundDevice * device) ...@@ -1256,7 +1256,7 @@ ULONG DirectSoundDevice_Release(DirectSoundDevice * device)
if (device->buffers) { if (device->buffers) {
WARN("%d secondary buffers not released\n", device->nrofbuffers); WARN("%d secondary buffers not released\n", device->nrofbuffers);
for( i=0;i<device->nrofbuffers;i++) for( i=0;i<device->nrofbuffers;i++)
IDirectSoundBufferImpl_Destroy(device->buffers[i]); secondarybuffer_destroy(device->buffers[i]);
} }
if (device->primary) { if (device->primary) {
......
...@@ -199,8 +199,6 @@ HRESULT IDirectSoundBufferImpl_Create( ...@@ -199,8 +199,6 @@ HRESULT IDirectSoundBufferImpl_Create(
DirectSoundDevice *device, DirectSoundDevice *device,
IDirectSoundBufferImpl **ppdsb, IDirectSoundBufferImpl **ppdsb,
LPCDSBUFFERDESC dsbd) DECLSPEC_HIDDEN; LPCDSBUFFERDESC dsbd) DECLSPEC_HIDDEN;
HRESULT IDirectSoundBufferImpl_Destroy(
IDirectSoundBufferImpl *pdsb) DECLSPEC_HIDDEN;
HRESULT IDirectSoundBufferImpl_Duplicate( HRESULT IDirectSoundBufferImpl_Duplicate(
DirectSoundDevice *device, DirectSoundDevice *device,
IDirectSoundBufferImpl **ppdsb, IDirectSoundBufferImpl **ppdsb,
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment