1. char buf[256], options[80]; Много функций имеют такие вот фиксированные буфера на стеке для работы с 80x25 терминалом, если запускать в Linux/Mac широком терминале, то происходит переполнение. Быстрое лечение - замена на бОльшие значения буферов. Правильное лечение - узнать размер терминала, выделить буфер соответственно, ещё надо ловить сигналы, когда размер терминала меняется и перевыделять буфера и перерисовывать экран по-хорошему - это много кода и он платформенно зависимый.
2. Overflow Прочие переполнения фиксированных буферов, например, когда идёт *цветовое выделение фрагмента*, можно предположить худший сценарий, когда весь текст будет выделен. -+- a/golded3/gectnr.cpp +++ b/golded3/gectnr.cpp @@ -95,7 +95,7 @@ void Container::StyleCodeHighlight(const char* text, int row, int col, bool dohi