Group :: Sound
RPM: ices
Main Changelog Spec Patches Sources Download Gear Bugs and FR Repocop
Patch: ices-0.4-flac-1.1.3.patch
Download
Download
diff -urN ices-0.4.orig/src/in_flac.c ices-0.4/src/in_flac.c
--- ices-0.4.orig/src/in_flac.c 2004-07-31 20:52:24 +0300
+++ ices-0.4/src/in_flac.c 2007-02-20 16:24:31 +0200
@@ -26,6 +26,13 @@
#include <FLAC/stream_decoder.h>
+/* by LEGACY_FLAC we mean pre-1.1.3, before FLAC__SeekableStreamDecoder was merged into FLAC__StreamDecoder */
+#if !defined(FLAC_API_VERSION_CURRENT) || FLAC_API_VERSION_CURRENT < 8
+#define LEGACY_FLAC
+#else
+#undef LEGACY_FLAC
+#endif
+
/* -- data structures -- */
typedef struct {
FLAC__StreamDecoder* decoder;
@@ -76,10 +83,12 @@
return -1;
}
+#ifdef LEGACY_FLAC
FLAC__stream_decoder_set_read_callback(decoder, flac_read_cb);
FLAC__stream_decoder_set_write_callback(decoder, flac_write_cb);
FLAC__stream_decoder_set_metadata_callback(decoder, flac_metadata_cb);
FLAC__stream_decoder_set_error_callback(decoder, flac_error_cb);
+#endif
FLAC__stream_decoder_set_metadata_respond(decoder, FLAC__METADATA_TYPE_VORBIS_COMMENT);
@@ -87,7 +96,9 @@
ices_log_error ("Malloc failed in ices_flac_open");
goto errDecoder;
}
+#ifdef LEGACY_FLAC
FLAC__stream_decoder_set_client_data(decoder, self);
+#endif
flac_data->decoder = decoder;
flac_data->parsed = 0;
@@ -96,7 +107,11 @@
self->data = flac_data;
+#ifdef LEGACY_FLAC
switch (FLAC__stream_decoder_init(decoder)) {
+#else
+ switch (FLAC__stream_decoder_init_stream(decoder, flac_read_cb, NULL, NULL, NULL, NULL, flac_write_cb, flac_metadata_cb, flac_error_cb, self)) {
+#endif
case FLAC__STREAM_DECODER_SEARCH_FOR_METADATA:
break;
case FLAC__STREAM_DECODER_MEMORY_ALLOCATION_ERROR: