diff --git a/ChangeLog.txt b/ChangeLog.txt
index f28a2b8a2d..758f0bcd0b 100644
--- a/ChangeLog.txt
+++ b/ChangeLog.txt
@@ -10,6 +10,43 @@
* Change, ! Fix, % Optimization, + Addition, - Removal, ; Comment
*/
+2013-03-17 21:46 UTC+0100 Viktor Szakats (harbour syenar.net)
+ * README.txt
+ + added wikipedia article link
+
+ * extras/hbdoc/genhtml.prg
+ * extras/hbdoc/genxml.prg
+ * extras/hbdoc/hbdoc.hbp
+ * extras/hbdoc/hbdoc.prg
+ * extras/hbdoc/tmplates.prg
+ + can now be run as script
+ ! fixed to not chop off left columns of examples and tests
+ * synced banner function with utils
+ * use strings instead of ASCII values to represent them
+ ! fixed source directory reference
+ ! close some unclosed HTML tags
+
+ * doc/en/menu.txt
+ * cleanup
+
+ * doc/en/file.txt
+ * doc/en/hbflock.txt
+ * doc/en/memo.txt
+ * doc/en/string.txt
+ * deleted faulty 64K limit information
+
+ * extras/httpsrv/cgifunc.prg
+ * extras/httpsrv/uhttpd.hbp
+ * extras/httpsrv/uhttpd.ini
+ * extras/httpsrv/uhttpd.prg
+ * instead of HRBMAIN() start whatever is the first public
+ function in external script modules
+ + uhttpd can now be run as script
+ * minor cleanups
+
+ + extras/httpsrv/logs/empty
+ + added empty directory to avoid error on startup of uhttpd
+
2013-03-17 16:06 UTC+0100 Viktor Szakats (harbour syenar.net)
- package/updt_web_nightly.sh
- deleted website updater script. no longer needed with GitHub
diff --git a/README.txt b/README.txt
index 8073c88524..88e252794b 100644
--- a/README.txt
+++ b/README.txt
@@ -1804,6 +1804,8 @@ TABLE OF CONTENT
https://github.com/harbour/core/blob/master/utils/hbmk2/hbmk2.md
hbrun documentation:
https://github.com/harbour/core/blob/master/contrib/hbrun/hbrun.md
+ Wikipedia:
+ https://en.wikipedia.org/wiki/Harbour_compiler
[ Copyright (c) 2009-2013 Viktor Szakats (harbour syenar.net)
diff --git a/doc/en/file.txt b/doc/en/file.txt
index 4902ee1793..c788daa874 100644
--- a/doc/en/file.txt
+++ b/doc/en/file.txt
@@ -197,7 +197,7 @@
$COMPLIANCE$
C
$PLATFORMS$
- All(64K)
+ All
$FILES$
Library is core
$SEEALSO$
@@ -255,7 +255,7 @@
$COMPLIANCE$
C
$PLATFORMS$
- All(64K)
+ All
$FILES$
Library is core
$SEEALSO$
@@ -642,7 +642,7 @@
$COMPLIANCE$
C
$PLATFORMS$
- All(64K)
+ All
$FILES$
Library is core
$SEEALSO$
diff --git a/doc/en/hbflock.txt b/doc/en/hbflock.txt
index d69f3b8457..d256277936 100644
--- a/doc/en/hbflock.txt
+++ b/doc/en/hbflock.txt
@@ -50,7 +50,7 @@
$COMPLIANCE$
H
$PLATFORMS$
- All(64K)
+ All
$FILES$
Library is core
$SEEALSO$
@@ -100,7 +100,7 @@
$COMPLIANCE$
H
$PLATFORMS$
- All(64K)
+ All
$FILES$
Library is core
$SEEALSO$
diff --git a/doc/en/memo.txt b/doc/en/memo.txt
index 20db562804..244610027a 100644
--- a/doc/en/memo.txt
+++ b/doc/en/memo.txt
@@ -146,7 +146,7 @@
$COMPLIANCE$
C
$PLATFORMS$
- All(64K)
+ All
$FILES$
Library is core
$SEEALSO$
@@ -216,7 +216,7 @@
$COMPLIANCE$
C
$PLATFORMS$
- All(64K)
+ All
$FILES$
Library is core
$SEEALSO$
diff --git a/doc/en/menu.txt b/doc/en/menu.txt
index 16ed17d470..03d3d28d99 100644
--- a/doc/en/menu.txt
+++ b/doc/en/menu.txt
@@ -261,7 +261,6 @@
Following are active keys that handled by __MenuTo():
-
key Meaning
@@ -278,7 +277,7 @@
First letter Select next menu with the same first letter,
| return this item position.
- upon exit the cursor is placed at MaxRow()-1, 0
+ upon exit the cursor is placed at MaxRow() - 1, 0
__MenuTo() can be nested without loosing the previous prompts.
MENU TO command is preprocessed into __MenuTo() function during
@@ -329,7 +328,7 @@
a PRIVATE variable with the name would be created to
hold the result.
$DESCRIPTION$
- Menu To() invoked the menu define by previous __AtPrompt() call
+ MENU TO invoked the menu define by previous __AtPrompt() call
and display a highlight bar that the user can move to select an
option from the menu. If does not exist or not visible,
a PRIVATE variable named is created and hold the current
@@ -346,26 +345,26 @@
highlighted, if the user press Down arrow while on the last item,
the first item is highlighted.
- Following are active keys that handled by Menu To:
+ Following are active keys that handled by MENU TO:
- key Meaning
+ key Meaning
- Up - Move to previous item
- Down - Move to next item
- Left - Move to previous item
- Right - Move to next item
- Home - Move to the first item
- End - Move to the last item
- Page-Up - Select menu item, return position
- Page-Down - Select menu item, return position
- Enter - Select menu item, return position
- Esc - Abort selection, return 0
- First letter - Select next menu with the same first letter,
+ Up Move to previous item
+ Down Move to next item
+ Left Move to previous item
+ Right Move to next item
+ Home Move to the first item
+ End Move to the last item
+ Page-Up Select menu item, return position
+ Page-Down Select menu item, return position
+ Enter Select menu item, return position
+ Esc Abort selection, return 0
+ First letter Select next menu with the same first letter,
| return this item position.
- upon exit the cursor is placed at MaxRow()-1, 0
- Menu To can be nested without loosing the previous prompts.
+ upon exit the cursor is placed at MaxRow() - 1, 0
+ MENU TO can be nested without loosing the previous prompts.
MENU TO command is preprocessed into __MenuTo() function during
compile time.
diff --git a/doc/en/string.txt b/doc/en/string.txt
index 6920b226da..465cebf36f 100644
--- a/doc/en/string.txt
+++ b/doc/en/string.txt
@@ -326,7 +326,7 @@
$COMPLIANCE$
C
$PLATFORMS$
- All(64K)
+ All
$FILES$
Library is core
$SEEALSO$
@@ -390,7 +390,7 @@
$COMPLIANCE$
C
$PLATFORMS$
- All(64K)
+ All
$FILES$
Library is core
$SEEALSO$
@@ -519,7 +519,7 @@
$COMPLIANCE$
C
$PLATFORMS$
- All(64K)
+ All
$FILES$
Library is core
$SEEALSO$
@@ -1292,7 +1292,7 @@
$COMPLIANCE$
C
$PLATFORMS$
- All(64K)
+ All
$FILES$
Library is core
$SEEALSO$
@@ -1364,7 +1364,7 @@
$COMPLIANCE$
C
$PLATFORMS$
- All(64K)
+ All
$FILES$
Library is core
$SEEALSO$
@@ -1454,7 +1454,7 @@
$COMPLIANCE$
C
$PLATFORMS$
- All(64K)
+ All
$FILES$
Libraty is rtl
$SEEALSO$
diff --git a/extras/hbdoc/genhtml.prg b/extras/hbdoc/genhtml.prg
index d34fcba9cb..177c2d6644 100644
--- a/extras/hbdoc/genhtml.prg
+++ b/extras/hbdoc/genhtml.prg
@@ -116,14 +116,18 @@ METHOD NewFile() CLASS GenerateHTML
::Append( ::cTitle /* + iif( Empty( ::cDescription ), "", " - " + ::cDescription ) */, "title" )
::OpenTag( "meta", "http-equiv", "content-type", "content", "text/html; charset=UTF-8" )
+ ::CloseTag( "meta" )
::OpenTag( "meta", "name", "generator", "content", "Harbour examples/hbdoc" )
+ ::CloseTag( "meta" )
::OpenTag( "meta", "name", "keywords", "content", "Harbour project, Clipper, xBase, database, Free Software, GNU, compiler, cross platform, 32-bit, FiveWin" )
+ ::CloseTag( "meta" )
IF ::lCreateStyleDocument
::lCreateStyleDocument := .F.
::RecreateStyleDocument( STYLEFILE )
ENDIF
::OpenTag( "link", "rel", "stylesheet", "type", "text/css", "href", STYLEFILE )
+ ::CloseTag( "link" )
::CloseTag( "head" )
::OpenTag( "body" )
@@ -231,7 +235,7 @@ METHOD PROCEDURE WriteEntry( cField, oEntry, lPreformatted, nIndent ) CLASS Gene
::OpenTag( "pre", iif( cTagClass != NIL, "class", ), cTagClass )
DO WHILE Len( cEntry ) > 0
IF Lower( cField ) + "|" $ "examples|tests|"
- ::Append( SubStr( Parse( @cEntry, hb_eol() ), 7 ), "" )
+ ::Append( SubStr( Parse( @cEntry, hb_eol() ), 5 ), "" )
ELSE
::Append( Indent( Parse( @cEntry, hb_eol() ), 0, , .T. ), "" )
ENDIF
@@ -300,7 +304,7 @@ METHOD Append( cText, cFormat ) CLASS GenerateHTML
aFormat := p_aConversionList
FOR idx := 1 TO Len( aFormat ) STEP 2
- cResult := StrTran( cResult, Chr( aFormat[ idx ] ), "&" + aFormat[ idx + 1 ] + ";" )
+ cResult := StrTran( cResult, aFormat[ idx ], "&" + aFormat[ idx + 1 ] + ";" )
NEXT
aFormat := hb_ATokens( cFormat, "," )
diff --git a/extras/hbdoc/genxml.prg b/extras/hbdoc/genxml.prg
index 24ad2dc0cf..c85fdcf03e 100644
--- a/extras/hbdoc/genxml.prg
+++ b/extras/hbdoc/genxml.prg
@@ -154,7 +154,7 @@ METHOD PROCEDURE WriteEntry( cCaption, cEntry, lPreformatted ) CLASS GenerateXML
IF ! Empty( cEntry )
cResult := iif( hb_eol() $ cEntry, hb_eol() + cEntry, cEntry )
FOR idx := 1 TO Len( p_aConversionList ) STEP 2
- cResult := StrTran( cResult, Chr( p_aConversionList[ idx ] ), "&" + p_aConversionList[ idx + 1 ] + ";" )
+ cResult := StrTran( cResult, p_aConversionList[ idx ], "&" + p_aConversionList[ idx + 1 ] + ";" )
NEXT
cEntry := cResult
diff --git a/extras/hbdoc/hbdoc.hbp b/extras/hbdoc/hbdoc.hbp
index 4a2dd3e7bf..9205e22447 100644
--- a/extras/hbdoc/hbdoc.hbp
+++ b/extras/hbdoc/hbdoc.hbp
@@ -9,13 +9,6 @@
-gtcgi
hbdoc.prg
-tmplates.prg
-
-genbase.prg
-
-gentxt.prg
-genhtml.prg
-genxml.prg
# NOTE: hbdoc doesn't work from other locations than
# the current one, so we don't install it yet.
diff --git a/extras/hbdoc/hbdoc.prg b/extras/hbdoc/hbdoc.prg
index 785ad21856..bbdcf40ef3 100644
--- a/extras/hbdoc/hbdoc.prg
+++ b/extras/hbdoc/hbdoc.prg
@@ -94,6 +94,7 @@ done - validate sources against these templates
#include "directry.ch"
#include "fileio.ch"
+#include "hbver.ch"
#include "hbdoc.ch"
@@ -216,7 +217,7 @@ PROCEDURE Main( ... )
{;
p_hsSwitches[ "basedir" ] + "doc", ;
p_hsSwitches[ "basedir" ] + "doc" + hb_ps() + "en", ;
- iif( p_hsSwitches[ "source" ], p_hsSwitches[ "basedir" ] + "source", NIL ), ;
+ iif( p_hsSwitches[ "source" ], p_hsSwitches[ "basedir" ] + "src", NIL ), ;
iif( p_hsSwitches[ "contribs" ], p_hsSwitches[ "basedir" ] + "contrib", NIL ), ;
}, ;
{| c | iif( ! Empty( c ), ProcessFolder( c, @aContent ), ) } )
@@ -420,26 +421,18 @@ STATIC PROCEDURE ProcessFolder( cFolder, aContent ) // this is a recursive proce
STATIC FUNCTION ProcessFile( cFile, aContent )
- LOCAL aHandle := { 0, 0 } // file handle and position
+ LOCAL aHandle := { F_ERROR, 0 } // file handle and position
LOCAL cSectionName
LOCAL cVersion
LOCAL o
LOCAL nOldContentLen := Len( aContent )
IF ( aHandle[ 1 ] := FOpen( cFile ) ) == F_ERROR
- OutErr( "error: could not open " + cFile + ", " + hb_ntos( Abs( aHandle[ 1 ] ) ) + hb_eol() )
+ OutErr( "error: could not open " + cFile + ", " + hb_ntos( aHandle[ 1 ] ) + hb_eol() )
RETURN .F.
ENDIF
- IF ! FReadLn( @aHandle, "" ) // assume first line is ID comment prefix
- // ~ FClose( aHandle[ 1 ] )
- // ~ RETURN .F.
- ENDIF
-
- IF ! FReadLn( @aHandle, @cVersion ) // assume second line is ID
- // ~ FClose( aHandle[ 1 ] )
- // ~ RETURN .F.
- ENDIF
+ cVersion := ""
o := Entry():New( "Template" )
@@ -647,8 +640,8 @@ STATIC FUNCTION FReadSection( aHandle, cSectionName, cSection, o )
DO WHILE ( nPosition := FSeek( aHandle[ 1 ], 0, FS_RELATIVE ) ), FReadLn( @aHandle, @cBuffer )
// TOFIX: this assumes that every line starts with " *"
cBuffer := RTrim( SubStr( cBuffer, 3 ) )
- IF Left( LTrim( cBuffer ), 1 ) == p_hsSwitches[ "DELIMITER" ] ;
- .AND. Right( cBuffer, 1 ) == p_hsSwitches[ "DELIMITER" ]
+ IF Left( LTrim( cBuffer ), 1 ) == p_hsSwitches[ "DELIMITER" ] .AND. ;
+ Right( cBuffer, 1 ) == p_hsSwitches[ "DELIMITER" ]
FSeek( aHandle[ 1 ], nPosition, FS_SET )
aHandle[ 2 ]-- // decrement the line number when rewinding the file
EXIT
@@ -709,7 +702,7 @@ STATIC FUNCTION FReadSection( aHandle, cSectionName, cSection, o )
STATIC PROCEDURE FileEval( acFile, bBlock, nMaxLine )
- LOCAL aHandle := { 0, 0 }
+ LOCAL aHandle := { F_ERROR, 0 }
LOCAL cBuffer
LOCAL lCloseFile := .F.
LOCAL xResult
@@ -912,7 +905,12 @@ PROCEDURE ShowSubHelp( xLine, nMode, nIndent, n )
RETURN
STATIC FUNCTION HBRawVersion()
- RETURN StrTran( Version(), "Harbour " )
+ RETURN hb_StrFormat( "%d.%d.%d%s (r%d)", ;
+ hb_Version( HB_VERSION_MAJOR ), ;
+ hb_Version( HB_VERSION_MINOR ), ;
+ hb_Version( HB_VERSION_RELEASE ), ;
+ hb_Version( HB_VERSION_STATUS ), ;
+ hb_Version( HB_VERSION_REVISION ) )
PROCEDURE ShowHelp( cExtraMessage, aArgs )
@@ -1153,3 +1151,9 @@ FUNCTION Filename( cFile, cFormat, nLength )
ENDIF
RETURN cResult
+
+SET PROCEDURE TO "tmplates.prg"
+SET PROCEDURE TO "genbase.prg"
+SET PROCEDURE TO "gentxt.prg"
+SET PROCEDURE TO "genhtml.prg"
+SET PROCEDURE TO "genxml.prg"
diff --git a/extras/hbdoc/tmplates.prg b/extras/hbdoc/tmplates.prg
index f226bca463..530af79514 100644
--- a/extras/hbdoc/tmplates.prg
+++ b/extras/hbdoc/tmplates.prg
@@ -316,7 +316,6 @@ PROCEDURE init_Templates()
PUBLIC p_aPlatforms := { ;
{ "", "" }, ;
{ "All", "This is available on all platforms" }, ;
- { "All(64K)", "This is available on all platforms though some platforms have a string length limit of 64KB" }, ;
{ "All(GT)", "This part of the GT API and supported only by some platforms." }, ;
{ "All(LFN)", "This is available on all platforms." + hb_eol() + ;
"If long file names are available Harbour will use/display the first 15 characters " +;
@@ -325,15 +324,15 @@ PROCEDURE init_Templates()
{ "OS2(GT)", "Under OS/2 the number of columns avaliable depends of the current Terminal screen size." }, ;
{ "Win(GT)", "Under Windows, the return value of MaxRow() function is only affected if called after an SetMode() function" }, ;
{ "BSD", "This is available on the BSD platform" }, ;
- { "DARWIN", "This is available on the DARWIN platform" }, ;
+ { "DARWIN", "This is available on the Darwin platform" }, ;
{ "DOS", "This is available on the MS-DOS platform" }, ;
{ "HPUX", "This is available on the HPUX platform" }, ;
- { "LINUX", "This is available on the LINUX platform" }, ;
+ { "LINUX", "This is available on the Linux platform" }, ;
{ "OS2", "This is available on the OS/2 platform" }, ;
- { "SUNOS", "This is available on the SUNOS platform" }, ;
+ { "SUNOS", "This is available on the SunOS platform" }, ;
{ "Unix", "This is available on the Unix platform(s)" }, ;
- { "Win", "This is available on the MS-Windows platform(s)" }, ;
- { "WinCE", "This is available on the MS-Windows-CE platform" } ;
+ { "Win", "This is available on the Windows platform(s)" }, ;
+ { "WinCE", "This is available on the Windows CE platform" } ;
}
PUBLIC p_aStatus := { ;
@@ -344,10 +343,10 @@ PROCEDURE init_Templates()
}
PUBLIC p_aConversionList := { ;
- 38, "amp", ;
- 34, "quot", ;
- 60, "lt", ;
- 62, "gt" ;
+ "&", "amp", ;
+ '"', "quot", ;
+ "<", "lt", ;
+ ">", "gt" ;
}
RETURN
diff --git a/extras/httpsrv/cgifunc.prg b/extras/httpsrv/cgifunc.prg
index 6f1a1c8bcd..2fd66c3a31 100644
--- a/extras/httpsrv/cgifunc.prg
+++ b/extras/httpsrv/cgifunc.prg
@@ -451,17 +451,6 @@ FUNCTION uhttpd_AddSecondsToTime( cTime, nSecsToAdd, nDaysAdded )
RETURN cNewTime
-FUNCTION uhttpd_TimeDiffAsSeconds( dDateStart, dDateEnd, cTimeStart, cTimeEnd )
-
- LOCAL aRetVal
-
- __defaultNIL( @dDateEnd, Date() )
- __defaultNIL( @cTimeEnd, Time() )
-
- aRetVal := ft_Elapsed( dDateStart, dDateEnd, cTimeStart, cTimeEnd )
-
- RETURN aRetVal[ 4, 2 ]
-
FUNCTION uhttpd_OutputString( cString, aTranslate, lProtected )
LOCAL cHtml
diff --git a/extras/httpsrv/logs/empty b/extras/httpsrv/logs/empty
new file mode 100644
index 0000000000..e69de29bb2
diff --git a/extras/httpsrv/uhttpd.hbp b/extras/httpsrv/uhttpd.hbp
index d0d538695e..eed368e1a3 100644
--- a/extras/httpsrv/uhttpd.hbp
+++ b/extras/httpsrv/uhttpd.hbp
@@ -3,10 +3,9 @@
-mt -gui
+-gtwvt
+
uhttpd.prg
-cgifunc.prg
-cookie.prg
-session.prg
hbwin.hbc
hbnf.hbc
diff --git a/extras/httpsrv/uhttpd.ini b/extras/httpsrv/uhttpd.ini
index 1842c9c13a..d3972ca27a 100644
--- a/extras/httpsrv/uhttpd.ini
+++ b/extras/httpsrv/uhttpd.ini
@@ -26,7 +26,7 @@
#document_root = $(APP_DIR)\home
# --- display folder content
-#show_indexes = .f.
+#show_indexes = .F.
# --- default index files
#DirectoryIndex = index.html index.htm
@@ -70,4 +70,3 @@ start_num = 10
#/images = $(APP_DIR)/images
# end
-
diff --git a/extras/httpsrv/uhttpd.prg b/extras/httpsrv/uhttpd.prg
index e3fb563d9d..3b289d7def 100644
--- a/extras/httpsrv/uhttpd.prg
+++ b/extras/httpsrv/uhttpd.prg
@@ -58,7 +58,6 @@
*
* More description to come.
*
- *
*/
/*
@@ -75,6 +74,10 @@
*/
+#require "hbnf"
+#require "hbwin"
+#require "hbgd"
+
// remove comment to activate hb_ToOutDebug()
// #define DEBUG_ACTIVE
@@ -95,19 +98,19 @@ REQUEST __HB_EXTERN__
REQUEST GDChart
REQUEST GDImage
REQUEST GDImageChar
-# define APP_GD_SUPPORT "_GD"
-# stdout "Lib GD support enabled"
+ #define APP_GD_SUPPORT "_GD"
+ #stdout "Lib GD support enabled"
#else
-# define APP_GD_SUPPORT ""
-# stdout "Lib GD support disabled"
+ #define APP_GD_SUPPORT ""
+ #stdout "Lib GD support disabled"
#endif
#ifdef FIXED_THREADS
-# define APP_DT_SUPPORT "_FIXED_THREADS"
-# stdout "Fixed # of threads"
+ #define APP_DT_SUPPORT "_FIXED_THREADS"
+ #stdout "Fixed # of threads"
#else
-# define APP_DT_SUPPORT ""
-# stdout "Dynamic # of threads"
+ #define APP_DT_SUPPORT ""
+ #stdout "Dynamic # of threads"
#endif
#define APP_NAME "uhttpd"
@@ -138,20 +141,8 @@ REQUEST GDImageChar
#define CR_LF ( Chr( 13 ) + Chr( 10 ) )
-#ifdef __PLATFORM__WINDOWS
-REQUEST HB_GT_WVT_DEFAULT
-REQUEST HB_GT_WIN
-REQUEST HB_GT_NUL
-#else
-REQUEST HB_GT_TRM_DEFAULT
-REQUEST HB_GT_NUL
-#endif
-
#define THREAD_GT hb_gtVersion()
-// dynamic call for HRB support
-DYNAMIC HRBMAIN
-
STATIC s_lQuitRequest := .F.
STATIC s_hmtxQueue, s_hmtxServiceThreads, s_hmtxRunningThreads, s_hmtxLog, s_hmtxConsole, s_hmtxBusy
@@ -214,6 +205,12 @@ PROCEDURE Main( ... )
LOCAL nConsoleRows, nConsoleCols
LOCAL nCmdConsoleRows, nCmdConsoleCols
+#if defined( __HBSCRIPT__HBSHELL )
+ #if defined( __PLATFORM__WINDOWS )
+ hbshell_gtSelect( "GTWVT" )
+ #endif
+#endif
+
IF ! hb_mtvm()
? "I need multhread support. Please, recompile me!"
WAIT
@@ -231,7 +228,7 @@ PROCEDURE Main( ... )
// defaults not changeble via ini file
lStop := .F.
- cConfig := EXE_Path() + hb_ps() + APP_NAME + ".ini"
+ cConfig := hb_DirBase() + APP_NAME + ".ini"
lConsole := .T.
nStartServiceThreads := START_SERVICE_THREADS
@@ -400,6 +397,9 @@ PROCEDURE Main( ... )
ENDIF
IF HB_ISSTRING( cApplicationRoot )
+ IF Empty( cApplicationRoot )
+ cApplicationRoot := "." + hb_ps()
+ ENDIF
cI := cApplicationRoot
IF hb_DirExists( cI )
IF Right( cI, 1 ) == "/" .AND. Len( cI ) > 2 .AND. !( SubStr( cI, Len( cI ) - 2, 1 ) == ":" )
@@ -2179,7 +2179,7 @@ STATIC PROCEDURE Help()
? "-c | --config Configuration file (default: " + APP_NAME + ".ini)"
? " It is possibile to define file path"
? "-a | --approot Application root directory (default: )"
- ? "-d | --docroot Document root directory (default: \home)"
+ ? "-d | --docroot Document root directory (default: /home)"
? "-i | --indexes Allow directory view (default: no)"
? "-s | --stop Stop webserver"
? "-ts | --start-threads Define starting threads (default: " + hb_ntos( START_RUNNING_THREADS ) + ")"
@@ -2206,19 +2206,6 @@ STATIC PROCEDURE SysSettings()
RETURN
-STATIC FUNCTION Exe_Path()
-
- LOCAL cPath := hb_argv( 0 )
- LOCAL nPos := RAt( hb_ps(), cPath )
-
- IF nPos == 0
- cPath := ""
- ELSE
- cPath := SubStr( cPath, 1, nPos - 1 )
- ENDIF
-
- RETURN cPath
-
STATIC PROCEDURE Progress( /*@*/ nProgress )
LOCAL cString := "["
@@ -2286,19 +2273,19 @@ STATIC FUNCTION ParseIni( cConfig )
// Define here what attributes we can have in ini config file and their defaults
// Please add all keys in uppercase. hDefaults is Case Insensitive
hDefault := { ;
- "MAIN" => { "PORT" => LISTEN_PORT , ;
- "APPLICATION_ROOT" => EXE_Path() , ;
- "DOCUMENT_ROOT" => EXE_Path() + hb_ps() + "home", ;
- "SHOW_INDEXES" => .F. , ;
- "SCRIPTALIASMIXEDCASE" => .T. , ;
- "SESSIONPATH" => EXE_Path() + hb_ps() + "sessions" , ;
- "DIRECTORYINDEX" => DIRECTORYINDEX_ARRAY , ;
- "CONSOLE-ROWS" => MaxRow() + 1 , ;
+ "MAIN" => { "PORT" => LISTEN_PORT , ;
+ "APPLICATION_ROOT" => hb_DirBase() , ;
+ "DOCUMENT_ROOT" => hb_DirBase() + "home" , ;
+ "SHOW_INDEXES" => .F. , ;
+ "SCRIPTALIASMIXEDCASE" => .T. , ;
+ "SESSIONPATH" => hb_DirBase() + "sessions" , ;
+ "DIRECTORYINDEX" => DIRECTORYINDEX_ARRAY , ;
+ "CONSOLE-ROWS" => MaxRow() + 1 , ;
"CONSOLE-COLS" => MaxCol() + 1 }, ;
- "LOGFILES" => { "ACCESS" => FILE_ACCESS_LOG , ;
+ "LOGFILES" => { "ACCESS" => FILE_ACCESS_LOG , ;
"ERROR" => FILE_ERROR_LOG }, ;
- "THREADS" => { "MAX_WAIT" => THREAD_MAX_WAIT , ;
- "START_NUM" => START_RUNNING_THREADS , ;
+ "THREADS" => { "MAX_WAIT" => THREAD_MAX_WAIT , ;
+ "START_NUM" => START_RUNNING_THREADS , ;
"MAX_NUM" => MAX_RUNNING_THREADS }, ;
"SCRIPTALIASES" => { => } , ;
"ALIASES" => { => } }
@@ -2365,7 +2352,7 @@ STATIC FUNCTION ParseIni( cConfig )
CASE cKey == "DOCUMENT_ROOT"
IF ! Empty( cVal )
// After will change APP_DIR macro with application dir
- // xVal := StrTran( cVal, "$(APP_DIR)", Exe_Path() )
+ // xVal := StrTran( cVal, "$(APP_DIR)", hb_DirBase() )
xVal := cVal
ENDIF
CASE cKey == "SCRIPTALIASMIXEDCASE"
@@ -2373,7 +2360,7 @@ STATIC FUNCTION ParseIni( cConfig )
CASE cKey == "SESSIONPATH"
IF ! Empty( cVal )
// Change APP_DIR macro with current exe path
- // xVal := StrTran( cVal, "$(APP_DIR)", Exe_Path() )
+ // xVal := StrTran( cVal, "$(APP_DIR)", hb_DirBase() )
xVal := cVal
ENDIF
CASE cKey == "DIRECTORYINDEX"
@@ -2567,7 +2554,7 @@ STATIC FUNCTION uhttpd_DefError( oError )
cCallstack + cNewLine + ;
Replicate( "*", 70 ) + cNewLine
- uhttpd_WriteToLogFile( cString, Exe_Path() + "\error.log" )
+ uhttpd_WriteToLogFile( cString, hb_DirBase() + "error.log" )
ErrorLevel( 1 )
QUIT
@@ -2727,7 +2714,7 @@ STATIC FUNCTION Handler_HrbScript( cFileName )
// Change dir to document root
DirChange( s_cDocumentRoot )
- xResult := HRBMAIN()
+ xResult := hb_hrbDo( pHRB )
#ifdef DEBUG_ACTIVE
hb_ToOutDebug( "Handler_HrbScript(): cFileName = %s,\n\rcCurPath = %s,\n\rs_cDocumentRoot = %s,\n\rpHRB = %s,\n\rxResult = %s\n\r", ;
@@ -2883,3 +2870,7 @@ STATIC FUNCTION HB_HASHI()
hb_HCaseMatch( h, .F. )
RETURN h
+
+SET PROCEDURE TO "cgifunc.prg"
+SET PROCEDURE TO "cookie.prg"
+SET PROCEDURE TO "session.prg"