diff --git a/harbour/ChangeLog b/harbour/ChangeLog index ba14ed2c95..df8b2a1c9a 100644 --- a/harbour/ChangeLog +++ b/harbour/ChangeLog @@ -8,6 +8,11 @@ 2002-12-01 13:30 UTC+0100 Foo Bar */ +2007-08-24 03:00 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl) + * harbour/source/rtl/gttrm/gttrm.c + * harbour/source/vm/runner.c + * code cleanup + 2007-08-23 18:25 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl) * harbour/source/rtl/gttrm/gttrm.c * enable automatic LF->CR+LF translation on TTY device diff --git a/harbour/source/rtl/gttrm/gttrm.c b/harbour/source/rtl/gttrm/gttrm.c index f4962b9887..79ab3dc06c 100644 --- a/harbour/source/rtl/gttrm/gttrm.c +++ b/harbour/source/rtl/gttrm/gttrm.c @@ -2822,7 +2822,7 @@ static void hb_gt_trm_Init( FHANDLE hFilenoStdin, FHANDLE hFilenoStdout, FHANDLE #endif sigaction( SIGTTOU, &act, 0 ); - tcgetattr( hFilenoStdin, &s_termState.saved_TIO ); + tcgetattr( s_termState.hFilenoStdin, &s_termState.saved_TIO ); memcpy( &s_termState.curr_TIO, &s_termState.saved_TIO, sizeof( struct termios ) ); /* atexit( restore_input_mode ); */ s_termState.curr_TIO.c_lflag &= ~( ECHO | ECHONL | ICANON | ISIG | IEXTEN ); @@ -2832,12 +2832,12 @@ static void hb_gt_trm_Init( FHANDLE hFilenoStdin, FHANDLE hFilenoStdout, FHANDLE s_termState.curr_TIO.c_iflag &= ~( IGNBRK | BRKINT | PARMRK | ISTRIP | INLCR | IGNCR | ICRNL | IXON ); s_termState.curr_TIO.c_oflag &= ~OPOST; /* Enable LF->CR+LF translation */ - s_termState.curr_TIO.c_oflag |= ONLCR | OPOST; + s_termState.curr_TIO.c_oflag = ONLCR | OPOST; memset( s_termState.curr_TIO.c_cc, 0, NCCS ); /* s_termState.curr_TIO.c_cc[ VMIN ] = 0; */ /* s_termState.curr_TIO.c_cc[ VTIME ] = 0; */ - tcsetattr( hFilenoStdin, TCSAFLUSH, &s_termState.curr_TIO ); + tcsetattr( s_termState.hFilenoStdin, TCSAFLUSH, &s_termState.curr_TIO ); act.sa_handler = SIG_DFL; sigaction( SIGTTOU, &old, 0 ); @@ -2864,7 +2864,7 @@ static void hb_gt_trm_Init( FHANDLE hFilenoStdin, FHANDLE hFilenoStdout, FHANDLE s_termState.fUTF8 = hb_trm_isUTF8(); hb_gt_trm_SetKeyTrans( NULL, NULL ); hb_gt_trm_SetDispTrans( NULL, NULL, 0 ); - if( s_termState.fStdoutTTY ) + if( s_termState.fOutTTY ) hb_gt_SemiCold(); } @@ -2880,7 +2880,7 @@ static void hb_gt_trm_Exit( void ) removeAllKeyMap( &s_termState.pKeyTab ); s_termState.Exit(); - if( s_termState.fStdoutTTY && s_termState.iCol > 0 ) + if( s_termState.fOutTTY && s_termState.iCol > 0 ) hb_gt_trm_termOut( ( BYTE * ) "\n\r", 2 ); hb_gt_trm_termFlush(); @@ -2900,7 +2900,8 @@ static void hb_gt_trm_Exit( void ) hb_xfree( s_termState.pOutBuf ); s_termState.iOutBufSize = s_termState.iOutBufIndex = 0; } - s_termState.fStdinTTY = s_termState.fStdoutTTY = s_termState.fStderrTTY = FALSE; + s_termState.fStdinTTY = s_termState.fStdoutTTY = s_termState.fStderrTTY = + s_termState.fOutTTY = FALSE; } static BOOL hb_gt_trm_mouse_IsPresent( void ) diff --git a/harbour/source/vm/runner.c b/harbour/source/vm/runner.c index f58901359a..58ee358059 100644 --- a/harbour/source/vm/runner.c +++ b/harbour/source/vm/runner.c @@ -404,7 +404,6 @@ static PHRB_BODY hb_hrbLoad( char* szHrbBody, ULONG ulBodySize ) hb_errRT_BASE( EG_CORRUPTION, 9998, NULL, "__HRBLOAD", 0 ); return NULL; } - } /* End of PCODE loading, now linking */ @@ -439,7 +438,7 @@ static PHRB_BODY hb_hrbLoad( char* szHrbBody, ULONG ulBodySize ) pSymRead[ ul ].scope.value |= HB_FS_PCODEFUNC; } } - else + else if( ( pSymRead[ ul ].scope.value & HB_FS_DEFERRED ) == 0 ) { char szName[ HB_SYMBOL_NAME_LEN + 1 ];