diff options
author | wm4 <wm4@nowhere> | 2016-06-29 18:09:30 +0200 |
---|---|---|
committer | wm4 <wm4@nowhere> | 2016-06-29 18:09:30 +0200 |
commit | 9ed5dae4804512d40b050007b282eef8daff8818 (patch) | |
tree | 9e8a11e9dbcda59f8cd288f4abf57d1167c3815d /options | |
parent | c6953bfa8cfe595587913aef6c105e14187e5660 (diff) | |
download | mpv-9ed5dae4804512d40b050007b282eef8daff8818.tar.bz2 mpv-9ed5dae4804512d40b050007b282eef8daff8818.tar.xz |
options: add a deprecation warning printing mechanism
We have a warning mechanism for removed and for replaced options, but
none yet for options which have been simply deprecated.
For the following commit.
(Fun fact: just adding the m_option field increases binary size by
14KB.)
Diffstat (limited to 'options')
-rw-r--r-- | options/m_config.c | 7 | ||||
-rw-r--r-- | options/m_option.h | 4 |
2 files changed, 11 insertions, 0 deletions
diff --git a/options/m_config.c b/options/m_config.c index a3dcb30067..1cb01ebfdc 100644 --- a/options/m_config.c +++ b/options/m_config.c @@ -499,6 +499,13 @@ struct m_config_option *m_config_get_co(const struct m_config *config, co->warning_was_printed = true; } return NULL; + } else if (co->opt->deprecation_message) { + if (!co->warning_was_printed) { + MP_WARN(config, "Warning: option %s%s is deprecated " + "and might be removed in the future (%s).\n", + prefix, co->name, co->opt->deprecation_message); + co->warning_was_printed = true; + } } return co; } diff --git a/options/m_option.h b/options/m_option.h index 4066a36d81..e77452af69 100644 --- a/options/m_option.h +++ b/options/m_option.h @@ -333,6 +333,10 @@ struct m_option { // Initialize variable to given default before parsing options const void *defval; + + // Print a warning when this option is used (for options with no direct + // replacement.) + const char *deprecation_message; }; |