Index: ext/libicpf/src/exception.h =================================================================== diff -u -N -raba7605f4821e4a65dd64cb5118f4f44d65155eb -r9bdff2e0b309af11014634d8c38367e4f6b656e3 --- ext/libicpf/src/exception.h (.../exception.h) (revision aba7605f4821e4a65dd64cb5118f4f44d65155eb) +++ ext/libicpf/src/exception.h (.../exception.h) (revision 9bdff2e0b309af11014634d8c38367e4f6b656e3) @@ -28,6 +28,7 @@ #include "libicpf.h" #include "gen_types.h" +#undef THROW /** \brief Macro used for throwing an exception the easy way. * * Macro throws an exception specified by the parameters. Other params needed by @@ -38,7 +39,6 @@ * \param[in] sys_code - system error code (platform specific) * \param[in] reserved_code - currently unused; must be 0 */ -#undef THROW #define THROW(desc,app_code,sys_code,reserved_code) throw icpf::exception(desc, _t(__FILE__), _t(__FUNCTION__), __LINE__, app_code, sys_code, reserved_code) /// Logs an exception in a log file #define LOG_EXCEPTION(except, ptr_log) (except)->log("Caught an exception in ", _t(__FUNCTION__), ptr_log) @@ -61,13 +61,18 @@ exception(const tchar_t* pszDesc, const tchar_t* pszFilename, const tchar_t* pszFunction, uint_t uiLine, uint_t uiAppCode, uint_t uiSystemCode, uint_t uiReserved); /// Standard constructor that takes non-const ptr to a buffer as the description exception(tchar_t* pszDesc, const tchar_t* pszFilename, const tchar_t* pszFunction, uint_t uiLine, uint_t uiAppCode, uint_t uiSystemCode, uint_t uiReserved); + /// Copy constructor + exception(const exception& rSrc); /// Standard destructor ~exception(); + + /// Assignment operator + exception& operator=(const exception& eSrc); /**@}*/ /** \name Outputting */ /**@{*/ - const tchar_t* get_info(tchar_t* pszInfo, intptr_t tMaxLen); ///< Retrieves the exception information to a specified string buffer + const tchar_t* get_info(tchar_t* pszInfo, size_t stMaxLen); ///< Retrieves the exception information to a specified string buffer const tchar_t* get_desc() const { return m_pszDesc; }; const tchar_t* get_filename() const { return m_pszFilename; }; const tchar_t* get_function() const { return m_pszFunction; };