BazisLib uses STLPort with exception handling disabled.
What happens if map::insert fails to allocate memory?
# define __THROW_BAD_ALLOC puts("out of memory\n"); exit(1)void _cdecl exit(int _Code)
{
KeBugCheck(STATUS_INTERNAL_ERROR);
}bazis wrote:Unfortunately, I don't have much time to look into details right now. However, I don't think that relying on undocumented _CxxThrowException(), that can be changed in future versions, is a good idea.
bazis wrote:Moreover, I don't explicitly see whether your example is compatible with x64.
bazis wrote:I would suggest redefining __THROW_BAD_ALLOC using SEH. As SEH is already supported by WDK, that should not be a problem. We won't get a full equivalent of C++ exceptions, however, this particular problem (handle npagednew() for STL containers) will be solved smoothly.
Return to Programs & articles discussions
Users browsing this forum: No registered users and 1 guest