[beast/devel: 8/28] BSE: FLAC: handle decoder errors in data handle open method
- From: Tim Janik <timj src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [beast/devel: 8/28] BSE: FLAC: handle decoder errors in data handle open method
- Date: Sat, 4 May 2013 03:52:54 +0000 (UTC)
commit 1c3c745b87e6b6d225269b01a3678bfa8bb388a3
Author: Stefan Westerfeld <stefan space twc de>
Date: Fri Mar 8 15:35:51 2013 +0100
BSE: FLAC: handle decoder errors in data handle open method
bse/bsedatahandle-flac.cc | 4 ++++
1 files changed, 4 insertions(+), 0 deletions(-)
---
diff --git a/bse/bsedatahandle-flac.cc b/bse/bsedatahandle-flac.cc
index 4d89e2a..e25f072 100644
--- a/bse/bsedatahandle-flac.cc
+++ b/bse/bsedatahandle-flac.cc
@@ -114,6 +114,7 @@ public:
if (!m_decoder)
return BSE_ERROR_IO;
+ m_error_occurred = false;
int err = FLAC__stream_decoder_init_file (m_decoder, m_file_name.c_str(),
flac_write_callback, NULL, flac_error_callback, this);
if (err != 0)
@@ -128,6 +129,9 @@ public:
if (FLAC__stream_decoder_get_channels (m_decoder) == 0)
return BSE_ERROR_IO;
+ if (m_error_occurred)
+ return BSE_ERROR_IO;
+
m_n_channels = setup->n_channels = FLAC__stream_decoder_get_channels (m_decoder);
setup->n_values = FLAC__stream_decoder_get_total_samples (m_decoder);
setup->bit_depth = FLAC__stream_decoder_get_bits_per_sample (m_decoder);
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]