2012-11-18 02:02 UTC+0100 Viktor Szakats (harbour syenar.net)
* contrib/hbgd/tests/test_out.prg
* contrib/hbmisc/spd.c
* contrib/hbmysql/diff-en.txt
* contrib/hbmysql/diff-es.txt
* contrib/hbmysql/tmysql.prg
* contrib/hbnf/tests/datecnfg.prg
* contrib/xhb/decode.prg
* contrib/xhb/hbcomprs.prg
* contrib/xhb/hbcrypt.c
* contrib/xhb/hblog.prg
* contrib/xhb/hblognet.prg
* extras/gfspell/spellc.c
* src/rdd/usrrdd/rdds/arrayrdd.prg
* src/rdd/wacore.c
* tests/server.prg
* tests/switch.prg
* tests/testrdd2.prg
* website/samples/switch.prg.html
* misc cleanups
This commit is contained in:
@@ -16,6 +16,27 @@
|
||||
The license applies to all entries newer than 2009-04-28.
|
||||
*/
|
||||
|
||||
2012-11-18 02:02 UTC+0100 Viktor Szakats (harbour syenar.net)
|
||||
* contrib/hbgd/tests/test_out.prg
|
||||
* contrib/hbmisc/spd.c
|
||||
* contrib/hbmysql/diff-en.txt
|
||||
* contrib/hbmysql/diff-es.txt
|
||||
* contrib/hbmysql/tmysql.prg
|
||||
* contrib/hbnf/tests/datecnfg.prg
|
||||
* contrib/xhb/decode.prg
|
||||
* contrib/xhb/hbcomprs.prg
|
||||
* contrib/xhb/hbcrypt.c
|
||||
* contrib/xhb/hblog.prg
|
||||
* contrib/xhb/hblognet.prg
|
||||
* extras/gfspell/spellc.c
|
||||
* src/rdd/usrrdd/rdds/arrayrdd.prg
|
||||
* src/rdd/wacore.c
|
||||
* tests/server.prg
|
||||
* tests/switch.prg
|
||||
* tests/testrdd2.prg
|
||||
* website/samples/switch.prg.html
|
||||
* misc cleanups
|
||||
|
||||
2012-11-17 23:11 UTC+0100 Viktor Szakats (harbour syenar.net)
|
||||
* contrib/gtwvg/tests/_wvtcls.prg
|
||||
* contrib/gtwvg/tests/demowvg.prg
|
||||
|
||||
@@ -302,7 +302,7 @@ FUNCTION GetParams( aParams )
|
||||
|
||||
RETURN hHashVars
|
||||
|
||||
// ***********************************************************
|
||||
//
|
||||
// Decoding URL
|
||||
// Can return both a string or a number
|
||||
//
|
||||
|
||||
@@ -146,47 +146,47 @@ static HB_UINT SCItm( char * cBuffer, HB_UINT ulMaxBuf, char * cParFrm, int iCOu
|
||||
return s;
|
||||
}
|
||||
|
||||
/*******************************************************************************
|
||||
* ANSI C sprintf() for ANSI SQL with DATE, DATETIME, LOGICAL, NIL, NUMERIC
|
||||
* ------------------------------------------------------------------------
|
||||
* cRes := Sql_sprintf( cFrm, ... )
|
||||
*
|
||||
* Full compatible ANSI C99 formats with C,S converters wchar_t (UNICODE)
|
||||
* Integer & Floating point converters with Width and Precision for NUMERIC & STRING
|
||||
* a,A converters Hexadecimal floating point format. Thanks Rafa.
|
||||
* ? Sql_sprintf( "Phi = %A", (1 + 5**0.5) / 2 ) // Phi = 0X1,9E3779B97F4A8P+0
|
||||
* %m$,*m$ Index & Indirect arguments C99. Thanks Viktor.
|
||||
* ? Sql_sprintf( "Phi = %2$0*3$.*1$f", 4, (1 + 5**0.5) / 2, 7 ) // Phi = 01.6180
|
||||
*
|
||||
* s converter for format Harbour data types.
|
||||
* NUMERIC with FIXED DECIMALS = n | n.d STRING = String's ANSI\C
|
||||
* DATE = HB_SET_DATEFORMAT DATETIME = HB_SET_DATEFORMAT hh:mm:ss
|
||||
* New Internal Modifier {}. Thanks Mindaugas.
|
||||
* Date and Time Format separate by first space {DD/MM/YYYY hh:mm:ss.fff pp}
|
||||
* {DD/MM/YYYY} = Only Date | { hh:mm:ss.fff pp} = Only Time
|
||||
* ? Sql_sprintf( "%s", Date() ) // 16/06/08
|
||||
* ? Sql_sprintf( "%s", HB_DateTime() ) // 16/06/08 04:11:21.531
|
||||
* ? Sql_sprintf( "%{YYYYMMDD}s", HB_DateTime() ) // 20080616
|
||||
* ? Sql_sprintf( "%{ hh:mm pp}s", HB_DateTime() ) // 04:11 AM
|
||||
* LOGICAL = TRUE | FALSE %d converter for LOGICAL = 1 | 0
|
||||
* Accepts Internal Modifier TRUE and FALSE Format separate by first comma
|
||||
* {T .T.,F .F.} = TRUE & FALSE | {ON} = Only TRUE | {,OFF} = Only FALSE
|
||||
* ? Sql_sprintf( "%{VERDADERO,FALSO}s", .F. ) // FALSO
|
||||
* ? Sql_sprintf( "%{ONLY IF TRUE}s", .T. ) // ONLY IF TRUE
|
||||
*
|
||||
* New t,T converter for format ANSI SQL types.
|
||||
* NUMERIC with FIXED DECIMALS = n | n.d STRING = 'String''s ANSI\\SQL'
|
||||
* Print DEFAULT if 0 length STRING for T converter
|
||||
* DATE = 'YYYY-MM-DD' DATETIME = 'YYYY-MM-DD HH:MM:SS'
|
||||
* Accepts Internal Modifier like s converter {DD/MM/YYYY hh:mm:ss.fff pp}
|
||||
* Print DEFAULT if the DATE, DATETIME is EMPTY for T converter or print
|
||||
* DK_EMPTYDATE, DK_EMPTYDATETIME for t converter
|
||||
* LOGICAL = TRUE | FALSE Accepts Internal Modifier like s {ON,OFF}
|
||||
*
|
||||
* Print DEFAULT if the parameter is NIL for T converter.
|
||||
* Print NULL if the parameter is HB_IT_NULL or NIL for the rest of converters.
|
||||
* Processing %% and n converter Position.
|
||||
*******************************************************************************/
|
||||
/**
|
||||
* ANSI C sprintf() for ANSI SQL with DATE, DATETIME, LOGICAL, NIL, NUMERIC
|
||||
* ------------------------------------------------------------------------
|
||||
* cRes := Sql_sprintf( cFrm, ... )
|
||||
*
|
||||
* Full compatible ANSI C99 formats with C,S converters wchar_t (UNICODE)
|
||||
* Integer & Floating point converters with Width and Precision for NUMERIC & STRING
|
||||
* a,A converters Hexadecimal floating point format. Thanks Rafa.
|
||||
* ? Sql_sprintf( "Phi = %A", (1 + 5**0.5) / 2 ) // Phi = 0X1,9E3779B97F4A8P+0
|
||||
* %m$,*m$ Index & Indirect arguments C99. Thanks Viktor.
|
||||
* ? Sql_sprintf( "Phi = %2$0*3$.*1$f", 4, (1 + 5**0.5) / 2, 7 ) // Phi = 01.6180
|
||||
*
|
||||
* s converter for format Harbour data types.
|
||||
* NUMERIC with FIXED DECIMALS = n | n.d STRING = String's ANSI\C
|
||||
* DATE = HB_SET_DATEFORMAT DATETIME = HB_SET_DATEFORMAT hh:mm:ss
|
||||
* New Internal Modifier {}. Thanks Mindaugas.
|
||||
* Date and Time Format separate by first space {DD/MM/YYYY hh:mm:ss.fff pp}
|
||||
* {DD/MM/YYYY} = Only Date | { hh:mm:ss.fff pp} = Only Time
|
||||
* ? Sql_sprintf( "%s", Date() ) // 16/06/08
|
||||
* ? Sql_sprintf( "%s", HB_DateTime() ) // 16/06/08 04:11:21.531
|
||||
* ? Sql_sprintf( "%{YYYYMMDD}s", HB_DateTime() ) // 20080616
|
||||
* ? Sql_sprintf( "%{ hh:mm pp}s", HB_DateTime() ) // 04:11 AM
|
||||
* LOGICAL = TRUE | FALSE %d converter for LOGICAL = 1 | 0
|
||||
* Accepts Internal Modifier TRUE and FALSE Format separate by first comma
|
||||
* {T .T.,F .F.} = TRUE & FALSE | {ON} = Only TRUE | {,OFF} = Only FALSE
|
||||
* ? Sql_sprintf( "%{VERDADERO,FALSO}s", .F. ) // FALSO
|
||||
* ? Sql_sprintf( "%{ONLY IF TRUE}s", .T. ) // ONLY IF TRUE
|
||||
*
|
||||
* New t,T converter for format ANSI SQL types.
|
||||
* NUMERIC with FIXED DECIMALS = n | n.d STRING = 'String''s ANSI\\SQL'
|
||||
* Print DEFAULT if 0 length STRING for T converter
|
||||
* DATE = 'YYYY-MM-DD' DATETIME = 'YYYY-MM-DD HH:MM:SS'
|
||||
* Accepts Internal Modifier like s converter {DD/MM/YYYY hh:mm:ss.fff pp}
|
||||
* Print DEFAULT if the DATE, DATETIME is EMPTY for T converter or print
|
||||
* DK_EMPTYDATE, DK_EMPTYDATETIME for t converter
|
||||
* LOGICAL = TRUE | FALSE Accepts Internal Modifier like s {ON,OFF}
|
||||
*
|
||||
* Print DEFAULT if the parameter is NIL for T converter.
|
||||
* Print NULL if the parameter is HB_IT_NULL or NIL for the rest of converters.
|
||||
* Processing %% and n converter Position.
|
||||
*/
|
||||
|
||||
#define DK_INCRES 1024
|
||||
#define DK_INCBUF 512
|
||||
@@ -259,20 +259,18 @@ HB_FUNC( SQL_SPRINTF )
|
||||
{
|
||||
if( IsIndP )
|
||||
{
|
||||
f = 3; iErrorPar = 1;
|
||||
f = 3;
|
||||
iErrorPar = 1;
|
||||
}
|
||||
else
|
||||
{
|
||||
IsIndP = 1;
|
||||
}
|
||||
}
|
||||
else if( ! IsIndW )
|
||||
{
|
||||
IsIndW = 1;
|
||||
}
|
||||
else
|
||||
{
|
||||
f = 3; iErrorPar = 1;
|
||||
f = 3;
|
||||
iErrorPar = 1;
|
||||
}
|
||||
}
|
||||
else if( f && *c == '$' )
|
||||
@@ -285,55 +283,60 @@ HB_FUNC( SQL_SPRINTF )
|
||||
else if( ulWidth && IsIndW && ! iIndWidth )
|
||||
{
|
||||
iIndWidth = ulWidth;
|
||||
ulWidth = 0; iCOut = '*';
|
||||
ulWidth = 0;
|
||||
iCOut = '*';
|
||||
}
|
||||
else if( ulWidth && ! arg )
|
||||
{
|
||||
arg = ulWidth;
|
||||
ulWidth = 0; iCOut = '%';
|
||||
ulWidth = 0;
|
||||
iCOut = '%';
|
||||
}
|
||||
else
|
||||
{
|
||||
f = 3; iErrorPar = 1;
|
||||
f = 3;
|
||||
iErrorPar = 1;
|
||||
}
|
||||
while( i && cParFrm[ --i ] != iCOut )
|
||||
{
|
||||
}
|
||||
;
|
||||
++i; iCOut = 0;
|
||||
++i;
|
||||
iCOut = 0;
|
||||
}
|
||||
else if( f && *c == '{' )
|
||||
{
|
||||
if( s )
|
||||
{
|
||||
f = 3; iErrorPar = 1;
|
||||
f = 3;
|
||||
iErrorPar = 1;
|
||||
}
|
||||
else /* Remove Internal Modifier */
|
||||
{
|
||||
if( cIntMod == NULL )
|
||||
{
|
||||
cIntMod = ( char * ) hb_xgrab( ulItmFrm + sizeof( char ) );
|
||||
}
|
||||
|
||||
while( *c++ && *c != '}' )
|
||||
cIntMod[ s++ ] = *c;
|
||||
--i; cIntMod[ s ] = '\0';
|
||||
--i;
|
||||
cIntMod[ s ] = '\0';
|
||||
if( *( c - 1 ) == '\0' )
|
||||
{
|
||||
f = 3; iErrorPar = 1;
|
||||
f = 3;
|
||||
iErrorPar = 1;
|
||||
}
|
||||
}
|
||||
}
|
||||
else if( f && strchr( s_szToken, *c ) )
|
||||
{
|
||||
f = 3; iCOut = *c;
|
||||
f = 3;
|
||||
iCOut = *c;
|
||||
}
|
||||
else if( *c == '%' )
|
||||
{
|
||||
f = 1;
|
||||
}
|
||||
c++;
|
||||
}
|
||||
while( f < 3 && *c ); cParFrm[ f = i ] = '\0';
|
||||
while( f < 3 && *c );
|
||||
cParFrm[ f = i ] = '\0';
|
||||
if( iErrorPar )
|
||||
break;
|
||||
|
||||
@@ -341,11 +344,13 @@ HB_FUNC( SQL_SPRINTF )
|
||||
{
|
||||
if( cParFrm[ f - 2 ] == '%' )
|
||||
{
|
||||
IsType = ( iCOut == 'T' ? 2 : 1 ); iCOut = cParFrm[ f - 1 ] = 's';
|
||||
IsType = ( iCOut == 'T' ? 2 : 1 );
|
||||
iCOut = cParFrm[ f - 1 ] = 's';
|
||||
}
|
||||
else
|
||||
{
|
||||
iErrorPar = 1; break;
|
||||
iErrorPar = 1;
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -355,17 +360,14 @@ HB_FUNC( SQL_SPRINTF )
|
||||
if( pItmPar )
|
||||
{
|
||||
if( ( iIndWidth = hb_itemGetNI( pItmPar ) ) < 0 )
|
||||
{
|
||||
ulWidth = -iIndWidth;
|
||||
}
|
||||
else
|
||||
{
|
||||
ulWidth = iIndWidth;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
iErrorPar = 1; break;
|
||||
iErrorPar = 1;
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -378,7 +380,8 @@ HB_FUNC( SQL_SPRINTF )
|
||||
}
|
||||
else
|
||||
{
|
||||
iErrorPar = 1; break;
|
||||
iErrorPar = 1;
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -388,13 +391,15 @@ HB_FUNC( SQL_SPRINTF )
|
||||
{
|
||||
cParFrm[ i++ ] = *c;
|
||||
}
|
||||
while( *c++ ); i--;
|
||||
while( *c++ );
|
||||
i--;
|
||||
} /* i == strlen(cParFrm) */
|
||||
|
||||
pItmPar = hb_param( ( arg ? arg + 1 : p++ + 2 ), HB_IT_ANY ); /* Get Par Item */
|
||||
if( ! pItmPar )
|
||||
{
|
||||
iErrorPar = 1; break;
|
||||
iErrorPar = 1;
|
||||
break;
|
||||
}
|
||||
|
||||
if( ! iCOut || iCOut == 'n' ) /* Par Text Out */
|
||||
@@ -424,7 +429,8 @@ HB_FUNC( SQL_SPRINTF )
|
||||
}
|
||||
else
|
||||
{
|
||||
iErrorPar = 1; break;
|
||||
iErrorPar = 1;
|
||||
break;
|
||||
}
|
||||
}
|
||||
if( ( f = i + sizeof( char ) ) > ulMaxBuf )
|
||||
@@ -432,8 +438,8 @@ HB_FUNC( SQL_SPRINTF )
|
||||
ulMaxBuf += f + DK_INCBUF;
|
||||
cBuffer = ( char * ) hb_xrealloc( cBuffer, ulMaxBuf );
|
||||
}
|
||||
hb_strncpy( cBuffer, cParFrm, i ); s = i;
|
||||
|
||||
hb_strncpy( cBuffer, cParFrm, i );
|
||||
s = i;
|
||||
}
|
||||
else /* Par Item sprintf() Out */
|
||||
{
|
||||
@@ -444,11 +450,11 @@ HB_FUNC( SQL_SPRINTF )
|
||||
if( HB_IS_NIL( pItmPar ) )
|
||||
{
|
||||
# endif
|
||||
ulWidth = f; IsIndW = IsIndP = 0;
|
||||
ulWidth = f;
|
||||
IsIndW = IsIndP = 0;
|
||||
while( cParFrm[ --f ] != '%' )
|
||||
{
|
||||
}
|
||||
;
|
||||
iCOut = cParFrm[ f + 1 ] = 's'; /* Change format with %s */
|
||||
memcpy( cParFrm + f + 2, cParFrm + ulWidth, i - ulWidth + 1 );
|
||||
i -= ulWidth - f - 2; /* i == strlen(cParFrm) */
|
||||
@@ -476,7 +482,8 @@ HB_FUNC( SQL_SPRINTF )
|
||||
{
|
||||
if( IsType )
|
||||
{
|
||||
hb_itemCopy( pItmCpy = hb_itemNew( NULL ), pItmPar ); pItmPar = pItmCpy;
|
||||
hb_itemCopy( pItmCpy = hb_itemNew( NULL ), pItmPar );
|
||||
pItmPar = pItmCpy;
|
||||
if( IsType == 2 && hb_itemGetCLen( pItmPar ) == 0 ) /* 0 length string print DEFAULT for T converter */
|
||||
hb_itemPutCL( pItmPar, "DEFAULT", 7 );
|
||||
else
|
||||
@@ -504,7 +511,6 @@ HB_FUNC( SQL_SPRINTF )
|
||||
for( f = 0; cIntMod[ f ] && cIntMod[ f ] != ' '; f++ )
|
||||
{
|
||||
}
|
||||
;
|
||||
if( f != s )
|
||||
cIntMod[ f++ ] = '\0'; /* Date & Time */
|
||||
}
|
||||
@@ -521,13 +527,9 @@ HB_FUNC( SQL_SPRINTF )
|
||||
if( s )
|
||||
{
|
||||
if( ! cIntMod[ 0 ] )
|
||||
{
|
||||
memcpy( cDTFrm, cDTFrm + 1, 26 ); /* LTrim 1 space if only Time */
|
||||
}
|
||||
memcpy( cDTFrm, cDTFrm + 1, 26 ); /* LTrim 1 space if only Time */
|
||||
else if( cDTFrm[ s ] == ' ' )
|
||||
{
|
||||
cDTFrm[ s ] = '\0'; /* RTrim 1 space if only Date */
|
||||
}
|
||||
cDTFrm[ s ] = '\0'; /* RTrim 1 space if only Date */
|
||||
}
|
||||
}
|
||||
else
|
||||
@@ -565,13 +567,13 @@ HB_FUNC( SQL_SPRINTF )
|
||||
for( f = 0; cIntMod[ f ] && cIntMod[ f ] != ','; f++ )
|
||||
{
|
||||
}
|
||||
;
|
||||
if( f != s )
|
||||
cIntMod[ f++ ] = '\0'; /* TRUE & FALSE */
|
||||
}
|
||||
if( iCOut == 's' )
|
||||
{
|
||||
hb_itemCopy( pItmCpy = hb_itemNew( NULL ), pItmPar ); pItmPar = pItmCpy;
|
||||
hb_itemCopy( pItmCpy = hb_itemNew( NULL ), pItmPar );
|
||||
pItmPar = pItmCpy;
|
||||
hb_itemPutC( pItmPar,
|
||||
( hb_itemGetL( pItmPar ) ? ( s ? cIntMod : "TRUE" ) : ( s ? cIntMod
|
||||
+ f :
|
||||
@@ -594,7 +596,7 @@ HB_FUNC( SQL_SPRINTF )
|
||||
}
|
||||
else if( iCOut == 's' )
|
||||
{
|
||||
char * cStr = hb_itemStr( pItmPar, NULL, NULL );
|
||||
char * cStr = hb_itemStr( pItmPar, NULL, NULL );
|
||||
const char * cTrimStr;
|
||||
|
||||
if( cStr )
|
||||
@@ -611,11 +613,13 @@ HB_FUNC( SQL_SPRINTF )
|
||||
hb_itemPutCL( pItmCpy, cTrimStr, f );
|
||||
s = SCItm( cBuffer, ulMaxBuf, cParFrm, iCOut, IsIndW, iIndWidth, IsIndP, iIndPrec,
|
||||
pItmCpy );
|
||||
hb_itemRelease( pItmCpy ); hb_xfree( cStr );
|
||||
hb_itemRelease( pItmCpy );
|
||||
hb_xfree( cStr );
|
||||
}
|
||||
else
|
||||
{
|
||||
iErrorPar = p + 2; break;
|
||||
iErrorPar = p + 2;
|
||||
break;
|
||||
}
|
||||
|
||||
}
|
||||
@@ -632,7 +636,8 @@ HB_FUNC( SQL_SPRINTF )
|
||||
}
|
||||
else
|
||||
{
|
||||
iErrorPar = p + 2; break;
|
||||
iErrorPar = p + 2;
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -642,7 +647,8 @@ HB_FUNC( SQL_SPRINTF )
|
||||
cRes = ( char * ) hb_xrealloc( cRes, ulMaxRes );
|
||||
}
|
||||
|
||||
hb_strncpy( cRes + ulResPos, cBuffer, s ); ulResPos += s;
|
||||
hb_strncpy( cRes + ulResPos, cBuffer, s );
|
||||
ulResPos += s;
|
||||
|
||||
if( ( ulParPos = ( HB_UINT ) ( c - cItmFrm ) ) >= ulItmFrm )
|
||||
break; /* No more Par Format */
|
||||
|
||||
@@ -6,10 +6,10 @@
|
||||
February 2004
|
||||
I.Q. David Arturo Macias Corona
|
||||
|
||||
Modifications to programs of harbour\contrib\hbmysql
|
||||
Modifications
|
||||
|
||||
|
||||
TMySql.prg Program *****************************************
|
||||
tmysql.prg Program *****************************************
|
||||
|
||||
Class TMySQLRow ---------------------------------------------
|
||||
- DATA new TMySQLRow:aOriValue
|
||||
@@ -240,7 +240,7 @@ Class TMySQLTable -------------------------------------------
|
||||
corresponding to field name
|
||||
|
||||
|
||||
Program TSqlBrw.prg ************************************
|
||||
Program tsqlbrw.prg ************************************
|
||||
|
||||
- Skipper()
|
||||
Modification of movement control in order to apply new definitions of
|
||||
|
||||
@@ -6,10 +6,10 @@
|
||||
Febrero 2004
|
||||
I.Q. David Arturo Macias Corona
|
||||
|
||||
Modificaciones a los programas de harbour\contrib\hbmysql
|
||||
Modificaciones
|
||||
|
||||
|
||||
Programa TMySql.prg *****************************************
|
||||
Programa tmysql.prg *****************************************
|
||||
|
||||
Clase TMySQLRow ---------------------------------------------
|
||||
- DATA nueva TMySQLRow:aOriValue
|
||||
@@ -243,7 +243,7 @@ Clase TMySQLTable -------------------------------------------
|
||||
correspondiente al nombre del campo
|
||||
|
||||
|
||||
Programa TSqlBrw.prg ************************************
|
||||
Programa tsqlbrw.prg ************************************
|
||||
|
||||
- Skipper()
|
||||
Modificacion del control de movimiento para aplicar las nuevas definiciones para
|
||||
|
||||
@@ -1352,15 +1352,15 @@ METHOD sql_version() CLASS TMySQLServer
|
||||
// RETURN .F.
|
||||
|
||||
|
||||
// ****************alterado
|
||||
// === alterado ===
|
||||
METHOD SelectDB( cDBName ) CLASS TMySQLServer
|
||||
|
||||
::lError := .F.
|
||||
|
||||
IF mysql_select_db( ::nSocket, cDBName ) != 0 /* tabela nao existe */
|
||||
IF mysql_select_db( ::nSocket, cDBName ) != 0 /* table doesn't exist */
|
||||
::cDBName := ""
|
||||
::lError := .T.
|
||||
ELSE /* tabela existe */
|
||||
ELSE /* table exists */
|
||||
::cDBName := cDBName
|
||||
::lError := .F.
|
||||
RETURN .T.
|
||||
|
||||
@@ -2,7 +2,6 @@
|
||||
* $Id$
|
||||
*/
|
||||
|
||||
// *******************************************************************
|
||||
//
|
||||
// NOTES: 1) The date functions are 'international'; i.e., the
|
||||
// system date format is maintained, although ANSI is
|
||||
@@ -44,7 +43,6 @@
|
||||
//
|
||||
// See function: ft_DateCnfg()
|
||||
//
|
||||
// *******************************************************************
|
||||
|
||||
#require "hbnf"
|
||||
|
||||
|
||||
@@ -51,14 +51,14 @@
|
||||
*
|
||||
*/
|
||||
|
||||
/******************
|
||||
* Function .......: hb_Decode( <var>, [ <case1,ret1 [,...,caseN,retN] ] [, <def> ]> ) ---> <xRet>
|
||||
* Author .........: Francesco Saverio Giudice
|
||||
* Date of creation: 25/01/1991
|
||||
* Last revision ..: 24/01/2006 1.13 - rewritten for xHarbour and renamed in hb_Decode()
|
||||
*
|
||||
* Decode a value from a list.
|
||||
*******************/
|
||||
/**
|
||||
* Function .......: hb_Decode( <var>, [ <case1,ret1 [,...,caseN,retN] ] [, <def> ]> ) ---> <xRet>
|
||||
* Author .........: Francesco Saverio Giudice
|
||||
* Date of creation: 1991/01/25
|
||||
* Last revision ..: 2006/01/24 1.13 - rewritten for xHarbour and renamed in hb_Decode()
|
||||
*
|
||||
* Decode a value from a list.
|
||||
*/
|
||||
|
||||
FUNCTION hb_Decode( ... )
|
||||
|
||||
|
||||
@@ -56,12 +56,12 @@
|
||||
|
||||
THREAD STATIC t_nLastError := HB_ZLIB_RES_OK
|
||||
|
||||
/****** COMPRESSOR WRAPPER *****
|
||||
* hb_Compress( cSource [,nSourceLen ] ) --> cDest
|
||||
* hb_Compress( nComprFactor, cSource [,nSourceLen ] ) --> cDest
|
||||
* hb_Compress( cSource, nSourceLen, @cDest, @nDestLen ) --> nError
|
||||
* hb_Compress( nComprFactor, cSource, nSourceLen, @cDest, @nDestLen ) --> nError
|
||||
*/
|
||||
/****** COMPRESSOR WRAPPER
|
||||
* hb_Compress( cSource [,nSourceLen ] ) --> cDest
|
||||
* hb_Compress( nComprFactor, cSource [,nSourceLen ] ) --> cDest
|
||||
* hb_Compress( cSource, nSourceLen, @cDest, @nDestLen ) --> nError
|
||||
* hb_Compress( nComprFactor, cSource, nSourceLen, @cDest, @nDestLen ) --> nError
|
||||
*/
|
||||
FUNCTION hb_Compress( xPar1, xPar2, xPar3, xPar4, xPar5 )
|
||||
|
||||
LOCAL nComprFactor
|
||||
@@ -123,10 +123,10 @@ FUNCTION hb_Compress( xPar1, xPar2, xPar3, xPar4, xPar5 )
|
||||
|
||||
RETURN hb_ZCompress( cSource, nDestLen, @t_nLastError, nComprFactor )
|
||||
|
||||
/****** DECOMPRESSOR WRAPPER *****
|
||||
* hb_Uncompress( nDestLen, cSource [, nSourceLen ] ) --> cDest
|
||||
* hb_Uncompress( nDestLen, cSource, nSourceLen, @cDest ) --> nError
|
||||
*/
|
||||
/****** DECOMPRESSOR WRAPPER
|
||||
* hb_Uncompress( nDestLen, cSource [, nSourceLen ] ) --> cDest
|
||||
* hb_Uncompress( nDestLen, cSource, nSourceLen, @cDest ) --> nError
|
||||
*/
|
||||
FUNCTION hb_Uncompress( nDestLen, cSource, nSourceLen, /* @ */ cDest )
|
||||
|
||||
LOCAL oError
|
||||
@@ -157,21 +157,21 @@ FUNCTION hb_Uncompress( nDestLen, cSource, nSourceLen, /* @ */ cDest )
|
||||
|
||||
RETURN hb_ZUncompress( cSource, nDestLen, @t_nLastError )
|
||||
|
||||
/*********************************
|
||||
* hb_CompressError() --> nError
|
||||
*/
|
||||
/**
|
||||
* hb_CompressError() --> nError
|
||||
*/
|
||||
FUNCTION hb_CompressError()
|
||||
RETURN t_nLastError
|
||||
|
||||
/*********************************
|
||||
* hb_CompressErrorDesc( nErrorCode ) --> cDesc
|
||||
*/
|
||||
/**
|
||||
* hb_CompressErrorDesc( nErrorCode ) --> cDesc
|
||||
*/
|
||||
FUNCTION hb_CompressErrorDesc( nError )
|
||||
RETURN hb_ZError( nError )
|
||||
|
||||
/*******************************
|
||||
* hb_CompressBufLen( nSrcLen ) --> nDestLen
|
||||
*/
|
||||
/**
|
||||
* hb_CompressBufLen( nSrcLen ) --> nDestLen
|
||||
*/
|
||||
FUNCTION hb_CompressBufLen( nSrcLen )
|
||||
|
||||
LOCAL nRet
|
||||
|
||||
@@ -51,7 +51,7 @@
|
||||
*
|
||||
*/
|
||||
|
||||
/***************************************************************
|
||||
/*****
|
||||
* NXS aglorithm is FREE SOFTWARE. It can be reused for any
|
||||
* purpose, provided that this copyright notice is still present
|
||||
* in the software.
|
||||
@@ -60,7 +60,7 @@
|
||||
* fit any particular need.
|
||||
*
|
||||
* NXS author is Giancarlo Niccolai <giancarlo@niccolai.ws>
|
||||
**************************************************************/
|
||||
*/
|
||||
|
||||
|
||||
#include "hbapi.h"
|
||||
@@ -387,9 +387,9 @@ void nxs_make_scramble( HB_ISIZ * scramble, const unsigned char * key, HB_SIZE k
|
||||
* END OF NXS
|
||||
*/
|
||||
|
||||
/***********************************
|
||||
* XHarbour implementation
|
||||
************************************/
|
||||
/*****
|
||||
* xHarbour implementation
|
||||
*/
|
||||
|
||||
/*****
|
||||
* Encrypt a text using a key
|
||||
|
||||
@@ -54,9 +54,9 @@
|
||||
#include "fileio.ch"
|
||||
|
||||
|
||||
/*************************************************************
|
||||
* Static standard logger access
|
||||
*/
|
||||
/*****
|
||||
* Static standard logger access
|
||||
*/
|
||||
|
||||
#define HB_THREAD_SUPPORT
|
||||
|
||||
@@ -209,9 +209,9 @@ FUNCTION hb_LogDateStamp()
|
||||
|
||||
RETURN Str( Year( dToday ), 4 ) + "-" + PadL( Month( dToday ), 2, "0" ) + "-" + PadL( Day( dToday ), 2, "0" )
|
||||
|
||||
/**********************************************
|
||||
* Logger class
|
||||
***********************************************/
|
||||
/*****
|
||||
* Logger class
|
||||
*/
|
||||
|
||||
CREATE CLASS HB_Logger
|
||||
|
||||
@@ -233,11 +233,11 @@ CREATE CLASS HB_Logger
|
||||
ENDCLASS
|
||||
|
||||
/**
|
||||
* Builds a new logger object.
|
||||
* Call with ::New( ch1, ch2... chN ) where ch are the channels
|
||||
* where to log.
|
||||
* Channels can be called at a second time.
|
||||
*/
|
||||
* Builds a new logger object.
|
||||
* Call with ::New( ch1, ch2... chN ) where ch are the channels
|
||||
* where to log.
|
||||
* Channels can be called at a second time.
|
||||
*/
|
||||
|
||||
METHOD New() CLASS HB_Logger
|
||||
|
||||
@@ -250,8 +250,8 @@ METHOD New() CLASS HB_Logger
|
||||
RETURN Self
|
||||
|
||||
/**
|
||||
* Open all the channels calling their ::Open() method
|
||||
*/
|
||||
* Open all the channels calling their ::Open() method
|
||||
*/
|
||||
|
||||
METHOD PROCEDURE Open() CLASS HB_Logger
|
||||
|
||||
@@ -268,8 +268,8 @@ METHOD PROCEDURE Open() CLASS HB_Logger
|
||||
RETURN
|
||||
|
||||
/**
|
||||
* Close all the channels calling their ::Close() method
|
||||
*/
|
||||
* Close all the channels calling their ::Close() method
|
||||
*/
|
||||
|
||||
METHOD PROCEDURE close() CLASS HB_Logger
|
||||
|
||||
@@ -286,8 +286,8 @@ METHOD PROCEDURE close() CLASS HB_Logger
|
||||
RETURN
|
||||
|
||||
/**
|
||||
* Send a log message to all the channels
|
||||
*/
|
||||
* Send a log message to all the channels
|
||||
*/
|
||||
|
||||
METHOD PROCEDURE Log( cMessage, nPriority ) CLASS HB_Logger
|
||||
|
||||
@@ -305,9 +305,9 @@ METHOD PROCEDURE Log( cMessage, nPriority ) CLASS HB_Logger
|
||||
|
||||
RETURN
|
||||
|
||||
/**********************************************
|
||||
* Logger Channel class (mostly VIRTUAL)
|
||||
***********************************************/
|
||||
/*****
|
||||
* Logger Channel class (mostly VIRTUAL)
|
||||
*/
|
||||
|
||||
CREATE CLASS HB_LogChannel
|
||||
|
||||
@@ -332,9 +332,9 @@ CREATE CLASS HB_LogChannel
|
||||
ENDCLASS
|
||||
|
||||
/**
|
||||
* Creates a new channel. nLeven can be nil ( and will log all ),
|
||||
* cName is the "program name" and must be given
|
||||
*/
|
||||
* Creates a new channel. nLeven can be nil ( and will log all ),
|
||||
* cName is the "program name" and must be given
|
||||
*/
|
||||
|
||||
METHOD New( nLevel ) CLASS HB_LogChannel
|
||||
|
||||
@@ -348,9 +348,9 @@ METHOD New( nLevel ) CLASS HB_LogChannel
|
||||
RETURN Self
|
||||
|
||||
/**
|
||||
* Log the message: it send a request to the subclass "send" method
|
||||
* if the log level is higher or equal than the channel setting
|
||||
*/
|
||||
* Log the message: it send a request to the subclass "send" method
|
||||
* if the log level is higher or equal than the channel setting
|
||||
*/
|
||||
|
||||
METHOD PROCEDURE Log( nStyle, cMessage, cName, nPriority ) CLASS HB_LogChannel
|
||||
|
||||
@@ -361,10 +361,10 @@ METHOD PROCEDURE Log( nStyle, cMessage, cName, nPriority ) CLASS HB_LogChannel
|
||||
RETURN
|
||||
|
||||
/**
|
||||
* This is an utility functions for subclasses, used to
|
||||
* have a standard formatting for the message. Subclasses
|
||||
* may or may not call it.
|
||||
*/
|
||||
* This is an utility functions for subclasses, used to
|
||||
* have a standard formatting for the message. Subclasses
|
||||
* may or may not call it.
|
||||
*/
|
||||
|
||||
METHOD Format( nStyle, cMessage, cName, nPriority ) CLASS HB_LogChannel
|
||||
|
||||
@@ -416,9 +416,9 @@ METHOD Format( nStyle, cMessage, cName, nPriority ) CLASS HB_LogChannel
|
||||
|
||||
RETURN cPrefix + cMessage
|
||||
|
||||
/**********************************************
|
||||
* Console channel
|
||||
***********************************************/
|
||||
/*****
|
||||
* Console channel
|
||||
*/
|
||||
|
||||
CREATE CLASS HB_LogConsole FROM HB_LogChannel
|
||||
|
||||
@@ -488,9 +488,9 @@ METHOD PROCEDURE Out( ... ) CLASS HB_LogConsole
|
||||
|
||||
RETURN
|
||||
|
||||
/**********************************************
|
||||
* Console channel - to file
|
||||
***********************************************/
|
||||
/*****
|
||||
* Console channel - to file
|
||||
*/
|
||||
|
||||
CREATE CLASS HB_LogFile FROM HB_LogChannel
|
||||
|
||||
@@ -596,9 +596,9 @@ METHOD Send( nStyle, cMessage, cProgName, nPriority ) CLASS HB_LogFile
|
||||
RETURN FError() == 0
|
||||
|
||||
|
||||
/**********************************************
|
||||
* Console channel - to dbf
|
||||
***********************************************/
|
||||
/*****
|
||||
* Console channel - to dbf
|
||||
*/
|
||||
|
||||
CREATE CLASS HB_LogDbf FROM HB_LogChannel
|
||||
|
||||
@@ -725,10 +725,10 @@ METHOD Send( nStyle, cMessage, cProgName, nPriority ) CLASS HB_LogDbf
|
||||
RETURN .T.
|
||||
|
||||
|
||||
/**********************************************
|
||||
* Syslog channel - a wrapper for the low level
|
||||
* C interface to syslog/ event log system
|
||||
***********************************************/
|
||||
/*****
|
||||
* Syslog channel - a wrapper for the low level
|
||||
* C interface to syslog/ event log system
|
||||
*/
|
||||
|
||||
CREATE CLASS HB_LogSysLog FROM HB_LogChannel
|
||||
|
||||
@@ -784,9 +784,9 @@ METHOD Send( nType, cMessage, cName, nPriority ) CLASS HB_LogSysLog
|
||||
RETURN hb_SysLogMessage( ::Format( HB_LOG_ST_LEVEL, cMessage, cName, nPriority ), nPriority, ::nId )
|
||||
|
||||
|
||||
/**********************************************
|
||||
* Debug channel
|
||||
***********************************************/
|
||||
/*****
|
||||
* Debug channel
|
||||
*/
|
||||
|
||||
CREATE CLASS HB_LogDebug FROM HB_LogChannel
|
||||
|
||||
|
||||
@@ -110,8 +110,8 @@ METHOD New( nLevel, cHelo, cServer, cSendTo, cSubject, cFrom ) CLASS HB_LogEmail
|
||||
RETURN SELF
|
||||
|
||||
/**
|
||||
* Inet init must be called here
|
||||
*/
|
||||
* Inet init must be called here
|
||||
*/
|
||||
|
||||
METHOD Open( cName ) CLASS HB_LogEmail
|
||||
|
||||
@@ -121,8 +121,8 @@ METHOD Open( cName ) CLASS HB_LogEmail
|
||||
RETURN .T.
|
||||
|
||||
/**
|
||||
* InetCleanup to be called here
|
||||
*/
|
||||
* InetCleanup to be called here
|
||||
*/
|
||||
|
||||
METHOD Close( cName ) CLASS HB_LogEmail
|
||||
|
||||
@@ -133,8 +133,8 @@ METHOD Close( cName ) CLASS HB_LogEmail
|
||||
|
||||
|
||||
/**
|
||||
* Sends the real message in e-mail
|
||||
*/
|
||||
* Sends the real message in e-mail
|
||||
*/
|
||||
|
||||
METHOD Send( nStyle, cMessage, cName, nPriority ) CLASS HB_LogEmail
|
||||
|
||||
@@ -180,8 +180,8 @@ METHOD Send( nStyle, cMessage, cName, nPriority ) CLASS HB_LogEmail
|
||||
RETURN ::GetOk( skCon ) // if quit fails, the mail does not go!
|
||||
|
||||
/**
|
||||
* Get the reply and returns true if it is allright
|
||||
*/
|
||||
* Get the reply and returns true if it is allright
|
||||
*/
|
||||
|
||||
METHOD GetOk( skCon ) CLASS HB_LogEmail
|
||||
|
||||
@@ -216,9 +216,9 @@ METHOD Prepare( nStyle, cMessage, cName, nPriority ) CLASS HB_LogEmail
|
||||
|
||||
|
||||
|
||||
/************************************************
|
||||
* Channel for monitors listening on a port
|
||||
*************************************************/
|
||||
/*****
|
||||
* Channel for monitors listening on a port
|
||||
*/
|
||||
|
||||
CREATE CLASS HB_LogInetPort FROM HB_LogChannel
|
||||
|
||||
|
||||
@@ -11,14 +11,14 @@
|
||||
static const char * s_cSearch = "INEDTIERESTEON";
|
||||
static const char * s_cRepl = "[\\]^_`a";
|
||||
|
||||
/*
|
||||
/**
|
||||
* Function: XForm()
|
||||
* Purpose: Internal function to translate words to dictionary
|
||||
* Arguments: cWord - upper case word to format
|
||||
* Returns: cXformed - translated word
|
||||
*
|
||||
* Notes: I'm assuming that the passed word won't exceed 128 bytes.
|
||||
**************************/
|
||||
*/
|
||||
HB_FUNC( XFORM )
|
||||
{
|
||||
char cRet[ 128 ];
|
||||
@@ -75,14 +75,14 @@ HB_FUNC( XFORM )
|
||||
hb_retclen( cRet, iRetLen );
|
||||
}
|
||||
|
||||
/*
|
||||
/**
|
||||
* Function: XUnForm()
|
||||
* Purpose: Internal function to translate words from dictionary
|
||||
* Arguments: cWord - formatted word
|
||||
* Returns: cXformed - unformatted word
|
||||
*
|
||||
* Notes: I'm assuming that the returned word won't exceed 128 bytes.
|
||||
**************************/
|
||||
*/
|
||||
HB_FUNC( XUNFORM )
|
||||
{
|
||||
char cRet[ 128 ];
|
||||
@@ -130,7 +130,7 @@ HB_FUNC( XUNFORM )
|
||||
hb_retclen( cRet, iRetLen );
|
||||
}
|
||||
|
||||
/*
|
||||
/**
|
||||
* Function: Sp_Rate()
|
||||
* Syntax: cRating := Sp_Rate( cFound, cWord )
|
||||
* Purpose: Returns a letter code indicating how similar the two
|
||||
@@ -149,7 +149,7 @@ HB_FUNC( XUNFORM )
|
||||
* either an I if the words are the same length, or a Z.
|
||||
*
|
||||
* C Notes: I'm assuming the words passed are already trimmed.
|
||||
**************************/
|
||||
*/
|
||||
HB_FUNC( SP_RATE )
|
||||
{
|
||||
const char * cFound = hb_parc( 1 );
|
||||
@@ -185,7 +185,7 @@ HB_FUNC( SP_RATE )
|
||||
hb_retclen_buffer( cRating, 3 );
|
||||
}
|
||||
|
||||
/*
|
||||
/**
|
||||
* Author: Clayton Neff
|
||||
* Copyright (c) 1992 by CoN Computer Consultants
|
||||
*
|
||||
@@ -768,14 +768,14 @@ HB_FUNC( C_METAFONE )
|
||||
hb_xfree( sReturn );
|
||||
}
|
||||
|
||||
/*
|
||||
/**
|
||||
* Purpose: Sets the given bit in a passed bit string. Returns the previous
|
||||
* value. Be sure to pass the string by reference. NOTE. In order
|
||||
* to stay as fast as possible, minimal parameter checking is
|
||||
* performed. It is up to the user to not be too stupid.
|
||||
*
|
||||
* Syntax: bit( @<OptC String>, <OptN (1...n) Offset> [, <OptL Set/Clear>] )
|
||||
**************************/
|
||||
*/
|
||||
HB_FUNC( BIT )
|
||||
{
|
||||
HB_UCHAR mask;
|
||||
@@ -815,7 +815,7 @@ static HB_BOOL WordSep( HB_UCHAR c )
|
||||
( c > 'z' && c < 128 ); /* Support international characters, too. */
|
||||
}
|
||||
|
||||
/*
|
||||
/**
|
||||
* Author: John F. Kaster
|
||||
* Notes: Copyright (c) 1994 by John F. Kaster and Joseph D. Booth
|
||||
* Written for Grumpfish Speller to make it way faster than Prolixity.
|
||||
@@ -828,7 +828,7 @@ static HB_BOOL WordSep( HB_UCHAR c )
|
||||
* Will be set to 0 when the end of the string is encountered.
|
||||
* Defaults to start of string.
|
||||
* <nLineLen> Maximum wrap length for line. Defaults to 75.
|
||||
**************************/
|
||||
*/
|
||||
HB_FUNC( SP_LINE )
|
||||
{
|
||||
int nArgs = hb_pcount();
|
||||
|
||||
@@ -1692,14 +1692,14 @@ STATIC FUNCTION EmptyValue( cType, nLen, nDec )
|
||||
|
||||
RETURN xVal
|
||||
|
||||
/******************
|
||||
* Function .......: hb_Decode( <var>, [ <case1,ret1 [,...,caseN,retN] ] [, <def> ]> ) ---> <xRet>
|
||||
* Author .........: Francesco Saverio Giudice
|
||||
* Date of creation: 25/01/1991
|
||||
* Last revision ..: 24/01/2006 1.13 - rewritten for xHarbour and renamed in hb_Decode()
|
||||
*
|
||||
* Decode a value from a list.
|
||||
*******************/
|
||||
/**
|
||||
* Function .......: hb_Decode( <var>, [ <case1,ret1 [,...,caseN,retN] ] [, <def> ]> ) ---> <xRet>
|
||||
* Author .........: Francesco Saverio Giudice
|
||||
* Date of creation: 1991/01/25
|
||||
* Last revision ..: 2006/01/24 1.13 - rewritten for xHarbour and renamed in hb_Decode()
|
||||
*
|
||||
* Decode a value from a list.
|
||||
*/
|
||||
|
||||
STATIC FUNCTION hb_Decode( ... )
|
||||
|
||||
|
||||
@@ -459,7 +459,7 @@ HB_ERRCODE hb_rddSelectWorkAreaNumber( int iArea )
|
||||
}
|
||||
|
||||
|
||||
/* *********************************************************** */
|
||||
/* =========================================================== */
|
||||
|
||||
/*
|
||||
* Moving work ares between threads
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
* $Id$
|
||||
*/
|
||||
|
||||
/***************************************************
|
||||
/**
|
||||
* Harbour Inet demo server program
|
||||
*
|
||||
* Giancarlo Niccolai
|
||||
|
||||
@@ -14,7 +14,6 @@ PROCEDURE Main()
|
||||
PRIVATE m_b := "m_b"
|
||||
|
||||
#ifndef __XHARBOUR__
|
||||
|
||||
SWITCH a
|
||||
ENDSWITCH
|
||||
#endif
|
||||
|
||||
@@ -315,12 +315,7 @@ PROCEDURE Main( cRDDType, cAdsMode )
|
||||
ENDIF
|
||||
|
||||
//
|
||||
//
|
||||
// *********************************************
|
||||
// P U T M O R E R D D T E S T S H E R E
|
||||
// *********************************************
|
||||
//
|
||||
//
|
||||
// PUT MORE RDD TESTS HERE
|
||||
//
|
||||
|
||||
// TEST: dbCloseArea()
|
||||
|
||||
@@ -26,7 +26,6 @@ PROCEDURE Main()
|
||||
PRIVATE m_b := "m_b"
|
||||
|
||||
#ifndef __XHARBOUR__
|
||||
|
||||
SWITCH a
|
||||
ENDSWITCH
|
||||
#endif
|
||||
|
||||
Reference in New Issue
Block a user