summaryrefslogtreecommitdiffstats
path: root/src/usr/hwpf/fapi/fapiErrorInfo.C
diff options
context:
space:
mode:
Diffstat (limited to 'src/usr/hwpf/fapi/fapiErrorInfo.C')
-rw-r--r--src/usr/hwpf/fapi/fapiErrorInfo.C94
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
+
}
OpenPOWER on IntegriCloud