summaryrefslogtreecommitdiff
path: root/libsndfile-1.0.31-ced91d7b.patch
diff options
context:
space:
mode:
Diffstat (limited to 'libsndfile-1.0.31-ced91d7b.patch')
-rw-r--r--libsndfile-1.0.31-ced91d7b.patch25
1 files changed, 25 insertions, 0 deletions
diff --git a/libsndfile-1.0.31-ced91d7b.patch b/libsndfile-1.0.31-ced91d7b.patch
new file mode 100644
index 0000000..c39c029
--- /dev/null
+++ b/libsndfile-1.0.31-ced91d7b.patch
@@ -0,0 +1,25 @@
+From ced91d7b971be6173b604154c39279ce90ad87cc Mon Sep 17 00:00:00 2001
+From: yuan <ssspeed00@gmail.com>
+Date: Tue, 20 Apr 2021 16:16:32 +0800
+Subject: [PATCH] flac: Fix improper buffer reusing (#732)
+
+---
+ src/flac.c | 4 ++++
+ 1 file changed, 4 insertions(+)
+
+diff --git a/src/flac.c b/src/flac.c
+index 64d0172e6..e33204505 100644
+--- a/src/flac.c
++++ b/src/flac.c
+@@ -948,7 +948,11 @@ flac_read_loop (SF_PRIVATE *psf, unsigned len)
+ /* Decode some more. */
+ while (pflac->pos < pflac->len)
+ { if (FLAC__stream_decoder_process_single (pflac->fsd) == 0)
++ { psf_log_printf (psf, "FLAC__stream_decoder_process_single returned false\n") ;
++ /* Current frame is busted, so NULL the pointer. */
++ pflac->frame = NULL ;
+ break ;
++ } ;
+ state = FLAC__stream_decoder_get_state (pflac->fsd) ;
+ if (state >= FLAC__STREAM_DECODER_END_OF_STREAM)
+ { psf_log_printf (psf, "FLAC__stream_decoder_get_state returned %s\n", FLAC__StreamDecoderStateString [state]) ;