diff options
Diffstat (limited to 'cpp/src')
-rw-r--r-- | cpp/src/Ice/Outgoing.cpp | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/cpp/src/Ice/Outgoing.cpp b/cpp/src/Ice/Outgoing.cpp index c97d5cb3d16..d1e91bbe85f 100644 --- a/cpp/src/Ice/Outgoing.cpp +++ b/cpp/src/Ice/Outgoing.cpp @@ -501,7 +501,8 @@ Outgoing::completed(InputStream& is) ex->id = ident; ex->facet = facet; ex->operation = operation; - ICE_RESET_EXCEPTION(_exception, ex); + ICE_RESET_EXCEPTION(_exception, ex->ice_clone()); + delete ex; _state = StateLocalException; // The state must be set last, in case there is an exception. break; } |