That is actually exactly the behavior it "should" have right now when the line is too long. The input buffer is limited to 64 characters (in the current version). It is a configuration variable. The error handling could be improved. Please see the configuration constants: https://github.com/mikaelpatel/Cosa/blob/master/cores/cosa/Cosa/Shell.hh#L117
I will see what I can do about that in Shell::run() as the too long command lines will result in multiple gets() calls. These will have to be ignored and reported as an error.
Thank you Mikael, please treat my posts informational, by any mean not as a change request, I only shared it as result of the crash testing
and if it can help you with the development that's good, otherwise just ignore it
. I'm happy to do some beta/stress testing
I think I'm going to capture the uart in the main loop and pass the string to shell when the command line is ready to be processed so I will not block the main loop while waiting for the command line, this way I can quite easily test the string before passing it to shell to avoid multiple gets() calls