From 940ecf5345f339b9d3ec3e8029e345540358fa4c Mon Sep 17 00:00:00 2001 From: Max Kellermann Date: Tue, 26 Aug 2008 08:27:14 +0200 Subject: added decoder_read() On our way to stabilize the decoder API, we will one day remove the input stream functions. The most basic function, read() will be provided by decoder_api.h with this patch. It already contains a loop (still with manual polling), error/eof handling and decoder command checks. This kind of code used to be duplicated in all decoder plugins. --- src/inputPlugins/mpc_plugin.c | 13 +------------ 1 file changed, 1 insertion(+), 12 deletions(-) (limited to 'src/inputPlugins/mpc_plugin.c') diff --git a/src/inputPlugins/mpc_plugin.c b/src/inputPlugins/mpc_plugin.c index 411373283..611c4f4d6 100644 --- a/src/inputPlugins/mpc_plugin.c +++ b/src/inputPlugins/mpc_plugin.c @@ -32,20 +32,9 @@ typedef struct _MpcCallbackData { static mpc_int32_t mpc_read_cb(void *vdata, void *ptr, mpc_int32_t size) { - mpc_int32_t ret = 0; MpcCallbackData *data = (MpcCallbackData *) vdata; - while (1) { - ret = readFromInputStream(data->inStream, ptr, 1, size); - if (ret == 0 && !inputStreamAtEOF(data->inStream) && - (data->decoder && - decoder_get_command(data->decoder) != DECODE_COMMAND_STOP)) - my_usleep(10000); - else - break; - } - - return ret; + return decoder_read(data->decoder, data->inStream, ptr, size); } static mpc_bool_t mpc_seek_cb(void *vdata, mpc_int32_t offset) -- cgit v1.2.3