Я компилирую свою программу со сторонней библиотекой. Эта библиотека содержит обратный вызов ошибки, если ошибка возникает внутри. Внутри этого обратного вызова ошибки я выбрасываю исключение, и у меня есть модульный тест, чтобы убедиться, что когда я делаю что-то недопустимое, возникает исключение. Все это прекрасно работает в Windows, но когда я тестирую это в Linux (Fedora), я получаю прерывание из-за неперехваченного исключения.
Я попытался обернуть свой вызов напрямую блоком try-catch, но безуспешно. (Кроме того, весь мой код работает в тестовой среде Google, которая также обычно перехватывает исключения). Единственное, что, кажется, перехватывает исключение, это если я оборачиваю оператор throw в блок try непосредственно в обратном вызове ошибки.
Кто-нибудь знает, почему это произойдет и есть ли способ поймать исключение?