Интересно, а как, используя QProcess, узнать, каким сигналом был убит потомок? Без Qt все просто и понятно. А как с ней? Просмотр qprocess_unix.cpp показывает, что никак: код завершения процесса просто выкидывается, если процесс умер не сам. Но вдруг знатокам Qt известен какой-то хитрый способ?
> А если переопределить функцию, которая код заверешения выбрасывает ?
Не получится (без патча Qt). Функция определяется так (внутри QProcess):
bool isRunning() const;
Она вызывает waitpid. Не юзать ее совсем, а самому звать waitpid тоже не получится, потому что она юзает объект QProcessPrivate, объявленный в секции private класса QProcess.
Т.е. единственный вариант, который я вижу -- не юзать QProcess, если по завершении создаваемого процесса надо получить конкретную причину его завершения.