Dear GNU Chess developers, while translating GNU Chess into German, I stumbled upon the PGNSaveToFile function and noticed some bugs:
* The result of getchar() is saved in a char variable. That variable is later passed to tolower, resulting in undefined behavior. The variable type should be int. * If the input stream ends during "while( getchar() != '\n' )", the program gets stuck in a CPU-consuming endless loop. * In that same loop, the parenthesis is placed wrong. This is just a formatting issue. The formatting in this function is inconsistent in several other places, too. * The code explicitly checks for the characters "yn", which only works well for English. For example, German requires "jn", French requires "on", Spanish requires "sn". It would be better to use the rpmatch function instead. Best, Roland _______________________________________________ Bug-gnu-chess mailing list [email protected] https://lists.gnu.org/mailman/listinfo/bug-gnu-chess
