aboutsummaryrefslogtreecommitdiffstats
path: root/src/input
diff options
context:
space:
mode:
authorThomas Jansen <mithi@mithi.net>2010-09-22 22:20:50 +0200
committerMax Kellermann <max@duempel.org>2010-09-23 20:39:13 +0200
commit54294366d5fe47aba687fc791967596e31a26864 (patch)
treee718b5ea84975062c503bbf0fc142429201947f4 /src/input
parent4a7abc9d44206296587a9e4302e0e1a273aef6e9 (diff)
downloadmpd-54294366d5fe47aba687fc791967596e31a26864.tar.gz
mpd-54294366d5fe47aba687fc791967596e31a26864.tar.xz
mpd-54294366d5fe47aba687fc791967596e31a26864.zip
rewind_input_plugin: Update MIME not only once
The assumption that MIME type is set only once is not valid with CURL, as URL redirections may update the MIME type. This fixes bug #3044.
Diffstat (limited to 'src/input')
-rw-r--r--src/input/rewind_input_plugin.c7
1 files changed, 4 insertions, 3 deletions
diff --git a/src/input/rewind_input_plugin.c b/src/input/rewind_input_plugin.c
index 0a874a29c..335ccf7e1 100644
--- a/src/input/rewind_input_plugin.c
+++ b/src/input/rewind_input_plugin.c
@@ -86,10 +86,11 @@ copy_attributes(struct input_stream *dest)
dest->size = src->size;
dest->offset = src->offset;
- if (dest->mime == NULL && src->mime != NULL)
- /* this is set only once, and the duplicated pointer
- is freed by input_stream_close() */
+ if (src->mime != NULL) {
+ if (dest->mime != NULL)
+ g_free(dest->mime);
dest->mime = g_strdup(src->mime);
+ }
}
static void