История изменений
Исправление
arturpub,
(текущая версия)
:
Под отладчиком или в консоли если пишет broken pipe, значит ты схватил unix-сигнал SIGPIPE, а он по дефолту валит процесс. Если так, то надо заблочить SIGPIPE: signal(SIGPIPE, SIG_IGN); тогда write() начнет вместо этого возвращать EPIPE в errno и ты сможешь это обработать.
Тут кстати есть и другие решения: http://stackoverflow.com/questions/108183/how-to-prevent-sigpipes-or-handle-t...
Исходная версия
arturpub,
:
Под отладчиком или в консоли если пишет broken pipe, значит ты схватил unix-сигнал SIGPIPE, а он по дефолту валит процесс. Если так, то надо заблочить SIGPIPE: signal(SIGPIPE, SIG_IGN); тогда write() начнет вместо этого возвращать EPIPE в errno и ты сможешь это обработать.