path: root/m_option.h
diff options
authorUoti Urpala <uau@glyph.nonexistent.invalid>2011-01-31 21:53:05 +0200
committerUoti Urpala <uau@glyph.nonexistent.invalid>2011-01-31 21:53:05 +0200
commitfad3585ef4861b227c0a7f577556e3918a46137e (patch)
tree3cd42ee65b2de8de63adf47a84b90188e4c9bdd3 /m_option.h
parent4ea60a3d0ec4f01f3c319d6f155653f4f890632f (diff)
options: remove CONF_OLD option flag
The resulting semantics of this flag are weird enough that they're unlikely to be what is wanted in any situation. Remove the flag and convert the two options using it, -screenw and -screenh, to use CONF_NOSAVE instead. I'm not sure why those specific options had the flag and if any flag is really needed, but I don't want to check in detail now and using CONF_NOSAVE should keep about the same behavior in practice. A bit more detail about the weird behavior this flag had: When not using file groups, the flag had the same behavior as CONF_NOSAVE, namely that when switching files the option would not be reset to the global value (only possible file-specific settings were applied). When using file groups, group-specific options would apply to the _first two_ files in the group, but for the rest after the first two, settings would not be reset when changing files (wtf?). This was a result of the following sequence: 1) push higher-level settings, enter group 2) apply group-specific settings 3) push settings before applying ones specific to file 1 in group 4) apply file 1 settings, play file 1 5) pop settings to return to group settings 6) push settings before applying ones specific to file 2 7) apply file 2 settings 8) pop settings Here the option was set at 2). 3) saved it because it had been set after last push, so 5) restored the setting and it was used for file 2 too. However 6) no longer saved it because there had been pushes after the original setting in 2), thus 8) no longer restored the setting and the option was no longer forced to any particular value when playing further files after that.
Diffstat (limited to 'm_option.h')
1 files changed, 1 insertions, 6 deletions
diff --git a/m_option.h b/m_option.h
index ca70011393..58deb9be8a 100644
--- a/m_option.h
+++ b/m_option.h
@@ -347,12 +347,8 @@ struct m_option {
#define M_OPT_NOSAVE (1<<5)
-/// \brief The \ref Config will emulate the old behavior by pushing the
-/// option only if it was set by the user.
-#define M_OPT_OLD (1<<6)
/// The option should be set during command line pre-parsing
-#define M_OPT_PRE_PARSE (1<<7)
+#define M_OPT_PRE_PARSE (1<<6)
/// \defgroup OldOptionFlags Backward compatibility
@@ -365,7 +361,6 @@ struct m_option {