Archived
1
0

Fixing CLI command processing bug.

- Issue with the first space delimiter before the args
This commit is contained in:
Jacob Alexander 2014-01-22 01:10:32 -08:00
parent 7230e061d7
commit 30c45e948f

View File

@ -186,14 +186,13 @@ void commandLookup_cli()
char* cmdPtr = CLILineBuffer - 1; char* cmdPtr = CLILineBuffer - 1;
while ( *++cmdPtr == ' ' ); // Skips leading spaces, and points to first character of cmd while ( *++cmdPtr == ' ' ); // Skips leading spaces, and points to first character of cmd
// Locates first space delimiter, and points to first character of args or a NULL (no args) // Locates first space delimiter
char* argPtr = cmdPtr; char* argPtr = cmdPtr + 1;
do { while ( *argPtr != ' ' && *argPtr != '\0' )
argPtr++; argPtr++;
} while ( *argPtr != ' ' && *argPtr != '\0' );
// Set the space delimiter as a NULL // Point to the first character of args or a NULL (no args) and set the space delimiter as a NULL
argPtr[-1] = '\0'; (++argPtr)[-1] = '\0';
// Scan array of dictionaries for a valid command match // Scan array of dictionaries for a valid command match
for ( uint8_t dict = 0; dict < CLIDictionariesUsed; dict++ ) for ( uint8_t dict = 0; dict < CLIDictionariesUsed; dict++ )