From 52c51149dbb3717feb6d5600a04f4d922ae675e3 Mon Sep 17 00:00:00 2001 From: wm4 Date: Mon, 1 Dec 2014 16:09:25 +0100 Subject: [PATCH] options: fix channel map options sometimes failing Channel amp otpions were not copied correctly: it copied the size of a pointer to struct chmap, not the struct itself. Since mp_chmap is currently 9 bytes, this meant the last channel entry was not copied correctly on 64 bit systems, leading to very strange failures. It could be triggered especially when using the client API, because the client API always copies options on access (mpv command line options tend to work directly on options). --- options/m_option.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/options/m_option.c b/options/m_option.c index 3c53f206bd..f5bf662203 100644 --- a/options/m_option.c +++ b/options/m_option.c @@ -2145,7 +2145,7 @@ static int parse_chmap(struct mp_log *log, const m_option_t *opt, const m_option_type_t m_option_type_chmap = { .name = "Audio channels or channel map", - .size = sizeof(struct mp_chmap *), + .size = sizeof(struct mp_chmap), .parse = parse_chmap, .copy = copy_opt, };