Don't display contents of EcControlKey

This commit is contained in:
Richard Frith-Macdonald 2018-03-03 18:36:01 +00:00
parent 0f8ce3c26f
commit 4205f7c074

View file

@ -125,6 +125,8 @@ ecNativeThreadID()
#endif #endif
} }
static NSString * const ecControlKey = @"EcControlKey";
/* Return the number of bytes represented by a hexadecimal string (length/2) /* Return the number of bytes represented by a hexadecimal string (length/2)
* or the number of 8bit characters if the string is not hexadecimal digits. * or the number of 8bit characters if the string is not hexadecimal digits.
* If the string is hexadecimal, standardise o uppercase. * If the string is hexadecimal, standardise o uppercase.
@ -3958,13 +3960,26 @@ NSLog(@"Ignored attempt to set timer interval to %g ... using 10.0", interval);
old = [cmdDefs objectForKey: key]; old = [cmdDefs objectForKey: key];
if ([mode caseInsensitiveCompare: @"delete"] == NSOrderedSame) if ([mode caseInsensitiveCompare: @"delete"] == NSOrderedSame)
{ {
[cmdDefs setCommand: nil forKey: key]; if ([key isEqualToString: ecControlKey])
val = [cmdDefs objectForKey: key]; {
[self cmdPrintf: @"%@ can only be set on startup.\n", key];
val = nil;
}
else
{
[cmdDefs setCommand: nil forKey: key];
val = [cmdDefs objectForKey: key];
}
} }
else if ([mode caseInsensitiveCompare: @"write"] == NSOrderedSame else if ([mode caseInsensitiveCompare: @"write"] == NSOrderedSame
|| [mode caseInsensitiveCompare: @"set"] == NSOrderedSame) || [mode caseInsensitiveCompare: @"set"] == NSOrderedSame)
{ {
if ([msg count] == 4) if ([key isEqualToString: ecControlKey])
{
[self cmdPrintf: @"%@ can only be set on startup.\n", key];
val = nil;
}
else if ([msg count] == 4)
{ {
val = [msg objectAtIndex: 3]; val = [msg objectAtIndex: 3];
[cmdDefs setCommand: val forKey: key]; [cmdDefs setCommand: val forKey: key];
@ -3986,7 +4001,15 @@ NSLog(@"Ignored attempt to set timer interval to %g ... using 10.0", interval);
else if ([mode caseInsensitiveCompare: @"read"] == NSOrderedSame else if ([mode caseInsensitiveCompare: @"read"] == NSOrderedSame
|| [mode caseInsensitiveCompare: @"get"] == NSOrderedSame) || [mode caseInsensitiveCompare: @"get"] == NSOrderedSame)
{ {
val = [cmdDefs objectForKey: key]; if ([key isEqualToString: ecControlKey])
{
[self cmdPrintf: @"%@ can not be displayed.\n", key];
val = nil;
}
else
{
val = [cmdDefs objectForKey: key];
}
} }
else else
{ {
@ -3997,7 +4020,19 @@ NSLog(@"Ignored attempt to set timer interval to %g ... using 10.0", interval);
key]; key];
val = [cmdDefs objectForKey: key]; val = [cmdDefs objectForKey: key];
} }
if (val == old || [val isEqual: old])
if ([key isEqualToString: ecControlKey])
{
if ([old length] == 0)
{
[self cmdPrintf: @"%@ is not set.\n", key];
}
else
{
[self cmdPrintf: @"%@ was set on startup.\n", key];
}
}
else if (val == old || [val isEqual: old])
{ {
if (nil == val) if (nil == val)
{ {