From c7dee24c8cf07193b6780eb06af2fb7270204b3e Mon Sep 17 00:00:00 2001 From: wm4 Date: Mon, 14 Oct 2013 23:37:58 +0200 Subject: parser-cfg: use bstr everywhere after parsing stage Until now it used both char[] and bstr variants in the same code, which was nasty. For example, the next commit would have additionally required using memmove() to remove the prefix from the char[] string. --- mpvcore/m_config.c | 4 ++-- mpvcore/m_config.h | 2 +- mpvcore/parser-cfg.c | 9 +++++---- 3 files changed, 8 insertions(+), 7 deletions(-) (limited to 'mpvcore') diff --git a/mpvcore/m_config.c b/mpvcore/m_config.c index d54940ba5f..96c93f7c28 100644 --- a/mpvcore/m_config.c +++ b/mpvcore/m_config.c @@ -726,10 +726,10 @@ struct m_profile *m_config_add_profile(struct m_config *config, char *name) return p; } -void m_profile_set_desc(struct m_profile *p, char *desc) +void m_profile_set_desc(struct m_profile *p, bstr desc) { talloc_free(p->desc); - p->desc = talloc_strdup(p, desc); + p->desc = bstrdup0(p, desc); } int m_config_set_profile_option(struct m_config *config, struct m_profile *p, diff --git a/mpvcore/m_config.h b/mpvcore/m_config.h index 996d73f26e..871d1a3caf 100644 --- a/mpvcore/m_config.h +++ b/mpvcore/m_config.h @@ -188,7 +188,7 @@ struct m_profile *m_config_add_profile(struct m_config *config, char *name); * \param p The profile object. * \param arg The profile's name. */ -void m_profile_set_desc(struct m_profile *p, char *desc); +void m_profile_set_desc(struct m_profile *p, bstr desc); /* Add an option to a profile. * Used by the config file parser when defining a profile. diff --git a/mpvcore/parser-cfg.c b/mpvcore/parser-cfg.c index 567638d2f2..7f1f954c85 100644 --- a/mpvcore/parser-cfg.c +++ b/mpvcore/parser-cfg.c @@ -229,7 +229,7 @@ int m_config_parse_config_file(m_config_t *config, const char *conffile, bstr bparam = bstr0(param); if (profile && bstr_equals0(bopt, "profile-desc")) { - m_profile_set_desc(profile, param); + m_profile_set_desc(profile, bparam); goto nextline; } @@ -239,8 +239,8 @@ int m_config_parse_config_file(m_config_t *config, const char *conffile, if (tmp < 0) { PRINT_LINENUM; mp_msg(MSGT_CFGPARSER, MSGL_ERR, - "error parsing option %s=%s: %s\n", - opt, param, m_option_strerror(tmp)); + "error parsing option %.*s=%.*s: %s\n", + BSTR_P(bopt), BSTR_P(bparam), m_option_strerror(tmp)); continue; } @@ -252,7 +252,8 @@ int m_config_parse_config_file(m_config_t *config, const char *conffile, if (tmp < 0) { PRINT_LINENUM; mp_msg(MSGT_CFGPARSER, MSGL_ERR, - "setting option %s='%s' failed.\n", opt, param); + "setting option %.*s='%.*s' failed.\n", + BSTR_P(bopt), BSTR_P(bparam)); continue; /* break */ } -- cgit v1.2.3