summaryrefslogtreecommitdiff
path: root/tests/Reactor_Exceptions_Test.cpp
diff options
context:
space:
mode:
authorschmidt <douglascraigschmidt@users.noreply.github.com>1999-06-26 20:23:33 +0000
committerschmidt <douglascraigschmidt@users.noreply.github.com>1999-06-26 20:23:33 +0000
commite7149fedca3454c09a4720fc23811e4d5f0e452f (patch)
treed269170a79ef00965dd19605afe35939a2d8a730 /tests/Reactor_Exceptions_Test.cpp
parent1b4fd30d6aa717eecf6604c2d6b3a29e625e89d0 (diff)
downloadATCD-e7149fedca3454c09a4720fc23811e4d5f0e452f.tar.gz
.
Diffstat (limited to 'tests/Reactor_Exceptions_Test.cpp')
-rw-r--r--tests/Reactor_Exceptions_Test.cpp21
1 files changed, 21 insertions, 0 deletions
diff --git a/tests/Reactor_Exceptions_Test.cpp b/tests/Reactor_Exceptions_Test.cpp
index cc4905525fa..fa7f3797c4e 100644
--- a/tests/Reactor_Exceptions_Test.cpp
+++ b/tests/Reactor_Exceptions_Test.cpp
@@ -107,9 +107,29 @@ public:
virtual int handle_events (ACE_Time_Value *max_wait_time)
{
int ret = 0;
+
try
{
+# if defined (__BORLANDC__)
+ // BCB does not catch structured exceptions with catch (...).
+ // Actually, the ANSI spec says that system exceptions are not
+ // supposed to be caught with catch. Borland may add this, and
+ // make it "switchable" in the future...
+ try
+ {
+# endif /* defined (__BORLANDC__) */
+
ret = ACE_Reactor::handle_events (max_wait_time);
+
+# if defined (__BORLANDC__)
+ }
+ __except (EXCEPTION_EXECUTE_HANDLER)
+ {
+ // Probably should handle the details of the exception
+ // and throw something that represents the structured exception
+ throw "Win32 Structured Exception";
+ }
+# endif /* defined (__BORLANDC__) */
}
catch (...)
{
@@ -118,6 +138,7 @@ public:
ret = -1;
// do your thing, etc.
}
+//}
return ret;
}