Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
W
wine-cw
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
wine
wine-cw
Commits
164a4070
Commit
164a4070
authored
May 22, 2022
by
Rémi Bernon
Committed by
Alexandre Julliard
Jun 15, 2022
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
dsound: Avoid using pointer value after free.
Signed-off-by:
Rémi Bernon
<
rbernon@codeweavers.com
>
parent
e2f7f01a
Show whitespace changes
Inline
Side-by-side
Showing
5 changed files
with
9 additions
and
9 deletions
+9
-9
buffer.c
dlls/dsound/buffer.c
+2
-2
capture.c
dlls/dsound/capture.c
+3
-3
dsound.c
dlls/dsound/dsound.c
+2
-2
duplex.c
dlls/dsound/duplex.c
+1
-1
propset.c
dlls/dsound/propset.c
+1
-1
No files found.
dlls/dsound/buffer.c
View file @
164a4070
...
@@ -1192,9 +1192,9 @@ void secondarybuffer_destroy(IDirectSoundBufferImpl *This)
...
@@ -1192,9 +1192,9 @@ void secondarybuffer_destroy(IDirectSoundBufferImpl *This)
HeapFree
(
GetProcessHeap
(),
0
,
This
->
filters
);
HeapFree
(
GetProcessHeap
(),
0
,
This
->
filters
);
}
}
HeapFree
(
GetProcessHeap
(),
0
,
This
);
TRACE
(
"(%p) released
\n
"
,
This
);
TRACE
(
"(%p) released
\n
"
,
This
);
HeapFree
(
GetProcessHeap
(),
0
,
This
);
}
}
BOOL
secondarybuffer_is_audible
(
IDirectSoundBufferImpl
*
This
)
BOOL
secondarybuffer_is_audible
(
IDirectSoundBufferImpl
*
This
)
...
...
dlls/dsound/capture.c
View file @
164a4070
...
@@ -109,8 +109,8 @@ static void capturebuffer_destroy(IDirectSoundCaptureBufferImpl *This)
...
@@ -109,8 +109,8 @@ static void capturebuffer_destroy(IDirectSoundCaptureBufferImpl *This)
This
->
device
->
capture_buffer
=
NULL
;
This
->
device
->
capture_buffer
=
NULL
;
HeapFree
(
GetProcessHeap
(),
0
,
This
->
notifies
);
HeapFree
(
GetProcessHeap
(),
0
,
This
->
notifies
);
HeapFree
(
GetProcessHeap
(),
0
,
This
);
TRACE
(
"(%p) released
\n
"
,
This
);
TRACE
(
"(%p) released
\n
"
,
This
);
HeapFree
(
GetProcessHeap
(),
0
,
This
);
}
}
/*******************************************************************************
/*******************************************************************************
...
@@ -871,8 +871,8 @@ static ULONG DirectSoundCaptureDevice_Release(
...
@@ -871,8 +871,8 @@ static ULONG DirectSoundCaptureDevice_Release(
HeapFree
(
GetProcessHeap
(),
0
,
device
->
pwfx
);
HeapFree
(
GetProcessHeap
(),
0
,
device
->
pwfx
);
device
->
lock
.
DebugInfo
->
Spare
[
0
]
=
0
;
device
->
lock
.
DebugInfo
->
Spare
[
0
]
=
0
;
DeleteCriticalSection
(
&
(
device
->
lock
)
);
DeleteCriticalSection
(
&
(
device
->
lock
)
);
HeapFree
(
GetProcessHeap
(),
0
,
device
);
TRACE
(
"(%p) released
\n
"
,
device
);
TRACE
(
"(%p) released
\n
"
,
device
);
HeapFree
(
GetProcessHeap
(),
0
,
device
);
}
}
return
ref
;
return
ref
;
}
}
...
@@ -1099,8 +1099,8 @@ static void capture_destroy(IDirectSoundCaptureImpl *This)
...
@@ -1099,8 +1099,8 @@ static void capture_destroy(IDirectSoundCaptureImpl *This)
{
{
if
(
This
->
device
)
if
(
This
->
device
)
DirectSoundCaptureDevice_Release
(
This
->
device
);
DirectSoundCaptureDevice_Release
(
This
->
device
);
HeapFree
(
GetProcessHeap
(),
0
,
This
);
TRACE
(
"(%p) released
\n
"
,
This
);
TRACE
(
"(%p) released
\n
"
,
This
);
HeapFree
(
GetProcessHeap
(),
0
,
This
);
}
}
/*******************************************************************************
/*******************************************************************************
...
...
dlls/dsound/dsound.c
View file @
164a4070
...
@@ -239,8 +239,8 @@ static ULONG DirectSoundDevice_Release(DirectSoundDevice * device)
...
@@ -239,8 +239,8 @@ static ULONG DirectSoundDevice_Release(DirectSoundDevice * device)
HeapFree
(
GetProcessHeap
(),
0
,
device
->
buffer
);
HeapFree
(
GetProcessHeap
(),
0
,
device
->
buffer
);
device
->
mixlock
.
DebugInfo
->
Spare
[
0
]
=
0
;
device
->
mixlock
.
DebugInfo
->
Spare
[
0
]
=
0
;
DeleteCriticalSection
(
&
device
->
mixlock
);
DeleteCriticalSection
(
&
device
->
mixlock
);
HeapFree
(
GetProcessHeap
(),
0
,
device
);
TRACE
(
"(%p) released
\n
"
,
device
);
TRACE
(
"(%p) released
\n
"
,
device
);
HeapFree
(
GetProcessHeap
(),
0
,
device
);
}
}
return
ref
;
return
ref
;
}
}
...
@@ -670,8 +670,8 @@ static void directsound_destroy(IDirectSoundImpl *This)
...
@@ -670,8 +670,8 @@ static void directsound_destroy(IDirectSoundImpl *This)
{
{
if
(
This
->
device
)
if
(
This
->
device
)
DirectSoundDevice_Release
(
This
->
device
);
DirectSoundDevice_Release
(
This
->
device
);
HeapFree
(
GetProcessHeap
(),
0
,
This
);
TRACE
(
"(%p) released
\n
"
,
This
);
TRACE
(
"(%p) released
\n
"
,
This
);
HeapFree
(
GetProcessHeap
(),
0
,
This
);
}
}
static
inline
IDirectSoundImpl
*
impl_from_IUnknown
(
IUnknown
*
iface
)
static
inline
IDirectSoundImpl
*
impl_from_IUnknown
(
IUnknown
*
iface
)
...
...
dlls/dsound/duplex.c
View file @
164a4070
...
@@ -61,8 +61,8 @@ static void fullduplex_destroy(IDirectSoundFullDuplexImpl *This)
...
@@ -61,8 +61,8 @@ static void fullduplex_destroy(IDirectSoundFullDuplexImpl *This)
while
(
IDirectSoundCapture_Release
(
dsc8
)
>
0
);
while
(
IDirectSoundCapture_Release
(
dsc8
)
>
0
);
IUnknown_Release
(
This
->
dsc8_unk
);
IUnknown_Release
(
This
->
dsc8_unk
);
}
}
HeapFree
(
GetProcessHeap
(),
0
,
This
);
TRACE
(
"(%p) released
\n
"
,
This
);
TRACE
(
"(%p) released
\n
"
,
This
);
HeapFree
(
GetProcessHeap
(),
0
,
This
);
}
}
/*******************************************************************************
/*******************************************************************************
...
...
dlls/dsound/propset.c
View file @
164a4070
...
@@ -91,8 +91,8 @@ static ULONG WINAPI IKsPrivatePropertySetImpl_Release(LPKSPROPERTYSET iface)
...
@@ -91,8 +91,8 @@ static ULONG WINAPI IKsPrivatePropertySetImpl_Release(LPKSPROPERTYSET iface)
TRACE
(
"(%p) ref %ld
\n
"
,
This
,
ref
);
TRACE
(
"(%p) ref %ld
\n
"
,
This
,
ref
);
if
(
!
ref
)
{
if
(
!
ref
)
{
HeapFree
(
GetProcessHeap
(),
0
,
This
);
TRACE
(
"(%p) released
\n
"
,
This
);
TRACE
(
"(%p) released
\n
"
,
This
);
HeapFree
(
GetProcessHeap
(),
0
,
This
);
}
}
return
ref
;
return
ref
;
}
}
...
...
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