ReactOS  0.4.15-dev-5112-g22d8c0f
seh0054.c
Go to the documentation of this file.
1 // Copyright (c) Microsoft. All rights reserved.
2 // Licensed under the MIT license. See LICENSE file in the project root for
3 // full license information.
4 
5 #include <windows.h>
6 #include "seh.h"
7 
8 char test[] = "seh0054.c";
9 
10 LONG Echo(LONG Value) { return Value; }
11 
12 int main() {
13  LONG Counter;
14 
15  Counter = 0;
16 
17  try {
18  try {
19  if (Echo(Counter) == Counter) {
20  Counter += 3;
21  leave;
22 
23  } else {
24  Counter += 100;
25  }
26  }
27  finally {
28  if (abnormal_termination() == FALSE) {
29  Counter += 5;
30  }
31  }
32  endtry
33 
34  if (Echo(Counter) == Counter) {
35  Counter += 3;
36  leave;
37 
38  } else {
39  Counter += 100;
40  }
41  }
42  finally {
43  if (abnormal_termination() == FALSE) {
44  Counter += 5;
45  }
46  }
47  endtry
48 
49  if (Counter != 16) {
50  printf("TEST 54 FAILED, Counter = %d\n", Counter);
51  return -1;
52  }
53 
54  return 0;
55 }
#define endtry
Definition: seh.h:24
#define FALSE
Definition: types.h:117
long LONG
Definition: pedump.c:60
LONG Echo(LONG Value)
Definition: seh0054.c:10
_Must_inspect_result_ _In_ WDFKEY _In_ PCUNICODE_STRING _Out_opt_ PUSHORT _Inout_opt_ PUNICODE_STRING Value
Definition: wdfregistry.h:406
char test[]
Definition: seh0054.c:8
#define printf
Definition: freeldr.h:94
#define leave
Definition: btrfs_drv.h:138
int main()
Definition: seh0054.c:12
static LARGE_INTEGER Counter
Definition: clock.c:43
#define abnormal_termination
Definition: seh.h:25