diff options
author | nagurram-in <nagendra.g@in.ibm.com> | 2017-01-05 16:53:37 -0600 |
---|---|---|
committer | William G. Hoffa <wghoffa@us.ibm.com> | 2017-01-12 16:49:45 -0500 |
commit | b7457ee2b618315f7311b9500aa50116dfa0c9ba (patch) | |
tree | 32f498fee750806a38a69a7dfdc3c4f212ff536e /src/usr/hdat | |
parent | 3894e8b76643e16adb3089d975c106ae0f16aec3 (diff) | |
download | talos-hostboot-b7457ee2b618315f7311b9500aa50116dfa0c9ba.tar.gz talos-hostboot-b7457ee2b618315f7311b9500aa50116dfa0c9ba.zip |
null pointer access fix in hdatmsarea
Change-Id: I8ad167726633f1dd94adb4a96a0ba02968af137a
Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/34461
Reviewed-by: VENKATESH SAINATH <venkatesh.sainath@in.ibm.com>
Tested-by: Jenkins Server <pfd-jenkins+hostboot@us.ibm.com>
Tested-by: FSP CI Jenkins <fsp-CI-jenkins+hostboot@us.ibm.com>
Tested-by: Jenkins OP Build CI <op-jenkins+hostboot@us.ibm.com>
Reviewed-by: William G. Hoffa <wghoffa@us.ibm.com>
Diffstat (limited to 'src/usr/hdat')
-rwxr-xr-x | src/usr/hdat/hdatmsarea.C | 10 | ||||
-rwxr-xr-x | src/usr/hdat/hdatmsarea.H | 2 |
2 files changed, 7 insertions, 5 deletions
diff --git a/src/usr/hdat/hdatmsarea.C b/src/usr/hdat/hdatmsarea.C index ab3199f07..ac9c9c6c5 100755 --- a/src/usr/hdat/hdatmsarea.C +++ b/src/usr/hdat/hdatmsarea.C @@ -214,7 +214,8 @@ HdatMsArea::~HdatMsArea() l_curPtr = reinterpret_cast<HdatRam **>(reinterpret_cast<char*>(l_curPtr) + sizeof(HdatRam *)); } - + + delete[] iv_msaI2cDataPtr; delete[] iv_kwd; delete[] iv_addrRange; delete[] iv_ecLvl; @@ -396,9 +397,10 @@ void HdatMsArea::setMsaI2cInfo( iv_msaHostI2cCnt, iv_msaHostI2cSize); if ( i_I2cDevEntries.size() != 0 ) { - //copy from vector to array - std::copy(i_I2cDevEntries.begin(),i_I2cDevEntries.end(), - iv_msaI2cDataPtr); + iv_msaI2cDataPtr = new uint8_t[sizeof(hdatMsAreaHI2cData_t) * iv_msaHostI2cCnt]; + memcpy(iv_msaI2cDataPtr , i_I2cDevEntries.begin() , + (sizeof(hdatMsAreaHI2cData_t) * iv_msaHostI2cCnt)); + } else { diff --git a/src/usr/hdat/hdatmsarea.H b/src/usr/hdat/hdatmsarea.H index f92430803..6f4b4cf49 100755 --- a/src/usr/hdat/hdatmsarea.H +++ b/src/usr/hdat/hdatmsarea.H @@ -625,7 +625,7 @@ private: hdatHDIFDataArray_t iv_ecArrayHdr; hdatMsAreaEcLvl_t *iv_ecLvl; hdatHDIFDataArray_t iv_msaI2cHdr; - hdatMsAreaHI2cData_t *iv_msaI2cDataPtr; + uint8_t *iv_msaI2cDataPtr; HdatRam **iv_ramPtrs; |