PyErr_Fetch
не всегда возвращает триплет, где вторым аргументом является PyException
, поэтому, чтобы упростить синтаксический анализ, вы могли бы захотеть использовать PyErr_NormalizeException
для сортировки этой части (см. документация )
Однако в документации ничего не сказано о том, как исключение нормализации обрабатывает исходные результаты PyErr_Fetch
с точки зрения сохранения памяти при создании нового экземпляра исключения.
Могу ли я предположить, что независимо от того, PyErr_NormalizeException
делает с указателями PyErr_Fetch
Я могу PyErr_Restore
их и быть "в порядке", насколько это касается памяти?
Я бы сказал, что это так, но, возможно, мне не хватает детали, и вместо этого мне нужно «сделать что-то» с исходными результатами выборки.
Спасибо!