mirror of
https://github.com/Lime3DS/Lime3DS
synced 2024-12-27 17:42:40 -06:00
Avoid leaking the cubeb input stream
This commit is contained in:
parent
51dfc46d3f
commit
f9750875e3
1 changed files with 4 additions and 1 deletions
|
@ -37,7 +37,7 @@ CubebInput::~CubebInput() {
|
||||||
if (!impl->ctx)
|
if (!impl->ctx)
|
||||||
return;
|
return;
|
||||||
|
|
||||||
if (cubeb_stream_stop(impl->stream) != CUBEB_OK) {
|
if (impl->stream && cubeb_stream_stop(impl->stream) != CUBEB_OK) {
|
||||||
LOG_ERROR(Audio, "Error stopping cubeb input stream.");
|
LOG_ERROR(Audio, "Error stopping cubeb input stream.");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -103,8 +103,11 @@ void CubebInput::StartSampling(const Frontend::Mic::Parameters& params) {
|
||||||
}
|
}
|
||||||
|
|
||||||
void CubebInput::StopSampling() {
|
void CubebInput::StopSampling() {
|
||||||
|
// TODO(xperia64): Destroy the stream for now to avoid a leak because StartSampling reinitializes the stream every time
|
||||||
if (impl->stream) {
|
if (impl->stream) {
|
||||||
cubeb_stream_stop(impl->stream);
|
cubeb_stream_stop(impl->stream);
|
||||||
|
cubeb_stream_destroy(impl->stream);
|
||||||
|
impl->stream = nullptr;
|
||||||
}
|
}
|
||||||
is_sampling = false;
|
is_sampling = false;
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue