Changeset - r14493:983ca75d5455
[Not reviewed]
master
0 2 0
smatz - 15 years ago 2010-02-10 13:52:10
smatz@openttd.org
(svn r19074) -Change: when filtering list of settings and console commands, use strstr() instead of strncmp()
2 files changed with 8 insertions and 19 deletions:
0 comments (0 inline, 0 general)
src/console_cmds.cpp
Show inline comments
 
@@ -1394,17 +1394,14 @@ DEF_CONSOLE_CMD(ConHelp)
 
DEF_CONSOLE_CMD(ConListCommands)
 
{
 
	const IConsoleCmd *cmd;
 
	size_t l = 0;
 

	
 
	if (argc == 0) {
 
		IConsoleHelp("List all registered commands. Usage: 'list_cmds [<pre-filter>]'");
 
		return true;
 
	}
 

	
 
	if (argv[1] != NULL) l = strlen(argv[1]);
 

	
 
	for (cmd = _iconsole_cmds; cmd != NULL; cmd = cmd->next) {
 
		if (argv[1] == NULL || strncmp(cmd->name, argv[1], l) == 0) {
 
		if (argv[1] == NULL || strstr(cmd->name, argv[1]) != NULL) {
 
				IConsolePrintF(CC_DEFAULT, "%s", cmd->name);
 
		}
 
	}
 
@@ -1415,18 +1412,16 @@ DEF_CONSOLE_CMD(ConListCommands)
 
DEF_CONSOLE_CMD(ConListVariables)
 
{
 
	const IConsoleVar *var;
 
	size_t l = 0;
 

	
 
	if (argc == 0) {
 
		IConsoleHelp("List all registered variables. Usage: 'list_vars [<pre-filter>]'");
 
		return true;
 
	}
 

	
 
	if (argv[1] != NULL) l = strlen(argv[1]);
 

	
 
	for (var = _iconsole_vars; var != NULL; var = var->next) {
 
		if (argv[1] == NULL || strncmp(var->name, argv[1], l) == 0)
 
		if (argv[1] == NULL || strstr(var->name, argv[1]) != NULL) {
 
			IConsolePrintF(CC_DEFAULT, "%s", var->name);
 
		}
 
	}
 

	
 
	return true;
 
@@ -1435,18 +1430,16 @@ DEF_CONSOLE_CMD(ConListVariables)
 
DEF_CONSOLE_CMD(ConListAliases)
 
{
 
	const IConsoleAlias *alias;
 
	size_t l = 0;
 

	
 
	if (argc == 0) {
 
		IConsoleHelp("List all registered aliases. Usage: 'list_aliases [<pre-filter>]'");
 
		return true;
 
	}
 

	
 
	if (argv[1] != NULL) l = strlen(argv[1]);
 

	
 
	for (alias = _iconsole_aliases; alias != NULL; alias = alias->next) {
 
		if (argv[1] == NULL || strncmp(alias->name, argv[1], l) == 0)
 
		if (argv[1] == NULL || strstr(alias->name, argv[1]) != NULL) {
 
			IConsolePrintF(CC_DEFAULT, "%s => %s", alias->name, alias->cmdline);
 
		}
 
	}
 

	
 
	return true;
 
@@ -1748,18 +1741,16 @@ DEF_CONSOLE_CMD(ConListSettings)
 
DEF_CONSOLE_CMD(ConListDumpVariables)
 
{
 
	const IConsoleVar *var;
 
	size_t l = 0;
 

	
 
	if (argc == 0) {
 
		IConsoleHelp("List all variables with their value. Usage: 'dump_vars [<pre-filter>]'");
 
		return true;
 
	}
 

	
 
	if (argv[1] != NULL) l = strlen(argv[1]);
 

	
 
	for (var = _iconsole_vars; var != NULL; var = var->next) {
 
		if (argv[1] == NULL || strncmp(var->name, argv[1], l) == 0)
 
		if (argv[1] == NULL || strstr(var->name, argv[1]) != NULL) {
 
			IConsoleVarPrintGetValue(var);
 
		}
 
	}
 

	
 
	return true;
src/settings.cpp
Show inline comments
 
@@ -1767,9 +1767,7 @@ void IConsoleListSettings(const char *pr
 

	
 
	for (const SettingDesc *sd = _settings; sd->save.cmd != SL_END; sd++) {
 
		if (!SlIsObjectCurrentlyValid(sd->save.version_from, sd->save.version_to)) continue;
 
		if (prefilter != NULL) {
 
			if (strncmp(sd->desc.name, prefilter, min(strlen(sd->desc.name), strlen(prefilter))) != 0) continue;
 
		}
 
		if (prefilter != NULL && strstr(sd->desc.name, prefilter) == NULL) continue;
 
		char value[80];
 
		const void *ptr = GetVariableAddress((_game_mode == GM_MENU) ? &_settings_newgame : &_settings_game, &sd->save);
 

	
0 comments (0 inline, 0 general)