diff --git a/harbour/ChangeLog b/harbour/ChangeLog index e938814cd7..6278970671 100644 --- a/harbour/ChangeLog +++ b/harbour/ChangeLog @@ -16,6 +16,14 @@ The license applies to all entries newer than 2009-04-28. */ +2011-03-17 09:38 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl) + * harbour/include/hbgtinfo.ch + + added HB_GTI_ONLINE - Is terminal connected? + + * harbour/src/rtl/hbproces.c + ! fixed MS-Windows version of hb_fsProcessRun() to unlock HVM stack + when thread is waiting for child process + 2011-03-17 09:23 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * contrib/hbct/disk.c ! Fixed regression in prev patch. [via Andi] diff --git a/harbour/include/hbgtinfo.ch b/harbour/include/hbgtinfo.ch index ac0075af70..2f5a2a248d 100644 --- a/harbour/include/hbgtinfo.ch +++ b/harbour/include/hbgtinfo.ch @@ -144,6 +144,7 @@ #define HB_GTI_ALTENTER 62 /* Toggles Alt+Enter as full screen switch (supported by: GTWVT) */ #define HB_GTI_ISFULLSCREEN 63 /* Is the GT windows using the full physical display? (supported by: GTWIN, GTWVT) */ +#define HB_GTI_ONLINE 64 /* Is terminal connected? */ /* Font weights */ #define HB_GTI_FONTW_THIN 1 diff --git a/harbour/src/rtl/hbproces.c b/harbour/src/rtl/hbproces.c index 10c5e54d27..106119cde2 100644 --- a/harbour/src/rtl/hbproces.c +++ b/harbour/src/rtl/hbproces.c @@ -1056,6 +1056,8 @@ int hb_fsProcessRun( const char * pszFilename, { HB_FHANDLE hProcess; + hb_vmUnlock(); + iResult = -1; hProcess = hb_fsProcessOpen( pszFilename, phStdin, phStdout, phStderr, fDetach, NULL ); @@ -1199,7 +1201,6 @@ int hb_fsProcessRun( const char * pszFilename, if( prfds == NULL && pwfds == NULL ) break; - hb_vmUnlock(); n = select( fdMax + 1, prfds, pwfds, NULL, NULL ); if( n > 0 ) { @@ -1255,7 +1256,6 @@ int hb_fsProcessRun( const char * pszFilename, nErrBuf += ul; } } - hb_vmLock(); } if( hStdin != FS_ERROR ) @@ -1274,6 +1274,7 @@ int hb_fsProcessRun( const char * pszFilename, HB_SYMBOL_UNUSED( nStdInLen ); #endif + hb_vmLock(); } } #endif