Imagination PowerVR SDK Blog

PVRTMap bugs (SDK3.2)


#1

Hi, I am still using PVR 3.2, and am wondering if any attention has been paid to the PVRTMap in 3.3? I am trying to avoid any upgrades presently.



With the version I am using, it appears that the entry removal implementation is broken (see PVRTMap.h - > Remove(const KeyType key). The map size offset is being decremented before the transplant occurs (leak), and the data array size isn’t updated to reflect the actual ‘useful’ allotment, which causes size synchronization problems when adding new elements.



Thanks,

Jason


#2

Hi WulfeCub,



Thanks for the notification, since we are between releases I am not sure we’ll be able to push it for 3.3.

In the meantime, if you want, you can use the following to fix the problem:

File Tools/PVRTMap.h



Replace line 156 with:

m_Keys[uiIndex] = m_Keys[m_uiSize]; m_Keys.RemoveLast();



Replace line 159 with:

m_Data[uiIndex] = m_Data[m_uiSize]; m_Data.RemoveLast();



Gerry


#3

Yup, thanks Gerry. Just thought I’d bring it to your attention, in case others have or do experience the same problem.



Jason