Previously the command was being modified in place in order
to find the command name. This was happening before saving
to the history.
Fixes #70
- // Only do command-related stuff if there was actually a command
- // Avoids clogging command history with blanks
+ // Add the command to the history
+ CLI_saveHistory( CLILineBuffer );
// Process the current line buffer
CLI_commandLookup();
// Process the current line buffer
CLI_commandLookup();
- // Add the command to the history
- CLI_saveHistory( CLILineBuffer );
-
// Keep the array circular, discarding the older entries
if ( CLIHistoryTail < CLIHistoryHead )
CLIHistoryHead = ( CLIHistoryHead + 1 ) % CLIMaxHistorySize;
// Keep the array circular, discarding the older entries
if ( CLIHistoryTail < CLIHistoryHead )
CLIHistoryHead = ( CLIHistoryHead + 1 ) % CLIMaxHistorySize;
+ // Don't write empty lines to the history
+ const char *cursor = buff;
+ while (*cursor == ' ') { cursor++; } // advance past the leading whitespace
+ if (*cursor == '\0') { return ; }
+
// Copy the line to the history
int i;
for (i = 0; i < CLILineBufferCurrent; i++)
// Copy the line to the history
int i;
for (i = 0; i < CLILineBufferCurrent; i++)