Fix argument validation when writing/reading defaults

git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/ec/trunk@39174 72102866-910b-0410-8b05-ffd578937521
This commit is contained in:
Niels Grewe 2015-11-18 11:07:08 +00:00
parent ec51ee9577
commit 69a9bcaf56
2 changed files with 18 additions and 2 deletions

View file

@ -1,3 +1,7 @@
2015-11-18 Niels Grewe <niels.grewe@halbordnung.de>
* EcProcess.m: Fix argument validation when reading/writing defaults.
2015-10-28 Niels Grewe <niels.grewe@halbordnung.de>
* EcConsole.m: Use readpassphrase() instead of getpass() if available.

View file

@ -3046,16 +3046,28 @@ NSLog(@"Ignored attempt to set timer interval to %g ... using 10.0", interval);
val = [cmdDefs objectForKey: key];
}
else if ([msg count] > 2
&& [mode caseInsensitiveCompare: @"set"] == NSOrderedSame)
&& (([mode caseInsensitiveCompare: @"set"] == NSOrderedSame)
|| [mode caseInsensitiveCompare: @"write"] == NSOrderedSame)
)
{
if ([msg count] < 4)
{
[self cmdPrintf: @"Missing argument (please provide a value to write).\n"];
return;
}
val = [msg objectAtIndex: 3];
[cmdDefs setCommand: val forKey: key];
val = [cmdDefs objectForKey: key];
}
else
else if ([mode caseInsensitiveCompare: @"read"] == NSOrderedSame)
{
val = [cmdDefs objectForKey: key];
}
else
{
[self cmdPrintf: @"Invalid subcommand: '%@'\n", mode];
return;
}
if (val == old || [val isEqual: old])
{
if (nil == val)