Start looper under Windows SEH (Structured Exception Handling) control
| 1589 | |
| 1590 | // Start looper under Windows SEH (Structured Exception Handling) control |
| 1591 | static void looper_seh(thread_db* tdbb, Request* request, const StmtNode* node) |
| 1592 | { |
| 1593 | #ifdef WIN_NT |
| 1594 | START_CHECK_FOR_EXCEPTIONS(NULL); |
| 1595 | #endif |
| 1596 | // TODO: |
| 1597 | // 1. Try to fix the problem with MSVC C++ runtime library, making |
| 1598 | // even C++ exceptions that are implemented in terms of Win32 SEH |
| 1599 | // getting catched by the SEH handler below. |
| 1600 | // 2. Check if it really is correct that only Win32 catches CPU |
| 1601 | // exceptions (such as SEH) here. Shouldn't any platform capable |
| 1602 | // of handling signals use this stuff? |
| 1603 | // (see jrd/ibsetjmp.h for implementation of these macros) |
| 1604 | |
| 1605 | EXE_looper(tdbb, request, node); |
| 1606 | |
| 1607 | #ifdef WIN_NT |
| 1608 | END_CHECK_FOR_EXCEPTIONS(NULL); |
| 1609 | #endif |
| 1610 | } |
| 1611 | |
| 1612 | |
| 1613 | static void release_blobs(thread_db* tdbb, Request* request) |
no test coverage detected