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;
......