При отсутствии каких-либо bad'ов, всегда создаётся ".bf", ибо цикл прерывается только в случае обнаружения существующего пустого файла. Так же не проверяется существование самого ".bad". Hу и про обрезание расширения я нетмылом писал - видно, что изначально затея была с ".bXX" вместо ".bX", но с strnzcpy накосячили.
With best regards, Evgeny --- GoldED+/BSD 1.1.5-b20170303 * Origin: (2:5010/275)