source: trunk/src/kernel32/exceptutil.h@ 21619

Last change on this file since 21619 was 21619, checked in by dmik, 14 years ago

kernel32: Removed the dirty hack that would reset the exception handler chain before calling DosExit(). This prevented exception handlers in the chain from being called at thread termination and performing the necessary cleanup which is sometimes vital (like releasing locked resources etc).

File size: 994 bytes
Line 
1/* $Id: exceptutil.h,v 1.15 2003-03-06 12:49:08 sandervl Exp $ */
2
3/*
4 * Exception + misc functions for OS/2
5 * Copyright 1998 Sander van Leeuwen
6 * Project Odin Software License can be found in LICENSE.TXT
7 */
8#ifndef __EXCEPT_H__
9#define __EXCEPT_H__
10
11#ifdef __cplusplus
12extern "C" {
13#endif
14
15//SvL: Replace original startup code exception handler
16#ifndef WIN32_TIBSEL
17void ReplaceExceptionHandler(void);
18void ChangeTIBStack();
19#endif
20void __cdecl SetExceptionChain(DWORD);
21
22extern "C" PVOID QueryExceptionChain();
23
24void OS2SetExceptionHandler(void *exceptframe);
25void OS2UnsetExceptionHandler(void *exceptframe);
26
27#ifdef DEBUG
28void PrintExceptionChain();
29#else
30#define PrintExceptionChain()
31#endif
32
33ULONG CDECL AsmCallThreadHandler(BOOL fAlignStack, ULONG handler, LPVOID parameter);
34
35DWORD CDECL CallEntryPoint(DWORD entryPoint, DWORD parameter);
36
37#ifdef __cplusplus
38}
39#endif
40
41#define ENTER_EXCEPTION 0
42#define LEAVE_EXCEPTION 1
43int LogException(int state, int prevlock = 0);
44
45
46#endif
Note: See TracBrowser for help on using the repository browser.