summaryrefslogtreecommitdiff
path: root/cpp/src/slice2cpp/Gen.cpp
diff options
context:
space:
mode:
authorBenoit Foucher <benoit@zeroc.com>2008-04-02 17:12:55 +0200
committerBenoit Foucher <benoit@zeroc.com>2008-04-02 17:12:55 +0200
commit61c042a6a2e706e75c1a948eedcfe9c6d9fb7197 (patch)
tree113f725a4ada31ed6f7698ee6725e35bf1be3ea6 /cpp/src/slice2cpp/Gen.cpp
parentFixed bugs #2965 and #2987 (diff)
downloadice-61c042a6a2e706e75c1a948eedcfe9c6d9fb7197.tar.bz2
ice-61c042a6a2e706e75c1a948eedcfe9c6d9fb7197.tar.xz
ice-61c042a6a2e706e75c1a948eedcfe9c6d9fb7197.zip
Fixed bug 2962
Diffstat (limited to 'cpp/src/slice2cpp/Gen.cpp')
-rwxr-xr-xcpp/src/slice2cpp/Gen.cpp7
1 files changed, 6 insertions, 1 deletions
diff --git a/cpp/src/slice2cpp/Gen.cpp b/cpp/src/slice2cpp/Gen.cpp
index ddf90893d2b..85662dff609 100755
--- a/cpp/src/slice2cpp/Gen.cpp
+++ b/cpp/src/slice2cpp/Gen.cpp
@@ -2694,7 +2694,12 @@ Slice::Gen::DelegateMVisitor::visitOperation(const OperationPtr& p)
}
C << nl << "catch(const ::Ice::UserException& __ex)";
C << sb;
- C << nl << "throw ::Ice::UnknownUserException(__FILE__, __LINE__, __ex.ice_name());";
+ //
+ // COMPILERFIX: Don't throw UnknownUserException directly. This is causing access
+ // violation errors with Visual C++ 64bits optimized builds. See bug #2962.
+ //
+ C << nl << "::Ice::UnknownUserException __uue(__FILE__, __LINE__, __ex.ice_name());";
+ C << nl << "throw __uue;";
C << eb;
C << eb;