Please change it a little bit yet.
>ULONG _hb_gettid( void ) >{ > ULONG tid = 0; > PTIB ptib = NULL; > > printf( "_hb_gettid()\r\n", tid ); fflush(stdout); > if( DosGetInfoBlocks( &ptib, NULL ) == NO_ERROR ) > { > if( ! ptib ) > { printf( "ptib is NULL\r\n" ); fflush(stdout); } > else if( !ptib->tib_ptib2 ) > { printf( "ptib->tib_ptib2 is NULL\r\n" ); fflush(stdout); } > else > tid = ptib->tib_ptib2->tib2_ultid; > } > printf( "TID=%lu\r\n", tid ); fflush(stdout); > return tid; >} >We still do not know where it _exactly_ fails. When we will know >then we will look for workaround. The above test should show if it's >inside _hb_gettid() or in some different related function. Error happen Using -bm flag and hbvmmt ----------------- _hb_gettid() TID=1 _hb_gettid() TID=1 _hb_gettid() TID=1 _hb_gettid() TID=1 _hb_gettid() TID=1 _hb_gettid() TID=1 _hb_gettid() TID=1 _hb_gettid() TID=2 _hb_gettid() TID=2 SYS1808: The process has stopped. The software diagnostic code (exception code) is 0001. ----------------- David Macias _______________________________________________ Harbour mailing list Harbour@harbour-project.org http://lists.harbour-project.org/mailman/listinfo/harbour