diff --git a/harbour/ChangeLog b/harbour/ChangeLog index 7a45a2761b..db0aef74bd 100644 --- a/harbour/ChangeLog +++ b/harbour/ChangeLog @@ -1,3 +1,7 @@ +2001-10-31 11:48 GMT+3 Alexander Kresin + * source/rdd/dbcmd.c + ! fixed alias name checking in dbUseArea() + 2001-10-30 21:15 GMT -3 Luiz Rafael Culik * bin/bld.bat * Added Required winspool.lib for msvc builds diff --git a/harbour/source/rdd/dbcmd.c b/harbour/source/rdd/dbcmd.c index 4f42eeba0a..caa60cd780 100644 --- a/harbour/source/rdd/dbcmd.c +++ b/harbour/source/rdd/dbcmd.c @@ -1909,10 +1909,16 @@ HB_FUNC( DBUSEAREA ) pFileName = hb_fsFNameSplit( szFileName ); strncpy( szAlias, hb_parc( 4 ), HARBOUR_MAX_RDD_ALIAS_LENGTH ); - uiLen = strlen( szAlias ); - if( uiLen == 0 ) + if( strlen( szAlias ) == 0 ) strncpy( szAlias, pFileName->szName, HARBOUR_MAX_RDD_ALIAS_LENGTH ); - else if( uiLen == 1 ) + uiLen = strlen( szAlias ); + if( szAlias[ 0 ] >= '0' && szAlias[ 0 ] <= '9' ) + { + hb_xfree( pFileName ); + hb_errRT_DBCMD( EG_DUPALIAS, EDBCMD_DUPALIAS, NULL, "DBUSEAREA" ); + return; + } + if( uiLen == 1 ) { /* Alias with a single letter. Only are valid 'L' and > 'M' */ if( toupper( szAlias[ 0 ] ) < 'N' && toupper( szAlias[ 0 ] ) != 'L' )