cached_text_t* pEntry = m_aCache + iHash; if(pEntry->iMessageLength != iMessageLength || pEntry->iWidth > iWidth || (iWidth != INT_MAX && pEntry->iWidth < iWidth) || pEntry->eAlign != eAlign || !pEntry->bIsValid || memcmp(pEntry->sMessage, sMessage, iMessageLength) != 0) { // Cache entry does not match the message being drawn, so discard the // cache entry. _freeTexture(pEntry); _setNullTexture(pEntry); delete[] pEntry->pData; pEntry->pData = NULL; pEntry->bIsValid = false; ......