Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
W
wine-fonts
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Registry
Registry
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
Aleksandr Isakov
wine-fonts
Commits
6b64e009
Commit
6b64e009
authored
Aug 24, 2011
by
Michael Stefaniuc
Committed by
Alexandre Julliard
Aug 24, 2011
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
dsound: Kill SecondaryBufferImpl with extreme prejudice.
parent
7da80d1f
Hide whitespace changes
Inline
Side-by-side
Showing
4 changed files
with
14 additions
and
362 deletions
+14
-362
buffer.c
dlls/dsound/buffer.c
+5
-323
dsound.c
dlls/dsound/dsound.c
+9
-21
dsound_private.h
dlls/dsound/dsound_private.h
+0
-16
sound3d.c
dlls/dsound/sound3d.c
+0
-2
No files found.
dlls/dsound/buffer.c
View file @
6b64e009
...
...
@@ -37,8 +37,6 @@
WINE_DEFAULT_DEBUG_CHANNEL
(
dsound
);
static
HRESULT
SecondaryBufferImpl_Destroy
(
SecondaryBufferImpl
*
pdsb
);
/*******************************************************************************
* IDirectSoundNotify
*/
...
...
@@ -865,15 +863,9 @@ static HRESULT WINAPI IDirectSoundBufferImpl_QueryInterface(IDirectSoundBuffer8
if
(
IsEqualGUID
(
riid
,
&
IID_IUnknown
)
||
IsEqualGUID
(
riid
,
&
IID_IDirectSoundBuffer
)
||
IsEqualGUID
(
riid
,
&
IID_IDirectSoundBuffer8
)
)
{
if
(
!
This
->
secondary
)
SecondaryBufferImpl_Create
(
This
,
&
(
This
->
secondary
));
if
(
This
->
secondary
)
{
IDirectSoundBuffer8_AddRef
((
LPDIRECTSOUNDBUFFER8
)
This
->
secondary
);
*
ppobj
=
This
->
secondary
;
return
S_OK
;
}
WARN
(
"IID_IDirectSoundBuffer
\n
"
);
return
E_NOINTERFACE
;
IDirectSoundBuffer8_AddRef
(
iface
);
*
ppobj
=
iface
;
return
S_OK
;
}
if
(
IsEqualGUID
(
&
IID_IDirectSoundNotify
,
riid
)
)
{
...
...
@@ -978,8 +970,7 @@ HRESULT IDirectSoundBufferImpl_Create(
TRACE
(
"Created buffer at %p
\n
"
,
dsb
);
dsb
->
ref
=
0
;
dsb
->
secondary
=
0
;
dsb
->
ref
=
1
;
dsb
->
device
=
device
;
dsb
->
IDirectSoundBuffer8_iface
.
lpVtbl
=
&
dsbvt
;
dsb
->
iks
=
NULL
;
...
...
@@ -1159,12 +1150,6 @@ HRESULT IDirectSoundBufferImpl_Destroy(
pdsb
->
notify
=
NULL
;
}
if
(
pdsb
->
secondary
)
{
WARN
(
"dsb not NULL
\n
"
);
SecondaryBufferImpl_Destroy
(
pdsb
->
secondary
);
pdsb
->
secondary
=
NULL
;
}
while
(
IDirectSoundBuffer8_Release
(
&
pdsb
->
IDirectSoundBuffer8_iface
)
>
0
);
return
S_OK
;
...
...
@@ -1210,7 +1195,7 @@ HRESULT IDirectSoundBufferImpl_Duplicate(
dsb
->
buffer
->
ref
++
;
list_add_head
(
&
dsb
->
buffer
->
buffers
,
&
dsb
->
entry
);
dsb
->
ref
=
0
;
dsb
->
ref
=
1
;
dsb
->
state
=
STATE_STOPPED
;
dsb
->
buf_mixpos
=
dsb
->
sec_mixpos
=
0
;
dsb
->
notify
=
NULL
;
...
...
@@ -1219,7 +1204,6 @@ HRESULT IDirectSoundBufferImpl_Duplicate(
dsb
->
device
=
device
;
dsb
->
ds3db
=
NULL
;
dsb
->
iks
=
NULL
;
/* FIXME? */
dsb
->
secondary
=
NULL
;
dsb
->
tmp_buffer
=
NULL
;
DSOUND_RecalcFormat
(
dsb
);
DSOUND_MixToTemporary
(
dsb
,
0
,
dsb
->
buflen
,
FALSE
);
...
...
@@ -1243,308 +1227,6 @@ HRESULT IDirectSoundBufferImpl_Duplicate(
}
/*******************************************************************************
* SecondaryBuffer
*/
static
HRESULT
WINAPI
SecondaryBufferImpl_QueryInterface
(
LPDIRECTSOUNDBUFFER8
iface
,
REFIID
riid
,
LPVOID
*
ppobj
)
{
SecondaryBufferImpl
*
This
=
(
SecondaryBufferImpl
*
)
iface
;
TRACE
(
"(%p,%s,%p)
\n
"
,
This
,
debugstr_guid
(
riid
),
ppobj
);
return
IDirectSoundBufferImpl_QueryInterface
((
LPDIRECTSOUNDBUFFER8
)
This
->
dsb
,
riid
,
ppobj
);
}
static
ULONG
WINAPI
SecondaryBufferImpl_AddRef
(
LPDIRECTSOUNDBUFFER8
iface
)
{
SecondaryBufferImpl
*
This
=
(
SecondaryBufferImpl
*
)
iface
;
ULONG
ref
=
InterlockedIncrement
(
&
(
This
->
ref
));
TRACE
(
"(%p) ref was %d
\n
"
,
This
,
ref
-
1
);
return
ref
;
}
static
ULONG
WINAPI
SecondaryBufferImpl_Release
(
LPDIRECTSOUNDBUFFER8
iface
)
{
SecondaryBufferImpl
*
This
=
(
SecondaryBufferImpl
*
)
iface
;
ULONG
ref
;
TRACE
(
"(%p)
\n
"
,
This
);
ref
=
InterlockedDecrement
(
&
(
This
->
ref
));
TRACE
(
"ref was %d
\n
"
,
ref
+
1
);
if
(
!
ref
)
{
This
->
dsb
->
secondary
=
NULL
;
IDirectSoundBuffer_Release
((
LPDIRECTSOUNDBUFFER8
)
This
->
dsb
);
HeapFree
(
GetProcessHeap
(),
0
,
This
);
TRACE
(
"(%p) released
\n
"
,
This
);
}
return
ref
;
}
static
HRESULT
WINAPI
SecondaryBufferImpl_GetCaps
(
LPDIRECTSOUNDBUFFER8
iface
,
LPDSBCAPS
caps
)
{
SecondaryBufferImpl
*
This
=
(
SecondaryBufferImpl
*
)
iface
;
TRACE
(
"(%p)->(%p)
\n
"
,
This
,
caps
);
return
IDirectSoundBufferImpl_GetCaps
((
LPDIRECTSOUNDBUFFER8
)
This
->
dsb
,
caps
);
}
static
HRESULT
WINAPI
SecondaryBufferImpl_GetCurrentPosition
(
LPDIRECTSOUNDBUFFER8
iface
,
LPDWORD
playpos
,
LPDWORD
writepos
)
{
SecondaryBufferImpl
*
This
=
(
SecondaryBufferImpl
*
)
iface
;
TRACE
(
"(%p,%p,%p)
\n
"
,
This
,
playpos
,
writepos
);
return
IDirectSoundBufferImpl_GetCurrentPosition
((
LPDIRECTSOUNDBUFFER8
)
This
->
dsb
,
playpos
,
writepos
);
}
static
HRESULT
WINAPI
SecondaryBufferImpl_GetFormat
(
LPDIRECTSOUNDBUFFER8
iface
,
LPWAVEFORMATEX
lpwf
,
DWORD
wfsize
,
LPDWORD
wfwritten
)
{
SecondaryBufferImpl
*
This
=
(
SecondaryBufferImpl
*
)
iface
;
TRACE
(
"(%p,%p,%d,%p)
\n
"
,
This
,
lpwf
,
wfsize
,
wfwritten
);
return
IDirectSoundBufferImpl_GetFormat
((
LPDIRECTSOUNDBUFFER8
)
This
->
dsb
,
lpwf
,
wfsize
,
wfwritten
);
}
static
HRESULT
WINAPI
SecondaryBufferImpl_GetVolume
(
LPDIRECTSOUNDBUFFER8
iface
,
LPLONG
vol
)
{
SecondaryBufferImpl
*
This
=
(
SecondaryBufferImpl
*
)
iface
;
TRACE
(
"(%p,%p)
\n
"
,
This
,
vol
);
return
IDirectSoundBufferImpl_GetVolume
((
LPDIRECTSOUNDBUFFER8
)
This
->
dsb
,
vol
);
}
static
HRESULT
WINAPI
SecondaryBufferImpl_GetPan
(
LPDIRECTSOUNDBUFFER8
iface
,
LPLONG
pan
)
{
SecondaryBufferImpl
*
This
=
(
SecondaryBufferImpl
*
)
iface
;
TRACE
(
"(%p,%p)
\n
"
,
This
,
pan
);
return
IDirectSoundBufferImpl_GetPan
((
LPDIRECTSOUNDBUFFER8
)
This
->
dsb
,
pan
);
}
static
HRESULT
WINAPI
SecondaryBufferImpl_GetFrequency
(
LPDIRECTSOUNDBUFFER8
iface
,
LPDWORD
freq
)
{
SecondaryBufferImpl
*
This
=
(
SecondaryBufferImpl
*
)
iface
;
TRACE
(
"(%p,%p)
\n
"
,
This
,
freq
);
return
IDirectSoundBufferImpl_GetFrequency
((
LPDIRECTSOUNDBUFFER8
)
This
->
dsb
,
freq
);
}
static
HRESULT
WINAPI
SecondaryBufferImpl_GetStatus
(
LPDIRECTSOUNDBUFFER8
iface
,
LPDWORD
status
)
{
SecondaryBufferImpl
*
This
=
(
SecondaryBufferImpl
*
)
iface
;
TRACE
(
"(%p,%p)
\n
"
,
This
,
status
);
return
IDirectSoundBufferImpl_GetStatus
((
LPDIRECTSOUNDBUFFER8
)
This
->
dsb
,
status
);
}
static
HRESULT
WINAPI
SecondaryBufferImpl_Initialize
(
LPDIRECTSOUNDBUFFER8
iface
,
LPDIRECTSOUND
dsound
,
LPCDSBUFFERDESC
dbsd
)
{
SecondaryBufferImpl
*
This
=
(
SecondaryBufferImpl
*
)
iface
;
TRACE
(
"(%p,%p,%p)
\n
"
,
This
,
dsound
,
dbsd
);
return
IDirectSoundBufferImpl_Initialize
((
LPDIRECTSOUNDBUFFER8
)
This
->
dsb
,
dsound
,
dbsd
);
}
static
HRESULT
WINAPI
SecondaryBufferImpl_Lock
(
LPDIRECTSOUNDBUFFER8
iface
,
DWORD
writecursor
,
DWORD
writebytes
,
LPVOID
*
lplpaudioptr1
,
LPDWORD
audiobytes1
,
LPVOID
*
lplpaudioptr2
,
LPDWORD
audiobytes2
,
DWORD
dwFlags
)
{
SecondaryBufferImpl
*
This
=
(
SecondaryBufferImpl
*
)
iface
;
TRACE
(
"(%p,%d,%d,%p,%p,%p,%p,0x%08x)
\n
"
,
This
,
writecursor
,
writebytes
,
lplpaudioptr1
,
audiobytes1
,
lplpaudioptr2
,
audiobytes2
,
dwFlags
);
return
IDirectSoundBufferImpl_Lock
((
LPDIRECTSOUNDBUFFER8
)
This
->
dsb
,
writecursor
,
writebytes
,
lplpaudioptr1
,
audiobytes1
,
lplpaudioptr2
,
audiobytes2
,
dwFlags
);
}
static
HRESULT
WINAPI
SecondaryBufferImpl_Play
(
LPDIRECTSOUNDBUFFER8
iface
,
DWORD
reserved1
,
DWORD
reserved2
,
DWORD
flags
)
{
SecondaryBufferImpl
*
This
=
(
SecondaryBufferImpl
*
)
iface
;
TRACE
(
"(%p,%08x,%08x,%08x)
\n
"
,
This
,
reserved1
,
reserved2
,
flags
);
return
IDirectSoundBufferImpl_Play
((
LPDIRECTSOUNDBUFFER8
)
This
->
dsb
,
reserved1
,
reserved2
,
flags
);
}
static
HRESULT
WINAPI
SecondaryBufferImpl_SetCurrentPosition
(
LPDIRECTSOUNDBUFFER8
iface
,
DWORD
newpos
)
{
SecondaryBufferImpl
*
This
=
(
SecondaryBufferImpl
*
)
iface
;
TRACE
(
"(%p,%d)
\n
"
,
This
,
newpos
);
return
IDirectSoundBufferImpl_SetCurrentPosition
((
LPDIRECTSOUNDBUFFER8
)
This
->
dsb
,
newpos
);
}
static
HRESULT
WINAPI
SecondaryBufferImpl_SetFormat
(
LPDIRECTSOUNDBUFFER8
iface
,
LPCWAVEFORMATEX
wfex
)
{
SecondaryBufferImpl
*
This
=
(
SecondaryBufferImpl
*
)
iface
;
TRACE
(
"(%p,%p)
\n
"
,
This
,
wfex
);
return
IDirectSoundBufferImpl_SetFormat
((
LPDIRECTSOUNDBUFFER8
)
This
->
dsb
,
wfex
);
}
static
HRESULT
WINAPI
SecondaryBufferImpl_SetVolume
(
LPDIRECTSOUNDBUFFER8
iface
,
LONG
vol
)
{
SecondaryBufferImpl
*
This
=
(
SecondaryBufferImpl
*
)
iface
;
TRACE
(
"(%p,%d)
\n
"
,
This
,
vol
);
return
IDirectSoundBufferImpl_SetVolume
((
LPDIRECTSOUNDBUFFER8
)
This
->
dsb
,
vol
);
}
static
HRESULT
WINAPI
SecondaryBufferImpl_SetPan
(
LPDIRECTSOUNDBUFFER8
iface
,
LONG
pan
)
{
SecondaryBufferImpl
*
This
=
(
SecondaryBufferImpl
*
)
iface
;
TRACE
(
"(%p,%d)
\n
"
,
This
,
pan
);
return
IDirectSoundBufferImpl_SetPan
((
LPDIRECTSOUNDBUFFER8
)
This
->
dsb
,
pan
);
}
static
HRESULT
WINAPI
SecondaryBufferImpl_SetFrequency
(
LPDIRECTSOUNDBUFFER8
iface
,
DWORD
freq
)
{
SecondaryBufferImpl
*
This
=
(
SecondaryBufferImpl
*
)
iface
;
TRACE
(
"(%p,%d)
\n
"
,
This
,
freq
);
return
IDirectSoundBufferImpl_SetFrequency
((
LPDIRECTSOUNDBUFFER8
)
This
->
dsb
,
freq
);
}
static
HRESULT
WINAPI
SecondaryBufferImpl_Stop
(
LPDIRECTSOUNDBUFFER8
iface
)
{
SecondaryBufferImpl
*
This
=
(
SecondaryBufferImpl
*
)
iface
;
TRACE
(
"(%p)
\n
"
,
This
);
return
IDirectSoundBufferImpl_Stop
((
LPDIRECTSOUNDBUFFER8
)
This
->
dsb
);
}
static
HRESULT
WINAPI
SecondaryBufferImpl_Unlock
(
LPDIRECTSOUNDBUFFER8
iface
,
LPVOID
lpvAudioPtr1
,
DWORD
dwAudioBytes1
,
LPVOID
lpvAudioPtr2
,
DWORD
dwAudioBytes2
)
{
SecondaryBufferImpl
*
This
=
(
SecondaryBufferImpl
*
)
iface
;
TRACE
(
"(%p,%p,%d,%p,%d)
\n
"
,
This
,
lpvAudioPtr1
,
dwAudioBytes1
,
lpvAudioPtr2
,
dwAudioBytes2
);
return
IDirectSoundBufferImpl_Unlock
((
LPDIRECTSOUNDBUFFER8
)
This
->
dsb
,
lpvAudioPtr1
,
dwAudioBytes1
,
lpvAudioPtr2
,
dwAudioBytes2
);
}
static
HRESULT
WINAPI
SecondaryBufferImpl_Restore
(
LPDIRECTSOUNDBUFFER8
iface
)
{
SecondaryBufferImpl
*
This
=
(
SecondaryBufferImpl
*
)
iface
;
TRACE
(
"(%p)
\n
"
,
This
);
return
IDirectSoundBufferImpl_Restore
((
LPDIRECTSOUNDBUFFER8
)
This
->
dsb
);
}
static
HRESULT
WINAPI
SecondaryBufferImpl_SetFX
(
LPDIRECTSOUNDBUFFER8
iface
,
DWORD
dwEffectsCount
,
LPDSEFFECTDESC
pDSFXDesc
,
LPDWORD
pdwResultCodes
)
{
SecondaryBufferImpl
*
This
=
(
SecondaryBufferImpl
*
)
iface
;
TRACE
(
"(%p,%u,%p,%p)
\n
"
,
This
,
dwEffectsCount
,
pDSFXDesc
,
pdwResultCodes
);
return
IDirectSoundBufferImpl_SetFX
((
LPDIRECTSOUNDBUFFER8
)
This
->
dsb
,
dwEffectsCount
,
pDSFXDesc
,
pdwResultCodes
);
}
static
HRESULT
WINAPI
SecondaryBufferImpl_AcquireResources
(
LPDIRECTSOUNDBUFFER8
iface
,
DWORD
dwFlags
,
DWORD
dwEffectsCount
,
LPDWORD
pdwResultCodes
)
{
SecondaryBufferImpl
*
This
=
(
SecondaryBufferImpl
*
)
iface
;
TRACE
(
"(%p,%08u,%u,%p)
\n
"
,
This
,
dwFlags
,
dwEffectsCount
,
pdwResultCodes
);
return
IDirectSoundBufferImpl_AcquireResources
((
LPDIRECTSOUNDBUFFER8
)
This
->
dsb
,
dwFlags
,
dwEffectsCount
,
pdwResultCodes
);
}
static
HRESULT
WINAPI
SecondaryBufferImpl_GetObjectInPath
(
LPDIRECTSOUNDBUFFER8
iface
,
REFGUID
rguidObject
,
DWORD
dwIndex
,
REFGUID
rguidInterface
,
LPVOID
*
ppObject
)
{
SecondaryBufferImpl
*
This
=
(
SecondaryBufferImpl
*
)
iface
;
TRACE
(
"(%p,%s,%u,%s,%p)
\n
"
,
This
,
debugstr_guid
(
rguidObject
),
dwIndex
,
debugstr_guid
(
rguidInterface
),
ppObject
);
return
IDirectSoundBufferImpl_GetObjectInPath
((
LPDIRECTSOUNDBUFFER8
)
This
->
dsb
,
rguidObject
,
dwIndex
,
rguidInterface
,
ppObject
);
}
static
const
IDirectSoundBuffer8Vtbl
sbvt
=
{
SecondaryBufferImpl_QueryInterface
,
SecondaryBufferImpl_AddRef
,
SecondaryBufferImpl_Release
,
SecondaryBufferImpl_GetCaps
,
SecondaryBufferImpl_GetCurrentPosition
,
SecondaryBufferImpl_GetFormat
,
SecondaryBufferImpl_GetVolume
,
SecondaryBufferImpl_GetPan
,
SecondaryBufferImpl_GetFrequency
,
SecondaryBufferImpl_GetStatus
,
SecondaryBufferImpl_Initialize
,
SecondaryBufferImpl_Lock
,
SecondaryBufferImpl_Play
,
SecondaryBufferImpl_SetCurrentPosition
,
SecondaryBufferImpl_SetFormat
,
SecondaryBufferImpl_SetVolume
,
SecondaryBufferImpl_SetPan
,
SecondaryBufferImpl_SetFrequency
,
SecondaryBufferImpl_Stop
,
SecondaryBufferImpl_Unlock
,
SecondaryBufferImpl_Restore
,
SecondaryBufferImpl_SetFX
,
SecondaryBufferImpl_AcquireResources
,
SecondaryBufferImpl_GetObjectInPath
};
HRESULT
SecondaryBufferImpl_Create
(
IDirectSoundBufferImpl
*
dsb
,
SecondaryBufferImpl
**
psb
)
{
SecondaryBufferImpl
*
sb
;
TRACE
(
"(%p,%p)
\n
"
,
dsb
,
psb
);
sb
=
HeapAlloc
(
GetProcessHeap
(),
HEAP_ZERO_MEMORY
,
sizeof
(
*
sb
));
if
(
sb
==
0
)
{
WARN
(
"out of memory
\n
"
);
*
psb
=
NULL
;
return
DSERR_OUTOFMEMORY
;
}
sb
->
ref
=
0
;
sb
->
dsb
=
dsb
;
sb
->
lpVtbl
=
&
sbvt
;
IDirectSoundBuffer8_AddRef
((
LPDIRECTSOUNDBUFFER8
)
dsb
);
*
psb
=
sb
;
return
S_OK
;
}
static
HRESULT
SecondaryBufferImpl_Destroy
(
SecondaryBufferImpl
*
pdsb
)
{
TRACE
(
"(%p)
\n
"
,
pdsb
);
while
(
SecondaryBufferImpl_Release
((
LPDIRECTSOUNDBUFFER8
)
pdsb
)
>
0
);
return
S_OK
;
}
/*******************************************************************************
* IKsBufferPropertySet
*/
...
...
dlls/dsound/dsound.c
View file @
6b64e009
...
...
@@ -1630,15 +1630,10 @@ HRESULT DirectSoundDevice_CreateSoundBuffer(
}
hres
=
IDirectSoundBufferImpl_Create
(
device
,
&
dsb
,
dsbd
);
if
(
dsb
)
{
hres
=
SecondaryBufferImpl_Create
(
dsb
,
(
SecondaryBufferImpl
**
)
ppdsb
);
if
(
*
ppdsb
)
{
dsb
->
secondary
=
(
SecondaryBufferImpl
*
)
*
ppdsb
;
IDirectSoundBuffer_AddRef
(
*
ppdsb
);
}
else
WARN
(
"SecondaryBufferImpl_Create failed
\n
"
);
}
else
WARN
(
"IDirectSoundBufferImpl_Create failed
\n
"
);
if
(
dsb
)
*
ppdsb
=
(
IDirectSoundBuffer
*
)
&
dsb
->
IDirectSoundBuffer8_iface
;
else
WARN
(
"IDirectSoundBufferImpl_Create failed
\n
"
);
}
return
hres
;
...
...
@@ -1676,18 +1671,11 @@ HRESULT DirectSoundDevice_DuplicateSoundBuffer(
}
/* duplicate the actual buffer implementation */
hres
=
IDirectSoundBufferImpl_Duplicate
(
device
,
&
dsb
,
((
SecondaryBufferImpl
*
)
psb
)
->
dsb
);
if
(
hres
==
DS_OK
)
{
/* create a new secondary buffer using the new implementation */
hres
=
SecondaryBufferImpl_Create
(
dsb
,
(
SecondaryBufferImpl
**
)
ppdsb
);
if
(
*
ppdsb
)
{
dsb
->
secondary
=
(
SecondaryBufferImpl
*
)
*
ppdsb
;
IDirectSoundBuffer_AddRef
((
LPDIRECTSOUNDBUFFER8
)
*
ppdsb
);
}
else
WARN
(
"SecondaryBufferImpl_Create failed
\n
"
);
}
hres
=
IDirectSoundBufferImpl_Duplicate
(
device
,
&
dsb
,
(
IDirectSoundBufferImpl
*
)
psb
);
if
(
hres
==
DS_OK
)
*
ppdsb
=
(
IDirectSoundBuffer
*
)
&
dsb
->
IDirectSoundBuffer8_iface
;
else
WARN
(
"IDirectSoundBufferImpl_Duplicate failed
\n
"
);
return
hres
;
}
...
...
dlls/dsound/dsound_private.h
View file @
6b64e009
...
...
@@ -58,7 +58,6 @@ typedef struct IDirectSound3DListenerImpl IDirectSound3DListenerImpl;
typedef
struct
IDirectSound3DBufferImpl
IDirectSound3DBufferImpl
;
typedef
struct
IKsBufferPropertySetImpl
IKsBufferPropertySetImpl
;
typedef
struct
PrimaryBufferImpl
PrimaryBufferImpl
;
typedef
struct
SecondaryBufferImpl
SecondaryBufferImpl
;
typedef
struct
DirectSoundDevice
DirectSoundDevice
;
typedef
struct
DirectSoundCaptureDevice
DirectSoundCaptureDevice
;
...
...
@@ -162,7 +161,6 @@ struct IDirectSoundBufferImpl
IDirectSoundBuffer8
IDirectSoundBuffer8_iface
;
LONG
ref
;
/* IDirectSoundBufferImpl fields */
SecondaryBufferImpl
*
secondary
;
DirectSoundDevice
*
device
;
RTL_RWLOCK
lock
;
PIDSDRIVERBUFFER
hwbuf
;
...
...
@@ -210,20 +208,6 @@ HRESULT IDirectSoundBufferImpl_Duplicate(
IDirectSoundBufferImpl
*
pdsb
)
DECLSPEC_HIDDEN
;
/*****************************************************************************
* SecondaryBuffer implementation structure
*/
struct
SecondaryBufferImpl
{
const
IDirectSoundBuffer8Vtbl
*
lpVtbl
;
LONG
ref
;
IDirectSoundBufferImpl
*
dsb
;
};
HRESULT
SecondaryBufferImpl_Create
(
IDirectSoundBufferImpl
*
dsb
,
SecondaryBufferImpl
**
pdsb
)
DECLSPEC_HIDDEN
;
/*****************************************************************************
* PrimaryBuffer implementation structure
*/
struct
PrimaryBufferImpl
...
...
dlls/dsound/sound3d.c
View file @
6b64e009
...
...
@@ -710,8 +710,6 @@ HRESULT IDirectSound3DBufferImpl_Create(
ds3db
->
dsb
->
ds3db_need_recalc
=
TRUE
;
IDirectSoundBuffer_AddRef
((
LPDIRECTSOUNDBUFFER8
)
dsb
);
*
pds3db
=
ds3db
;
return
S_OK
;
}
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment