mirror of
https://github.com/librespot-org/librespot.git
synced 2024-12-18 17:11:53 +00:00
Merge pull request #11 from thekr1s/alsa-open-crash
Prevent crash in audio_backend/alsa.rs when switching from Kodi audio…
This commit is contained in:
commit
53fab4dc86
1 changed files with 9 additions and 4 deletions
|
@ -16,12 +16,17 @@ impl Open for AlsaSink {
|
||||||
|
|
||||||
impl Sink for AlsaSink {
|
impl Sink for AlsaSink {
|
||||||
fn start(&mut self) -> io::Result<()> {
|
fn start(&mut self) -> io::Result<()> {
|
||||||
if self.0.is_some() {
|
if self.0.is_none() {
|
||||||
} else {
|
match PCM::open(&*self.1,
|
||||||
self.0 = Some(PCM::open(&*self.1,
|
|
||||||
Stream::Playback, Mode::Blocking,
|
Stream::Playback, Mode::Blocking,
|
||||||
Format::Signed16, Access::Interleaved,
|
Format::Signed16, Access::Interleaved,
|
||||||
2, 44100).ok().unwrap());
|
2, 44100) {
|
||||||
|
Ok(f) => self.0 = Some(f),
|
||||||
|
Err(e) => {
|
||||||
|
error!("Alsa error PCM open {}", e);
|
||||||
|
return Err(io::Error::new(io::ErrorKind::Other, "Alsa error: PCM open failed"));
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
Ok(())
|
Ok(())
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue