Return TypeFunction nameArguments
hzEcodehzString::SetValue(const char*,unsigned int,)

Declared in file: hzString.h
Defined in file : hzString.cpp

Function Logic:

0:START 1:hzString::Clear 2:!cpStr||!cpStr[0] 3:Return E_OK 4:nLen<=0||nLen>HZSTRING_MAXLEN 5:hzString::operator= 6:Return E_RANGE 7:_strAlloc m_addr 8:!m_addr 9:hzexit 10:_strXlate destCtl _strItem::_setSize _strItem::_data memcpy destCtl 11:Return E_OK

Function body:

hzEcode hzString::SetValue (const char* cpStr, unsigned int nLen)
{
   _hzfunc("hzString::SetValue(a)") ;
   _strItem*   destCtl ;
   Clear() ;
   if (!cpStr || !cpStr[0])
       return E_OK ;
   if (nLen <&eq; 0|| nLen > HZSTRING_MAXLEN)
   {
       operator=(_hzString_TooLong) ;
       return E_RANGE ;
   }
   m_addr = _strAlloc(nLen) ;
   if (!m_addr)
       hzexit(E_MEMORY, "Cannot allocate string of %d bytes", nLen) ;
   destCtl = (_strItem*) _strXlate(m_addr) ;
   destCtl->_setSize(nLen) ;
   memcpy(destCtl->_data(), cpStr, nLen) ;
   destCtl->m_copy = 1;
   return E_OK ;
}