Пример #1
0
static void hb_trace_message( char * buffer, HB_SIZE nSize, int iParam, int iCount )
{
   int iFirst = iParam;

   buffer[ 0 ] = '\0';

   while( iParam <= iCount && nSize > 1 )
   {
      char * pszString;
      HB_SIZE nLen;
      HB_BOOL fFree;

      if( iParam > iFirst )
      {
         *buffer++ = ' ';
         --nSize;
      }
      pszString = hb_itemString( hb_param( iParam, HB_IT_ANY ), &nLen, &fFree );
      hb_strncpy( buffer, pszString, nSize );
      nLen = strlen( buffer );
      nSize -= nLen;
      buffer += nLen;
      if( fFree )
         hb_xfree( pszString );
      iParam++;
   }
}
Пример #2
0
static char * hb_itemStringCon( PHB_ITEM pItem, HB_SIZE * pnLen, HB_BOOL * pfFreeReq )
{
   /* logical values in device output (not console, stdout or stderr) are
      shown as single letter */
   if( HB_IS_LOGICAL( pItem ) )
   {
      *pnLen = 1;
      *pfFreeReq = HB_FALSE;
      return ( char * ) ( hb_itemGetL( pItem ) ? "T" : "F" );
   }
   return hb_itemString( pItem, pnLen, pfFreeReq );
}