Indy (Delphi) и распознавание актуального ResponseCode
Насколько я вижу, в Indy 10 (Delphi), если не выставлен флаг hoNoProtocolErrorException, запросы генерят исключение при неуспешном результате запроса (например, ошибка 404 и пр).
При этом ResponseCode устанавливается в нужное значение (404).
Однако, если исключение возникает по какой-то другой причине (например, таймаут), то ResponseCode, как я вижу, не меняется. Т.е. если при прошлом запросе было 200, то так 200 и останется.
Вопрос: можно ли каким-то образом либо сбросить ResponseCode в -1 перед вызовом (прямым присваиванием не получится, ибо это read only property), либо определить был ли ResponseCode установлен в нужное значение или нет?
Можно отлавливать EIdHTTPProtocolException, но есть подозрение, что это не единственное исключение, при котором устанавливается ResponseCode.
Резюме: нужно после отправки запроса определить актуальность значения ResponseCode, если возникло исключение. Каким образом это можно сделать?