diff options
Diffstat (limited to 'cppe')
-rw-r--r-- | cppe/include/IceE/Object.h | 9 | ||||
-rw-r--r-- | cppe/src/IceE/Object.cpp | 14 |
2 files changed, 14 insertions, 9 deletions
diff --git a/cppe/include/IceE/Object.h b/cppe/include/IceE/Object.h index 6ac7850cc60..2c1764e30cb 100644 --- a/cppe/include/IceE/Object.h +++ b/cppe/include/IceE/Object.h @@ -59,7 +59,14 @@ protected: Object() {}; virtual ~Object() {} // This class is abstract. - static void __checkMode(OperationMode, OperationMode); + static void __checkMode(OperationMode expected, OperationMode received) // Inline for performance reasons. + { + if(expected != received) + { + __invalidMode(expected, received); // Not inlined. + } + } + static void __invalidMode(OperationMode, OperationMode); }; class ICE_API Blobject : public Object diff --git a/cppe/src/IceE/Object.cpp b/cppe/src/IceE/Object.cpp index 6d5e5ee13f8..1f0c0a96fbe 100644 --- a/cppe/src/IceE/Object.cpp +++ b/cppe/src/IceE/Object.cpp @@ -183,15 +183,13 @@ operationModeToString(OperationMode mode) } void -Ice::Object::__checkMode(OperationMode expected, OperationMode received) +Ice::Object::__invalidMode(OperationMode expected, OperationMode received) { - if(expected != received) - { - Ice::MarshalException ex(__FILE__, __LINE__); - ex.reason = Ice::printfToString("unexpected operation mode. expected = %s received = %s", - operationModeToString(expected), operationModeToString(received)); - throw ex; - } + assert(expected != received); + Ice::MarshalException ex(__FILE__, __LINE__); + ex.reason = Ice::printfToString("unexpected operation mode. expected = %s received = %s", + operationModeToString(expected), operationModeToString(received)); + throw ex; } DispatchStatus |