Esempio n. 1
0
static PHB_IOUSR s_iousrAddNew( const char * pszPrefix )
{
   PHB_IOUSR pIO = NULL;
   int iCount;

   HB_IOUSR_LOCK();

   iCount = s_iCount;
   while( --iCount >= 0 )
   {
      if( hb_stricmp( pszPrefix, s_ioUsrs[ iCount ]->prefix ) == 0 )
         break;
   }
   if( iCount < 0 )
   {
      if( s_iCount == 0 )
         hb_vmAtQuit( s_iousrFreeAll, NULL );
      pIO = ( PHB_IOUSR ) hb_xgrabz( sizeof( HB_IOUSR ) );
      pIO->prefix = hb_strdup( pszPrefix );
      pIO->prefix_len = ( int ) strlen( pszPrefix );
      s_ioUsrs[ s_iCount++ ] = pIO;
   }

   HB_IOUSR_UNLOCK();

   return pIO;
}
Esempio n. 2
0
static void socket_init( void )
{
   if( ! s_fInit )
   {
      hb_socketInit();
      hb_vmAtQuit( socket_exit, NULL );
      s_fInit = HB_TRUE;
   }
}
Esempio n. 3
0
static void memfsInit( void )
{
   /* HB_CRITICAL_INIT( s_mtx ); */
   s_error = 0;
   s_fs.ulInodeCount = 0;
   s_fs.ulInodeAlloc = HB_MEMFS_INITSIZE;
   s_fs.pInodes = ( PHB_MEMFS_INODE * ) hb_xgrab( sizeof( PHB_MEMFS_INODE ) * s_fs.ulInodeAlloc );
   s_fs.ulFileAlloc = HB_MEMFS_INITSIZE;
   s_fs.pFiles = ( PHB_MEMFS_FILE * ) hb_xgrabz( sizeof( PHB_MEMFS_FILE ) * s_fs.ulFileAlloc );
   s_fs.ulFileLast = 0;
   hb_vmAtQuit( memfsExit, NULL );
}
Esempio n. 4
0
static void s_signalHandlersInit()
{
#if defined( HB_THREAD_SUPPORT ) && ( defined( HB_OS_UNIX ) || defined( HB_OS_UNIX ) )
   pthread_t  res;
   HB_STACK * pStack;

   s_serviceSetHBSig();

   pStack = hb_threadCreateStack( 0 );
   pthread_create( &res, NULL, s_signalListener, pStack );
#else
   s_serviceSetHBSig();
#endif

   s_pHooks = hb_itemArrayNew( 0 );
   hb_vmAtQuit( hb_service_exit, NULL );
}
Esempio n. 5
0
HB_BOOL hb_oleAxInit( void )
{
   hb_oleInit();

   if( s_hLib == NULL )
   {
      PHB_AX_WININIT pAtlAxWinInit;

      s_hLib = hbwapi_LoadLibrarySystem( TEXT( "atl.dll" ) );
      if( ( unsigned long ) ( HB_PTRDIFF ) s_hLib <= 32 )
      {
         s_hLib = NULL;
         return HB_FALSE;
      }
      pAtlAxWinInit      = ( PHB_AX_WININIT ) HB_WINAPI_GETPROCADDRESS( s_hLib, "AtlAxWinInit" );
      s_pAtlAxGetControl = ( PHB_AX_GETCTRL ) HB_WINAPI_GETPROCADDRESS( s_hLib, "AtlAxGetControl" );

      if( pAtlAxWinInit )
         ( *pAtlAxWinInit )();

      hb_vmAtQuit( hb_oleAxExit, NULL );
   }
   return HB_TRUE;
}