diff options
Diffstat (limited to 'src/usr/hwpf/fapi/fapiErrorInfo.C')
-rw-r--r-- | src/usr/hwpf/fapi/fapiErrorInfo.C | 94 |
1 files changed, 91 insertions, 3 deletions
diff --git a/src/usr/hwpf/fapi/fapiErrorInfo.C b/src/usr/hwpf/fapi/fapiErrorInfo.C index 237be79a5..ce2107dfb 100644 --- a/src/usr/hwpf/fapi/fapiErrorInfo.C +++ b/src/usr/hwpf/fapi/fapiErrorInfo.C @@ -45,6 +45,7 @@ #include <fapiErrorInfo.H> #include <string.h> +#include <fapiUtil.H> namespace fapi { @@ -57,8 +58,16 @@ ErrorInfoFfdc::ErrorInfoFfdc(const uint32_t i_ffdcId, const uint32_t i_size) : iv_ffdcId(i_ffdcId), iv_size(i_size) { - iv_pFfdc = new uint8_t[i_size]; - memcpy(iv_pFfdc, i_pFfdc, i_size); + iv_pFfdc = reinterpret_cast<uint8_t *>(fapiMalloc(i_size)); + if(iv_pFfdc != NULL) + { + memcpy(iv_pFfdc, i_pFfdc, i_size); + } + else + { + FAPI_ERR("ErrorInfoFfdc - could not allocate storage"); + iv_size = 0; + } } //****************************************************************************** @@ -66,7 +75,7 @@ ErrorInfoFfdc::ErrorInfoFfdc(const uint32_t i_ffdcId, //****************************************************************************** ErrorInfoFfdc::~ErrorInfoFfdc() { - delete [] iv_pFfdc; + fapiFree(iv_pFfdc); iv_pFfdc = NULL; } @@ -80,6 +89,26 @@ const void * ErrorInfoFfdc::getData(uint32_t & o_size) const } //****************************************************************************** +// ErrorInfoFfdc new Operator Overload +//****************************************************************************** +#ifdef FAPI_CUSTOM_MALLOC +void * ErrorInfoFfdc::operator new(size_t i_sz) +{ + return fapiMalloc(i_sz); +} +#endif + +//****************************************************************************** +// ErrorInfoFfdc delete Operator Overload +//****************************************************************************** +#ifdef FAPI_CUSTOM_MALLOC +void ErrorInfoFfdc::operator delete(void * i_ptr) +{ + fapiFree(i_ptr); +} +#endif + +//****************************************************************************** // ErrorInfoProcedureCallout Constructor //****************************************************************************** ErrorInfoProcedureCallout::ErrorInfoProcedureCallout( @@ -100,8 +129,27 @@ ErrorInfoBusCallout::ErrorInfoBusCallout( : iv_target1(i_target1), iv_target2(i_target2), iv_calloutPriority(i_calloutPriority) { +} +//****************************************************************************** +// ErrorInfoProcedureCallout new Operator Overload +//****************************************************************************** +#ifdef FAPI_CUSTOM_MALLOC +void * ErrorInfoProcedureCallout::operator new(size_t i_sz) +{ + return fapiMalloc(i_sz); } +#endif + +//****************************************************************************** +// ErrorInfoProcedureCallout delete Operator Overload +//****************************************************************************** +#ifdef FAPI_CUSTOM_MALLOC +void ErrorInfoProcedureCallout::operator delete(void * i_ptr) +{ + fapiFree(i_ptr); +} +#endif //****************************************************************************** // ErrorInfoCDG Constructor @@ -118,6 +166,26 @@ ErrorInfoCDG::ErrorInfoCDG(const Target & i_target, } //****************************************************************************** +// ErrorInfoCDG new Operator Overload +//****************************************************************************** +#ifdef FAPI_CUSTOM_MALLOC +void * ErrorInfoCDG::operator new(size_t i_sz) +{ + return fapiMalloc(i_sz); +} +#endif + +//****************************************************************************** +// ErrorInfoCDG delete Operator Overload +//****************************************************************************** +#ifdef FAPI_CUSTOM_MALLOC +void ErrorInfoCDG::operator delete(void * i_ptr) +{ + fapiFree(i_ptr); +} +#endif + +//****************************************************************************** // ErrorInfoChildrenCDG Constructor //****************************************************************************** ErrorInfoChildrenCDG::ErrorInfoChildrenCDG( @@ -161,4 +229,24 @@ ErrorInfo::~ErrorInfo() } } +//****************************************************************************** +// ErrorInfo new Operator Overload +//****************************************************************************** +#ifdef FAPI_CUSTOM_MALLOC +void * ErrorInfo::operator new(size_t i_sz) +{ + return fapiMalloc(i_sz); +} +#endif + +//****************************************************************************** +// ErrorInfo delete Operator Overload +//****************************************************************************** +#ifdef FAPI_CUSTOM_MALLOC +void ErrorInfo::operator delete(void * i_ptr) +{ + fapiFree(i_ptr); +} +#endif + } |