Заметил, что некоторые ошибки никак не показываются. Например, если создать сессию и попытаться сохранить её с именем, которое уже существует, то пользователю не показывается никаких сообщений о том, что что-то не так.
Причина в том, что многие ошибочные ситуации выбрасывают неспецифическое исключение Exception, вроде такого: throw Exception(FORMAT(GetMsg(NB_SESSION_ALREADY_EXISTS_ERROR), Name));. Если такое исключение в итоге попадает в функцию TWinSCPPlugin::ShowExtendedException, то оно отфильтровывается и не показывается.
Пулл реквест заставляет функцию TWinSCPPlugin::ShowExtendedException показывать все сообщения, содержащие текст ошибки.
Заметил, что некоторые ошибки никак не показываются. Например, если создать сессию и попытаться сохранить её с именем, которое уже существует, то пользователю не показывается никаких сообщений о том, что что-то не так.
Причина в том, что многие ошибочные ситуации выбрасывают неспецифическое исключение
Exception
, вроде такого:throw Exception(FORMAT(GetMsg(NB_SESSION_ALREADY_EXISTS_ERROR), Name));
. Если такое исключение в итоге попадает в функциюTWinSCPPlugin::ShowExtendedException
, то оно отфильтровывается и не показывается.Пулл реквест заставляет функцию
TWinSCPPlugin::ShowExtendedException
показывать все сообщения, содержащие текст ошибки.