Commit Graph

6008 Commits

Author SHA1 Message Date
Przemyslaw Czerpak
c3e1436da0 2009-06-26 02:22 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/include/hbvm.h
  * harbour/include/hbrdddbf.h
  * harbour/include/hbapidbg.h
  * harbour/include/hbset.h
  * harbour/include/hbcomp.h
  * harbour/include/hbapirdd.h
  * harbour/include/hbstack.h
  * harbour/include/hbsxfunc.h
  * harbour/include/hbapilng.h
  * harbour/include/hbgtcore.h
  * harbour/include/hbapifs.h
  * harbour/include/hbdbsort.h
  * harbour/include/hbapigt.h
  * harbour/include/hbapi.h
  * harbour/include/hbapierr.h
  * harbour/include/hbapiitm.h
  * harbour/include/hbrddfpt.h
  * harbour/contrib/hbmysql/mysql.c
  * harbour/contrib/hbct/bitnum.c
  * harbour/contrib/hbct/token2.c
  * harbour/contrib/hbct/charsprd.c
  * harbour/contrib/hbct/ctnet.c
  * harbour/contrib/hbct/charonly.c
  * harbour/contrib/hbct/atadjust.c
  * harbour/contrib/hbct/ctwin.c
  * harbour/contrib/hbct/charsort.c
  * harbour/contrib/hbct/ctwin.h
  * harbour/contrib/hbct/charmix.c
  * harbour/contrib/hbct/charevod.c
  * harbour/contrib/hbct/maxline.c
  * harbour/contrib/hbct/wordrepl.c
  * harbour/contrib/hbct/charrepl.c
  * harbour/contrib/hbct/files.c
  * harbour/contrib/hbct/video.c
  * harbour/contrib/hbct/charswap.c
  * harbour/contrib/hbct/dattime3.c
  * harbour/contrib/hbct/charop.c
  * harbour/contrib/hbct/misc2.c
  * harbour/contrib/hbct/charone.c
  * harbour/contrib/hbct/ctstr.c
  * harbour/contrib/hbct/screen1.c
  * harbour/contrib/hbct/token1.c
  * harbour/contrib/hbct/ctstr.h
  * harbour/contrib/hbct/charmirr.c
  * harbour/contrib/hbct/relation.c
  * harbour/contrib/hbct/atnum.c
  * harbour/contrib/hbct/like.c
  * harbour/contrib/hbct/count.c
  * harbour/contrib/hbct/disk.c
  * harbour/contrib/hbct/ctstrfil.c
  * harbour/contrib/hbct/posdiff.c
  * harbour/contrib/hbct/addascii.c
  * harbour/contrib/hbct/tab.c
  * harbour/contrib/hbct/numline.c
  * harbour/contrib/hbct/dattime2.c
  * harbour/contrib/hbct/asciisum.c
  * harbour/contrib/hbct/expand.c
  * harbour/contrib/hbct/pos2.c
  * harbour/contrib/hbct/numat.c
  * harbour/contrib/hbct/atrepl.c
  * harbour/contrib/hbct/wordtoch.c
  * harbour/contrib/hbct/print.c
  * harbour/contrib/hbct/justify.c
  * harbour/contrib/xhb/hbxml.c
  * harbour/contrib/xhb/dbf2txt.c
  * harbour/contrib/xhb/xhbis.c
  * harbour/contrib/xhb/fparse.c
  * harbour/contrib/xhb/xstrdel.c
  * harbour/contrib/xhb/hbcomprs.c
  * harbour/contrib/xhb/datesxhb.c
  * harbour/contrib/xhb/xhbmsgs.c
  * harbour/contrib/xhb/freadlin.c
  * harbour/contrib/xhb/txtline.c
  * harbour/contrib/xhb/xhbtrim.c
  * harbour/contrib/xhb/xhbcopyf.c
  * harbour/contrib/xhb/cstructc.c
  * harbour/contrib/xhb/xhbfunc.c
  * harbour/contrib/hbtpathy/tplinux.c
  * harbour/contrib/hbgt/charmixg.c
  * harbour/contrib/hbgt/strexpan.c
  * harbour/contrib/hbgt/charodd.c
  * harbour/contrib/hbgt/strright.c
  * harbour/contrib/hbgt/asciisgt.c
  * harbour/contrib/hbgt/strdiffg.c
  * harbour/contrib/hbgt/chrtotal.c
  * harbour/contrib/hbgt/strcount.c
  * harbour/contrib/hbgt/strleft.c
  * harbour/contrib/hbgt/ascposgt.c
  * harbour/contrib/hbgt/chrfirst.c
  * harbour/contrib/hbgt/chrcount.c
  * harbour/contrib/hbgt/strpbrk.c
  * harbour/contrib/hbgt/chareven.c
  * harbour/contrib/hbgt/strcspn.c
  * harbour/contrib/hbgt/atdiff.c
  * harbour/contrib/hbsqlit3/hbsqlit3.c
  * harbour/contrib/hbmzip/hbmzip.c
  * harbour/contrib/hbnf/proper.c
  * harbour/contrib/hbnf/fttext.c
  * harbour/contrib/hbnf/chdir.c
  * harbour/contrib/hbnf/getver.c
  * harbour/contrib/hbnf/ftattr.c
  * harbour/contrib/hbnf/mkdir.c
  * harbour/contrib/hbnf/rmdir.c
  * harbour/contrib/Makefile
  * harbour/contrib/hbcurl/hbcurl.c
  * harbour/contrib/rddsql/sddmy/mysqldd.c
  * harbour/contrib/rddsql/sddpg/pgsqldd.c
  * harbour/contrib/rddsql/sddfb/fbirddd.c
  * harbour/contrib/rddsql/sddodbc/odbcdd.c
  * harbour/contrib/rddsql/sqlmix.c
  * harbour/contrib/hbhpdf/harupdf.c
  * harbour/contrib/rddads/adsx.c
  * harbour/contrib/rddads/adsfunc.c
  * harbour/contrib/rddads/rddads.h
  * harbour/contrib/rddads/ads1.c
  * harbour/contrib/hbmisc/hb_f.c
  * harbour/contrib/hbmisc/strfmt.c
  * harbour/contrib/hbmisc/stringsx.c
  * harbour/contrib/hbmisc/spd.c
  * harbour/contrib/hbtip/utils.c
  * harbour/contrib/hbwin/wapi_winbase.c
  * harbour/contrib/hbwin/win_misc.c
  * harbour/contrib/hbbtree/hb_btree.h
  * harbour/contrib/hbbtree/hb_btree.c
  * harbour/source/pp/hbpp.c
  * harbour/source/vm/runner.c
  * harbour/source/vm/estack.c
  * harbour/source/vm/itemapi.c
  * harbour/source/vm/hvm.c
  * harbour/source/vm/cmdarg.c
  * harbour/source/vm/memvars.c
  * harbour/source/vm/dynlibhb.c
  * harbour/source/vm/set.c
  * harbour/source/main/harbour.c
  * harbour/source/debug/dbgentry.c
  * harbour/source/common/hbfsapi.c
  * harbour/source/common/hbfopen.c
  * harbour/source/rtl/gtdos/gtdos.c
  * harbour/source/rtl/diskspac.c
  * harbour/source/rtl/console.c
  * harbour/source/rtl/chrasc.c
  * harbour/source/rtl/fscopy.c
  * harbour/source/rtl/run.c
  * harbour/source/rtl/spfiles.c
  * harbour/source/rtl/defpath.c
  * harbour/source/rtl/philes.c
  * harbour/source/rtl/oldbox.c
  * harbour/source/rtl/math.c
  * harbour/source/rtl/hbgtcore.c
  * harbour/source/rtl/cdpapi.c
  * harbour/source/rtl/gtcrs/gtcrs.c
  * harbour/source/rtl/dirdrive.c
  * harbour/source/rtl/hbi18n1.c
  * harbour/source/rtl/trim.c
  * harbour/source/rtl/hbzlibgz.c
  * harbour/source/rtl/philesx.c
  * harbour/source/rtl/mlcfunc.c
  * harbour/source/rtl/filehb.c
  * harbour/source/rtl/fstemp.c
  * harbour/source/rtl/is.c
  * harbour/source/rtl/hbrunfun.c
  * harbour/source/rtl/ampm.c
  * harbour/source/rtl/setcolor.c
  * harbour/source/rtl/oemansi.c
  * harbour/source/rtl/disksphb.c
  * harbour/source/rtl/hbzlib.c
  * harbour/source/rtl/strpeek.c
  * harbour/source/rtl/replic.c
  * harbour/source/rtl/stuff.c
  * harbour/source/rtl/hbstrfmt.c
  * harbour/source/rtl/transfrm.c
  * harbour/source/rtl/hbhex.c
  * harbour/source/rtl/trace.c
  * harbour/source/rtl/hbadler.c
  * harbour/source/rtl/samples.c
  * harbour/source/rtl/filebuf.c
  * harbour/source/rtl/hbcrc.c
  * harbour/source/rtl/gete.c
  * harbour/source/rtl/hbmd5.c
  * harbour/source/rtl/langapi.c
  * harbour/source/rtl/gtcgi/gtcgi.c
  * harbour/source/rtl/errapi.c
  * harbour/source/rtl/hbregexc.c
  * harbour/source/rtl/natmsg.c
  * harbour/source/rtl/fssize.c
  * harbour/source/rtl/hbinet.c
  * harbour/source/rtl/colorind.c
  * harbour/source/rtl/copyfile.c
  * harbour/source/rtl/mouseapi.c
  * harbour/source/rtl/soundex.c
  * harbour/source/rtl/memofile.c
  * harbour/source/rtl/hbffind.c
  * harbour/source/rtl/gtapi.c
  * harbour/source/rtl/direct.c
  * harbour/source/rtl/filesys.c
  * harbour/source/rtl/file.c
  * harbour/source/rtl/val.c
  * harbour/source/rtl/hbregex.c
  * harbour/source/rtl/rat.c
  * harbour/source/rtl/isprint.c
  * harbour/source/rdd/dbfntx/dbfntx1.c
  * harbour/source/rdd/dbsql.c
  * harbour/source/rdd/workarea.c
  * harbour/source/rdd/wacore.c
  * harbour/source/rdd/sdf1.c
  * harbour/source/rdd/dbdetach.c
  * harbour/source/rdd/dbcmdx.c
  * harbour/source/rdd/dbfnsx/dbfnsx1.c
  * harbour/source/rdd/dbcmd.c
  * harbour/source/rdd/dbfcdx/dbfcdx1.c
  * harbour/source/rdd/delim1.c
  * harbour/source/rdd/dbf1.c
  * harbour/source/rdd/hsx/hsx.c
  * harbour/source/rdd/dbcmd53.c
  * harbour/source/rdd/usrrdd/usrrdd.c
  * harbour/source/rdd/wafunc.c
  * harbour/source/rdd/dbffpt/dbffpt1.c
  * harbour/source/rdd/hbsix/sxsem.c
  * harbour/source/rdd/hbsix/sxord.c
  * harbour/source/rdd/hbsix/sxfname.c
  * harbour/source/rdd/hbsix/sxtable.c
  * harbour/source/rdd/hbsix/sxdate.c
  * harbour/source/rdd/hbsix/sxutil.c
  * harbour/source/rdd/hbsix/sxcompr.c
  * harbour/source/compiler/hbmain.c
  * harbour/source/compiler/cmdcheck.c
  * harbour/source/compiler/hbpcode.c
  * harbour/source/compiler/genc.c
  * harbour/source/compiler/gencc.c
  * harbour/source/compiler/hbcmplib.c
  * harbour/source/compiler/ppcomp.c
    * changed 'char *' and changed 'BYTE *' to 'const char *' in
      the following functions:
         const char * hb_vmFindModuleSymbolName( PHB_SYMB pSym );
         void  hb_vmInitSymbolGroup( void * hNewDynLib, int argc,
                                     const char * argv[] );
         void hb_dbgEntry( int nMode, int nLine, const char *szName,
                           int nIndex, PHB_ITEM pFrame );
         void hb_dbgAddBreak( void *handle, const char *cModule,
                              int nLine, const char *szFunction );
         void hb_dbgAddWatch( void *handle, const char *szExpr, BOOL bTrace );
         PHB_ITEM hb_dbgGetExpressionValue( void *handle,
                                            const char *expression );
         BOOL hb_dbgIsValidStopLine( void *handle, const char *szModule,
                                     int nLine );
         void hb_dbgSetToCursor( void *handle, const char *szModule,
                                 int nLine );
         void hb_dbgSetWatch( void *handle, int nWatch,
                              const char *szExpr, BOOL bTrace );
         const char * hb_setGetCPtr( HB_set_enum set_specifier );
         const char * hb_setGetAltFile( void );
         const char * hb_setGetDateFormat( void );
         const char * hb_setGetTimeFormat( void );
         const char * hb_setGetDefault( void );
         const char * hb_setGetDelimChars( void );
         const char * hb_setGetDevice( void );
         const char * hb_setGetExtraFile( void );
         const char * hb_setGetPath( void );
         const char * hb_setGetMFileExt( void );
         const char * hb_setGetPrintFile( void );
         const char * hb_setGetEOL( void );
         const char * hb_setGetHBOUTLOG( void );
         const char * hb_setGetHBOUTLOGINFO( void );
         const char * hb_setGetOSCODEPAGE( void );
         void hb_compInitPP( HB_COMP_DECL, int argc,
                             const char * const argv[] );
         void hb_compGenPCodeN( const BYTE * pBuffer, ULONG ulSize,
                                HB_COMP_DECL );
         int  hb_compMain( int argc, const char * const argv[],
                           BYTE ** pBufPtr, ULONG * pulSize,
                           const char * szSource );
         void hb_compChkCompilerSwitch( HB_COMP_DECL, int,
                                        const char * const args[] );
         void hb_compChkDefines( HB_COMP_DECL, int iArg,
                                 const char * const args[] );
         void hb_compGenCString( FILE * yyc, const BYTE * pText, ULONG ulLen );
         AREAP hb_rddRequestArea( const char * szAlias, PHB_ITEM pCargo,
                                  BOOL fNewArea, BOOL fWait );
         char * hb_stackDirBuffer( void );
         LONG hb_sxPtoD( const char * pDate );
         const char * hb_langID( void );
         const char * hb_langSelectID( const char * pszID );
         const char * hb_langDGetItem( int iIndex );
         const char * hb_langDGetErrorDesc( ULONG ulIndex );
         BOOL       hb_fsChDir( const char * pszDirName );
         HB_FHANDLE hb_fsCreate( const char * pszFileName, ULONG ulAttr );
         HB_FHANDLE hb_fsCreateEx( const char * pszFilename, ULONG ulAttr,
                                   USHORT uiFlags );
         HB_FHANDLE hb_fsCreateTemp( const char * pszDir,
                                     const char * pszPrefix,
                                     ULONG ulAttr, char * pszName );
         HB_FHANDLE hb_fsCreateTempEx( char * pszName, const char * pszDir,
                                       const char * pszPrefix,
                                       const char * pszExt, ULONG ulAttr );
         const char * hb_fsCurDir( USHORT uiDrive );
         USHORT     hb_fsCurDirBuff( USHORT uiDrive, char * pbyBuffer,
                                     ULONG ulLen );
         void       hb_fsBaseDirBuff( char * pbyBuffer );
         BOOL       hb_fsDelete( const char * pszFileName );
         BOOL       hb_fsFile( const char * pszFileName );
         BOOL       hb_fsIsDirectory( const char * pszFilename );
         HB_FOFFSET hb_fsFSize( const char * pszFileName, BOOL bUseDirEntry );
         HB_FHANDLE hb_fsExtOpen( const char * pszFileName,
                                  const char * pDefExt,
         char *     hb_fsExtName( const char * pFilename,
                                  const char * pDefExt, USHORT uiExFlags,
                                  const char * pPaths );
         BOOL       hb_fsMkDir( const char * pszDirName );
         HB_FHANDLE hb_fsOpen( const char * pszFileName, USHORT uiFlags );
         BOOL       hb_fsRmDir( const char * pszDirName );
         BOOL       hb_fsRename( const char * pszOldName,
                                 const char * pszNewName );
         BOOL       hb_fsGetFileTime( const char * pszFileName,
                                      LONG * plJulian, LONG * plMillisec );
         BOOL       hb_fsSetFileTime( const char * pszFileName,
                                      LONG lJulian, LONG lMillisec );
         BOOL       hb_fsGetAttr( const char * pszFileName, ULONG * pulAttr );
         BOOL       hb_fsSetAttr( const char * pszFileName, ULONG ulAttr );
         HB_FHANDLE hb_fsPOpen( const char * pFilename, const char * pMode );
         BOOL       hb_fsCopy( const char * pSource, const char * pDest );
         BOOL       hb_spFile( const char * pFilename, char * pRetPath );
         BOOL       hb_spFileExists( const char * pFilename, char * pRetPath );
         HB_FHANDLE hb_spOpen( const char * pFilename, USHORT uiFlags );
         HB_FHANDLE hb_spCreate( const char * pFilename, ULONG ulAttr );
         HB_FHANDLE hb_spCreateEx( const char * pFilename,
                                   ULONG ulAttr, USHORT uiFlags );
         PHB_FILE   hb_fileExtOpen( const char * pFilename,
                                    const char * pDefExt, USHORT uiExFlags,
                                    const char * pPaths, PHB_ITEM pError );
         PHB_FILE   hb_fileCreateTemp( const char * pszDir,
                                       const char * pszPrefix,
                                       ULONG ulAttr, char * pszName );
         PHB_FILE   hb_fileCreateTempEx( char * pszName, const char * pszDir,
                                         const char * pszPrefix,
                                         const char * pszExt, ULONG ulAttr );
         HB_ERRCODE hb_gtBox( SHORT uiTop, SHORT uiLeft, SHORT uiBottom,
                              SHORT uiRight, const BYTE * pbyFrame );
         HB_ERRCODE hb_gtDrawBox( SHORT uiTop, SHORT uiLeft, SHORT uiBottom,
                                  SHORT uiRight, const BYTE * pbyFrame,
                                  int iColor );
         HB_ERRCODE hb_gtWrite( const BYTE * pbyStr, ULONG ulLen );
         HB_ERRCODE hb_gtWriteAt( USHORT uiRow, USHORT uiCol,
                                  const BYTE * pbyStr, ULONG ulLen );
         HB_ERRCODE hb_gtWriteCon( const BYTE * pbyStr, ULONG ulLen );
         HB_ERRCODE hb_gtPutText( USHORT uiRow, USHORT uiCol,
                                  const BYTE * pStr, ULONG ulLength,
                                  int iColor );
         HB_ERRCODE hb_gtOutStd( const BYTE * pbyStr, ULONG ulLen );
         HB_ERRCODE hb_gtOutErr( const BYTE * pbyStr, ULONG ulLen );
         HB_ERRCODE hb_gtBoxEx( int iTop, int iLeft, int iBottom, int iRight,
                                const BYTE * pbyFrame, int iColor );
         void       hb_mouseRestoreState( const BYTE * pBuffer );
         const char * hb_strLTrim( const char * szText, ULONG * ulLen );
         const char * hb_conNewLine( void );
         const char * hb_conSetColor( const char * szColor );
         const char * hb_errGetDescription( PHB_ITEM pError );
         const char * hb_errGetFileName( PHB_ITEM pError );
         const char * hb_errGetOperation( PHB_ITEM pError );
         const char * hb_errGetSubSystem( PHB_ITEM pError );
         int hb_ctwAddWindowBox( int iWindow, const BYTE * szBox, int iColor );
         const char *ct_at_exact_forward
                              ( const char *pcString, size_t sStrLen,
                                const char *pcMatch, size_t sMatchLen,
                                size_t *psMatchStrLen );
         const char *ct_at_exact_backward
                              ( const char *pcString, size_t sStrLen,
                                const char *pcMatch, size_t sMatchLen,
                                size_t *psMatchStrLen );
         const char *ct_at_wildcard_forward
                              ( const char *pcString, size_t sStrLen,
                                const char *pcMatch, size_t sMatchLen,
                                char cWildCard, size_t *psMatchStrLen );
         const char *ct_at_wildcard_backward
                              ( const char *pcString, size_t sStrLen,
                                const char *pcMatch, size_t sMatchLen,
                                char cWildCard, size_t *psMatchStrLen );
         const char *ct_at_charset_forward
                              ( const char *pcString, size_t sStrLen,
                                const char *pcCharSet, size_t sCharSetLen,
                                size_t *psMatchedCharPos );
         const char *ct_at_charset_backward
                              ( const char *pcString, size_t sStrLen,
                                const char *pcCharSet, size_t sCharSetLen,
                                size_t *psMatchedCharPos );
         char * hb_adsOemToAnsi( const char * pcString, ULONG ulLen );
         char * hb_adsAnsiToOem( const char * pcString, ULONG ulLen );
         struct hb_BTree * hb_BTreeNew( const char *FileName,
                                        USHORT usPageSize, USHORT usKeySize,
                                        ULONG ulFlags, USHORT usBuffers );
         struct hb_BTree * hb_BTreeOpen( const char *FileName, ULONG lFlags,
                                         USHORT usBuffers );
         BOOL hb_BTreeInsert( struct hb_BTree * pBTree, const char * szKey,
                              PHB_ITEM pData );
         BOOL hb_BTreeDelete( struct hb_BTree * pBTree, const char * szKey,
                              LONG lData );
         BOOL hb_BTreeSeek( struct hb_BTree * pBTree, const char * szKey,
                            LONG lData, BOOL bSoftSeek );
         const char * hb_BTreeKey( struct hb_BTree * pBTree );

    * modified RDD methods:
         HB_ERRCODE PUTVALUEFILE( AREAP, USHORT, const char *, USHORT );
         HB_ERRCODE GETVALUEFILE( AREAP, USHORT, const char *, USHORT );
    * modified GT methods:
         void REST( HB_GT_PTR, int, int, int, int, const BYTE * );
         void PUTTEXT( HB_GT_PTR, int, int, BYTE, const BYTE *, ULONG );
         void WRITEAT( HB_GT_PTR, int, int, const BYTE *, ULONG );
         void WRITE( HB_GT_PTR, const BYTE *, ULONG );
         void WRITECON( HB_GT_PTR, const BYTE *, ULONG );
         void BOX( HB_GT_PTR, int, int, int, int, const BYTE *, BYTE );
         void BOXD( HB_GT_PTR, int, int, int, int, const BYTE *, BYTE );
         void BOXS( HB_GT_PTR, int, int, int, int, const BYTE *, BYTE );
         void OUTSTD( HB_GT_PTR, BYTE *, ULONG );
         void OUTERR( HB_GT_PTR, BYTE *, ULONG );
         void MOUSERESTORESTATE( HB_GT_PTR, const BYTE * );
    * modified RDD structers:
         DBFIELDINFO, DBOPENINFO, DBORDERCONDINFO, DBCONSTRAINTINFO,
         DBORDERCREATEINFO
    + modified parameters and behevior:
         const char * hb_fsNameConv( const char * szFileName, char ** pszFree );
         const char * hb_osEncode( const char * szFileName, char ** pszFree );
         const char * hb_osDecode( const char * szFileName, char ** pszFree );
      Please look at implementation and current usage of these functions.
    + added new function:
         BOOL hb_itemGetWriteCL( PHB_ITEM pItem,
                                 char ** pszValue, ULONG * pulLen );
      which converts item string buffer to writable state to use with
      functions like FREAD() instead of hb_itemUnShare*()
    * updatd other code to respect above modifications
    ! fixed bugs (also GPF traps) located by above modifications

   TODO: please make build tests. Especially in OS2 - not tested at all.
2009-06-26 00:33:38 +00:00
Viktor Szakats
ff33fa0603 2009-06-25 03:44 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
* INSTALL
    * Some casing fixes.

  * ChangeLog
    + Added more incompat notes to 2009-06-20 22:24 UTC+0200 entry.

  * source/pp/pplib.c
  * source/compiler/hbcmplib.c
    * 'const' cleanup.

  * source/vm/fm.c
    - Deleted HB_FM_STAT() and HB_FM_NOSTAT() functions.
2009-06-25 01:45:18 +00:00
Viktor Szakats
e569ecf8b4 2009-06-24 22:36 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
* include/hbapi.h
  * include/hbapiitm.h
  * source/vm/itemapi.c
  * source/vm/arrays.c
  * source/vm/extend.c
    ; Started addition of 'const' keywords where applicable.
    * First pass:
      extern HB_EXPORT const char * hb_parc( int iParam );
      extern HB_EXPORT const char * hb_parcx( int iParam );
      extern HB_EXPORT const char * hb_itemGetCPtr( PHB_ITEM pItem );
      extern HB_EXPORT const char * hb_arrayGetCPtr( PHB_ITEM pArray, ULONG ulIndex );
    ; NOTE: This modification will break code in most compilers,
            especially in C++ mode.
            As a next steps source code will have to be modified
            according to this change. Be patient, don't report all
            errors to the developers. You can join the code cleanup.

  * source/vm/dynsym.c
  * source/vm/itemapi.c
  * source/vm/arrays.c
  * source/vm/memvars.c
  * source/vm/extend.c
  * source/vm/set.c
  * source/vm/classes.c
    * 'const's added to caller code.
2009-06-24 20:37:05 +00:00
Viktor Szakats
2cca1f30b4 2009-06-24 20:37 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
* source/vm/memvars.c
    - Deleted hb_fsCommit() as non CA-Cl*pper compatible.
      I'll let others decide what to do with this patch.

  * contrib/hbclipsm/date.c
    ! Changed hb_parnl() calls used to extract dates to hb_pardl().
2009-06-24 18:40:23 +00:00
Viktor Szakats
393a813242 2009-06-24 16:07 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
* source/vm/memvars.c
    + Added hb_fsCommit() to __MVSAVE().
      (Change copied from xhb, created by Peter Rees)

  * contrib/gtwvg/wvgsink.c
    ! Fixed BCC warning after recent change.
      (BTW, does anyone know a switch to enable such warning:
      "'x' is assigned a value that is never used" with *MinGW* ?
      It's annoying that BCC catches it, while other compilers
      don't. I'm now only using BCC when creating builds.)
2009-06-24 14:09:16 +00:00
Viktor Szakats
d9a9a26538 2009-06-24 13:34 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
* mpkg_dos.bat
  * mpkg_win.bat
  * make_gnu.bat
    * Now make_gnu.bat will also install libs to lib/<arch>/<comp>
      by default. This will enable default settings to work in
      multi-compiler mode.
    ; NOTE: hbmk script may need to be adapted for this change,
            to add lib/<arch>/<comp> to libpath. Only MinGW + msys
            users using hbmk *script* are affected though.

  * contrib/hbqt/hbqt_slots.cpp
    ! Fixed QT_QDEBUG() to map to QT function even on Windows.
      (no OutputDebugString() here please)
    ! Fixed wrong hb_itemPutCPtr() usage. Here, only string
      allocated by Harbour functions can be used. Attaching
      foreign string pointers will produce serious problems.
      This fixes one GPF reported by Lorenzo on Linux.
    ! Renamed static vars to have 's_' prefix.
    ! Commented unused SlotsExecFocusEvent(). This fixes the
      MinGW warning.
    ! Fixed to use hb_snprintf() instead of unsafe sprintf().
    % Events::eventFilter() simplified.
    * Formatting.

  * source/rtl/gtwvt/gtwvt.c
    ! Fixed hb_gtInfo( HB_GTI_SCREENSIZE ) called with invalid parameter.
      (untested, please test)

  * contrib/gtwvg/gtwvg.c
    ! Fixed hb_gtInfo( HB_GTI_SCREENSIZE ) called with invalid parameter.
    ! Fixed hb_gtInfo( HB_GTI_SETPOSANDSIZE ) called with invalid parameter.
      (untested, please test)

  * contrib/hbxbp/tests/demoxbp.prg
    ! Fixed FUNCTION not returning value.

  * utils/hbmk2/hbmk2.prg
    * Cleanup to path separator handling in .hbc files found
      automatically.
2009-06-24 11:41:37 +00:00
Viktor Szakats
81926389b2 2009-06-23 23:00 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
* source/rtl/hbgtcore.c
    ! Fixed GPF when using hb_gtInfo( HB_GTI_SETWIN ) without
      valid parameter. Thanks to Marek Horodyski for the report.

  * contrib/gtwvg/wvgsink.c
    ! Attempt to fix MinGW warning.
      ---
      ../../wvgsink.c: In function 'HB_FUN_WVG_AXSETUPCONNECTIONPOINT':
      ../../wvgsink.c:519: warning: dereferencing pointer 'hSink.56' does break strict-aliasing rules
      ../../wvgsink.c:530: note: initialized from here
      ---
      Please review, I'm not at all sure this patch is correct.
2009-06-23 21:01:39 +00:00
Viktor Szakats
f5904ca848 2009-06-23 19:21 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
* include/hbapi.h
  * include/hbapiitm.h
  * source/vm/itemapi.c
  * source/vm/arrays.c
  * source/vm/extend.c
    * Clean alternative for: 2009-06-23 18:15 UTC+0200
      (now change is local to extend.c)
      Thanks Przemek.
2009-06-23 17:23:22 +00:00
Viktor Szakats
7de9ca92fe 2009-06-23 18:15 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
* include/hbapi.h
  * include/hbapiitm.h
  * source/vm/itemapi.c
  * source/vm/arrays.c
  * source/vm/extend.c
    ! Fixed hb_parvc() function to return NULL in case an array 
      is passed as Harbour level parameter. This makes this function 
      (and _parc()) fully CA-Cl*pper compatible.
    ; Please review maybe there is a lighter patch to achieve this 
      goal. I had to add NULL versions for two functions downstream.

  * utils/hbmk2/hbmk2.prg
    * Formatting.
2009-06-23 16:16:52 +00:00
Przemyslaw Czerpak
ecb7067866 2009-06-23 10:03 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/source/compiler/genc.c
    * convert any function names to unique symbol accepted by C compilers
      it resolves problems with compiling without -n .prg files using some
      strange characters in file name, i.e. 
         /*** ^co+d-e.prg ***/
         ? procname()
2009-06-23 08:03:54 +00:00
Przemyslaw Czerpak
1ef31fd275 2009-06-23 02:15 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/source/compiler/hbcmplib.c
    * removed automatically set 1-st parameter in hb_compile*() functions
      so user can control it from .prg code
2009-06-23 00:15:42 +00:00
Viktor Szakats
7e0b52576e 2009-06-22 23:39 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
* source/rtl/getsys.prg
    ! GETACTIVE() function fixed to work even if an app
      manages getlist on its own. In this case GETACTIVE()
      will maintain the GET object in its own STATIC variable.
      This should fix the SuperLib problem reported by Bruno Luciani.

  * examples/superlib/hbsuper.dif
    + Will now automatically enable CLIPPER53 protected code
      if Harbour was built with HB_COMPAT_C53 setting. This
      enables SuperLib to use C53's build-in mouse functions.
2009-06-22 21:43:49 +00:00
Przemyslaw Czerpak
f0dc881f78 2009-06-22 23:13 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/source/compiler/hbcmplib.c
    ! fixed reverted order of parameters passed in arrays and missing last
      parameter
2009-06-22 21:13:16 +00:00
Przemyslaw Czerpak
52759504b9 2009-06-22 21:30 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/source/rtl/lang.c
    % simplified HB_USERLANG() code

  * harbour/include/hbdefs.h
    * use inline functions for HB_PUT_PTR() and HB_GET_PTR() macros in
      GCC builds. It makes GCC builds alignment free and fixes the problem
      with broken strict aliasing rules.

  * harbour/include/hbwmain.c
    * casting
2009-06-22 19:30:27 +00:00
Viktor Szakats
b25f1d53c0 2009-06-22 17:06 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
* source/rtl/lang.c
  * source/rtl/isprint.c
  * contrib/hbwin/win_prn2.c
    ! Fixed most mingw/C++ warnings:
      warning: deprecated conversion from string constant to 'char*'
    * Added 'const' to hb_PrinterIsReady() string parameter.
    ; Please review me.
    ; TOFIX: These remain of this type of warning:
      ../../../../../include/hbwmain.c:78: warning: deprecated conversion from string constant to 'char*'
      ../../ctnet.c:182: warning: deprecated conversion from string constant to 'char*'
      ../../print.c:204: warning: deprecated conversion from string constant to 'char*'
      ../../print.c:205: warning: deprecated conversion from string constant to 'char*'
      ../../win_prn2.c:437: warning: deprecated conversion from string constant to 'CHAR*'
      ../../../maindllp.c:429: warning: deprecated conversion from string constant to 'char*'
      ../../../maindllp.c:454: warning: deprecated conversion from string constant to 'char*'

  * contrib/gtwvg/wincallb.c
    ! Added cast to avoid error in mingw/C++ mode.
      Thanks Pritpal, it worked.

  * contrib/gtwvg/Makefile
    + Reenabled for mingw/C++
2009-06-22 15:07:07 +00:00
Viktor Szakats
4e153b2773 2009-06-21 20:54 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
* INSTALL
    + Added iccia64 build example.

  * source/vm/fm.c
    + Added C++ new/delete operator override to hb_xgrab()/hb_xfree().
      Thanks to Xavi.
      Please make any required correction, I didn't do tests with it.

  * utils/hbmk2/hbmk2.prg
    + Added support for linux/icc compiler. (untested)
    ; Tested win/icc support (static exe, shared exe, lib, dll).
      It worked, except that in shared mode it will display this,
      when the MinGW built .dll is used (instead of its own):
      Unrecoverable error 9012: Can't locate the starting procedure: 'MAIN'
2009-06-21 18:56:11 +00:00
Viktor Szakats
1192b4ac32 2009-06-21 12:55 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
* source/rtl/binnumx.c
  * contrib/xpp/binnumx.c
    + Added F2BIN() and BIN2F() Xbase++ functions.
      Code is the same as FTOC() and CTOF() in hbct.
2009-06-21 10:55:59 +00:00
Viktor Szakats
b9bbb2161f 2009-06-21 08:26 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
* source/vm/extend.c
    * Minor formatting.

  * source/rtl/mlcfunc.c
    ! Fixed warning in HB_C52_STRICT mode.

  * contrib/hbxbp/xbp.ch
    ! Fixed HB_OUTDEBUG() macro to work also in codeblocks when
      not in debug mode, and also to better handle the case when
      parameter is a variable.

  * ChangeLog
    + Added incompat NOTE to hb_par*/hb_stor*() change.
2009-06-21 06:30:30 +00:00
Przemyslaw Czerpak
73fe9dd917 2009-06-21 07:05 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/source/rtl/mlcfunc.c
    ! fixed missing ulLen declaration in if() branch
    % restored a little bit optimized Viktor's code - now it's safe to
      call hb_par*() expecting default value on wrong type even if given
      parameter is array
2009-06-21 05:05:20 +00:00
Przemyslaw Czerpak
68c738b9ba 2009-06-20 22:24 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/include/hbapi.h
  * harbour/source/vm/extend.c
    * renamed existing hb_par*() and hb_stor*() functions which supports
      variable number of parameters (...) into hb_parv*() and hb_storv*()
    * added new hb_par*() and hb_stor*() functions which use strict number
      of parameters. New hb_par*() functions do not make hidden conversion
      between types, f.e. hb_parl() returns 1 only for logical parameters
      which contain .T.

  * harbour/include/extend.api
    * map Clipper _par*() functions to hb_parv*()
    * map Clipper _stor*() functions to hb_storv*()

  * harbour/source/vm/dynsym.c
  * harbour/source/vm/hvm.c
  * harbour/source/vm/maindllp.c
  * harbour/source/vm/thread.c
  * harbour/source/vm/classes.c
  * harbour/source/rtl/cdpapi.c
  * harbour/source/rtl/mlcfunc.c
  * harbour/contrib/hbnf/dispc.c
  * harbour/contrib/hbnf/mouse.c
  * harbour/contrib/hbnf/getenvrn.c
  * harbour/contrib/hbhpdf/harupdf.c
  * harbour/contrib/gtwvg/wvgcuig.c
  * harbour/contrib/gtwvg/wvgwin.c
  * harbour/contrib/gtwvg/wvgutils.c
  * harbour/contrib/gtwvg/wvgcore.c
  * harbour/contrib/gtwvg/wvgwing.c
  * harbour/contrib/rddads/adsfunc.c
  * harbour/contrib/rddads/ads1.c
  * harbour/contrib/rddads/adsmgmnt.c
  * harbour/contrib/hbmisc/hb_f.c
  * harbour/contrib/hbwin/wapi_commctrl.c
    * replaced hb_par*() and hb_stor*() calls used with additional parameters
      by hb_parv*() and hb_storv*()
    TODO: update examples/hbwhat/*.c files

  * harbour/examples/uhttpd2/socket.c
  * harbour/examples/httpsrv/socket.c
    * changed hb_parni() to hb_parnidef()

  * harbour/source/vm/itemapi.c
    * removed some conversion which are not necessary for CA-Cl*pper
      compatibility

  * harbour/source/macro/macrolex.c
    * replaced HB_LEX_IS*() macros by by HB_IS*() ones
2009-06-20 20:25:26 +00:00
Viktor Szakats
fe9ab29884 2009-06-20 20:31 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
* source/vm/fm.c
    ! Renamed s_fInited to s_fInitedFM to avoid collision 
      with similarly named variable in estack.c when using
      HB_FM_STATISTICS and HB_HVM_ALL at the same time.
      Thanks Xavi for the find.
2009-06-20 18:31:57 +00:00
Viktor Szakats
6e495cb274 2009-06-20 20:10 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
* source/rtl/mlcfunc.c
    ! Fixed after prev optimization. (some optimizations 
      were kept, but with no change of functionality)
2009-06-20 18:11:03 +00:00
Viktor Szakats
60243735d5 2009-06-20 04:22 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
* source/rtl/mlcfunc.c
    % Minor optimization to EOL parameter handling.
      Please review.

  * source/rtl/dates.c
    ! Fixed warning with cast.

  * contrib/hbwin/win_misc.c
    + Enabled WIN_LOWORD(), WIN_HIWORD(). Added casts.

  - examples/wxh
    - Deleted empty dir. Will readd when moving wxh lib here.
2009-06-20 02:28:33 +00:00
Przemyslaw Czerpak
e1709d1fff 2009-06-20 03:47 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/source/vm/runner.c
    ! fixed possible static function overloading
2009-06-20 01:47:28 +00:00
Przemyslaw Czerpak
7abda8c763 2009-06-19 18:38 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/include/hbhrb.ch
  * harbour/source/vm/runner.c
    + added support for HB_HRB_BIND_LAZY flag.
      Lazy binding with public external functions allows to load .hrb files
      with unresolved or cross function references.
2009-06-19 16:38:54 +00:00
April White
5d12fe83f7 2009-06-19 10:16 UTC+0600 April White (april users.sourceforge.net)
* ChangeLog
   * contrib/hbbtree/doc/hb_btree.txt
   * contrib/hbbtree/hb_btree.c
   * contrib/hbbtree/hb_btree.ch
   * contrib/hbbtree/hb_btree.h
   * contrib/hbbtree/tbtree.prg
   * contrib/hbbtree/tests/ctest.c
   * contrib/hbbtree/tests/test.prg
   * contrib/hbbtree/tests/ttest.prg
   * doc/en-EN/set.txt
   * source/compiler/hbusage.c
   * source/rtl/setkey.c
   * tests/setkeys.prg
      * changed my email address
2009-06-19 14:26:20 +00:00
Przemyslaw Czerpak
0b660d8efd 2009-06-19 14:09 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
- harbour/include/hbhrb.ch
  + harbour/include/hbhrb.ch
    * replaced hbhrb.ch with slightly different version and set SVN
      attributes:
         svn:keywords : Author Date Id Revision
         svn:eol-style : native
      Now optional HB_HRBLOAD()/HB_HRBRUN() parameter is bitfield and
      the following predefined values can be used to control function
      bindings in loaded .hrb files:
         HB_HRB_BIND_DEFAULT      - do not overwrite any functions, ignore
                                    public HRB functions if functions with
                                    the same names already exist in HVM
         HB_HRB_BIND_LOCAL        - do not overwrite any functions
                                    but keep local references, so
                                    if module has public function FOO and
                                    this function exists also in HVM
                                    then the function in HRB is converted
                                    to STATIC one
         HB_HRB_BIND_OVERLOAD     - overload all existing public functions
         HB_HRB_BIND_FORCELOCAL   - covert all public functions to
                                    STATIC ones
      Other HB_HRB_* defines will be added in the future

  * harbour/include/hbvm.h
    * declared hb_vmSetFunction() as internal function

  * harbour/source/vm/hvm.c
    * modified hb_vmSetFunction() to update references also in unused
      modules.

  * harbour/source/vm/runner.c
    * removed CanUnload - it was not fully functional. Modules which
      overloads public functions cen be unload just like any other ones
      but unloading does not restore references to overloaded functions.
      Now such references are simply lost and this should be fixed in the
      future.
    + added support for HB_HRB_BIND_FORCELOCAL
    ! fixed <nOptions> parameter decoding in HB_HRBLOAD() to strictly
      follow declaration:
         HB_HRBLOAD( [ <nOptions>, ] <cHrb> [, <xparams,...> ] )
    ! fixed init procedures parameters in HB_HRBLOAD() to no pass <nOptions>
    + added support for <nOptions> to HB_HRBRUN()
         HB_HRBRUN( [ <nOptions>, ] <cHrb> [, <xparams,...> ] ) -> <retVal>
    * changed HB_HRBRUN() return value - now it's the result of executed
      function instead of .T.
    ! fixed public symbol updating to keep valid references to HB_FS_LOCAL
      function
    ! fixed possible memory leak
    % added const to some char * declarations

   TOFIX/TODO: add support for restoring overloaded functions when module
               is unloaded.
2009-06-19 12:09:26 +00:00
Viktor Szakats
1c20b41cc2 2009-06-19 11:32 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
* tests/testhrb.prg
  * tests/Makefile
  * include/Makefile
  * include/hbhrb.ch
  * source/vm/runner.c
    ! Added new files to Makefiles.
    ! Fixed to use hbhrb.ch from .c rather than replicating #defines.
      (also fixed comments to be ANSI)
    ! Added self protection to .ch.
    ! Made .hrb file lowercase in testhrb.prg
    ! Deleted double license header from .ch.

  * utils/hbmk2/hbmk2.prg
    + Added logic to move embedded compilers under a common subdir.
      To stay compatible with 2.0.0beta1 release I didn't yet set
      this, but it will be for final release.
      Probably 'comp', or maybe 'opt'. Sorry for asking for opininons,
      but they're welcome anyway.
2009-06-19 09:33:42 +00:00
Jean-Francois Lefebvre
d7a22185d5 2009-06-19 10:56 UTC+0200 Jean lefebvre (jfl at mafact dot com)
* vm/runner.c
    FIXED ;
    ../../runner.c:413: error: '_HB_SYMB' undeclared (first use in this function)
  + include/hbhrb.ch:  HB_HRBLOAD() mode #define new file
  + tests/testhrb.prg: test program fro new params 
  + tests/exthrb.prg:  test program to be compiled as .HRB using /gh option
2009-06-19 09:00:16 +00:00
Viktor Szakats
ce275c340e 2009-06-19 00:36 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
* source/vm/runner.c
    * Formatted.
    ; TOFIX:
        ../../runner.c: In function 'hb_hrbLoad':
        ../../runner.c:413: error: '_HB_SYMB' undeclared (first use in this function)
        ../../runner.c:413: error: (Each undeclared identifier is reported only once
        ../../runner.c:413: error: for each function it appears in.)
2009-06-18 22:36:27 +00:00
Jean-Francois Lefebvre
0c36fe41df 2009-06-18 21:18 UTC+0200 Jean lefebvre (jfl at mafact dot com) 2009-06-18 19:25:56 +00:00
April White
1050cd8fb2 2009-06-18 16:14 UTC+0600 April White (april@users.sourceforge.net)
* source/rtl/mlcfunc.c
    * detect if parameter is a string vs array
    * allocate memory for the array before resetting the counter
2009-06-18 14:43:17 +00:00
Viktor Szakats
a48321cf39 2009-06-18 00:52 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
* include/hbextern.ch
  * source/rtl/mousehb.c
  * source/rdd/rddinfo.c
  * source/rdd/dbdrop.c
  * source/rdd/dbexists.c
  * source/rdd/fieldhb.c
    * Rest of similar to STOD() status functions also 
      protected with ! HB_C52_STRICT.
2009-06-17 22:52:52 +00:00
Viktor Szakats
e601da299c reapplied changes 2009-06-17 22:48:46 +00:00
Viktor Szakats
0f98f116b8 restored with history 2009-06-17 22:48:03 +00:00
Viktor Szakats
c0bd6c42f4 temp delete 2009-06-17 22:46:52 +00:00
Viktor Szakats
41b7534251 2009-06-18 00:33 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
* include/hbextern.ch
  * source/rtl/datesx.c
    * STOD() function not protected by HB_COMPAT_XPP anymore.
      Instead it's turned off only in HB_C52_STRICT mode.

  + contrib/xpp/xppextrn.ch
    + Added.

  * contrib/hbwin/win_misc.c
    + Added WIN_HIWORD() and WIN_LOWORD() functions (from GTWVG).
      But commented because of colliding names.
2009-06-17 22:34:21 +00:00
Viktor Szakats
fb75f441ac 2009-06-17 23:07 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
* contrib/hbblat/blatcls.prg
    ! Added type checks for all params.
    % File() -> hb_FileExists()
    * Minor formatting.

  * source/rtl/browdbx.prg
    * Minor formatting in comment.

  * contrib/xpp/Makefile
  + contrib/xpp/dbcmdx.c
  + contrib/xpp/tgetx.prg
  + contrib/xpp/tbcolumx.prg
  + contrib/xpp/dbjoinx.prg
  + contrib/xpp/idlex.c
  + contrib/xpp/typefilx.prg
  + contrib/xpp/philesx.c
  + contrib/xpp/browdbx.prg
  + contrib/xpp/dbdetacx.c
  + contrib/xpp/dblistx.prg
  + contrib/xpp/binnumx.c
  + contrib/xpp/mousex.c
  + contrib/xpp/dbupdatx.prg
  + contrib/xpp/dbfuncsx.prg
  + contrib/xpp/oemansix.c
  + contrib/xpp/tbrowsex.prg
  + contrib/xpp/thfuncx.prg
  + contrib/xpp/dbtotalx.prg
  + contrib/xpp/datesx.c
  + contrib/xpp/tthreadx.prg
  + contrib/xpp/dbstruxx.prg
  + contrib/xpp/dbsortx.prg
    + Made a copy of all Xbase++ related Harbour core components
      into this separate lib. As we're starting to have a larger
      and larger amount of Xbase++ functions, to not pollute core,
      to have a clear separation of components and to allow
      toggling Xbase++ compatibility at user level (instead of
      Harbour level), it's a good time to make this long planned
      first step. This means that now Harbour can be built with
      HB_COMPAT_XPP turned off, yet - with this lib - all Xbase++
      feature can still be used, and this is the recommended way.
      The name of the lib is tentative and in the future it may
      even be moved or renamed. 2.0.0 final version will still
      have HB_COMPAT_XPP enabled in core.
    ; NOTE: Please add new Xbase++ compatibility functions to this lib.
    ; TOFIX: xpp_TBrowse() needs some internal parts from tbrowse.prg,
             so current solution isn't finished.
    ; TOFIX: A few Xbase++ compatibility features are embedded
             into core source. These should be resolved by other
             means. (f.e. compiler time/runtime/hbmk2 switches, but
             for  that we need to move back this lib inside core)
    ; TODO: Decide about the status of STOD() function, which is
            currently an XPP compatibility function, not in Harbour
            namespace, yet it's widely used with same functionality.
2009-06-17 21:13:27 +00:00
Przemyslaw Czerpak
d364d762d9 2009-06-17 14:06 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/source/compiler/hbmain.c
    * extended -n2 to work also with code without starup procedure but with
      local variables

  * harbour/utils/hbrun/hbrun.prg
    + added -n2 to compiler parameters when .prg file is compiled and
      executed. It allows to use with hbrun .prg files with and without
      startup procedure
2009-06-17 11:56:30 +00:00
Przemyslaw Czerpak
11dc6a48a4 2009-06-17 13:17 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/source/rtl/hbinet.c
    ! fixed bad typo introduced in last days probably during some code
      formatting which broke HB_INETRECVLINE() and some other functions
2009-06-17 11:07:49 +00:00
Przemyslaw Czerpak
cbe41c950b 2009-06-17 13:07 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/include/hbapierr.h
    * added HB_EXPORT attribute to hb_err*() public functions

  * harbour/source/rdd/wacore.c
    * minor formatting
2009-06-17 10:57:19 +00:00
Przemyslaw Czerpak
20c62d1431 2009-06-16 16:09 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/include/hbapirdd.h
  * harbour/source/rdd/wafunc.c
    + added HB_ERRCODE hb_rddEvalWA( PHB_ITEM pBlock )

  * harbour/source/rdd/dbcmd.c
    + added HB_WAEVAL( <pBlock> ) function which evaluates given
      <pBlock> in each used worakrea. The workarea iteration is
      interrupted if <pBlock> returns .F.

  * harbour/source/rdd/wafunc.c
    * restore workarea number in hb_rddCloseAllParentRelations()

  * harbour/source/rdd/workarea.c
    * added small protection against releasing WA by user codeblock in
      EVALBLOCK() method

  * harbour/source/rdd/wacore.c
    * added small protection against releasing WA by user code during
      area iteration
2009-06-16 13:59:12 +00:00
Viktor Szakats
0a25e75b8f 2009-06-16 15:03 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
* utils/hbmk2/hbmk2.prg
    + Added preliminary support for autosetup for several more
      compilers: win/watcom, win/pocc, win/pocc64, wce/poccarm,
      dos/djgpp, dos/watcom.
      Only these were tested: dos/djgpp, win/watcom, win/pocc.
      This means it's now possible to "bundle" DJGPP, watcom or
      pocc _compiler tools_ with Harbour and hbmk2 will be able
      to detect them, or user can choose between them using
      -arch/-comp switches, then hbmk2 will just be able to use
      them "as is", without the need to change anything on the
      environment. zero-conf usage in essence, just like we
      already had for mingw family.
    ; NOTE: Before the release I'll rethink placement of these 
            tools inside the Harbour directory tree. Currently 
            they are detected in the Harbour root dir, but with 
            multiple compilers this is not ideal.

  * source/vm/thread.c
    ! Fixed compile error after 2009-06-16 08:55 UTC+0200.
2009-06-16 13:05:23 +00:00
Przemyslaw Czerpak
01162d9200 2009-06-16 13:37 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/contrib/hbct/token1.c
    % use explicit constant value instead of HB_MKULONG() macro

  * harbour/source/compiler/cmdcheck.c
    ! fixed few typos in bit manipulation used to calculate result in
      PackDateTime() function by rewriting it to use bitfield union.
2009-06-16 11:27:55 +00:00
Viktor Szakats
d234bc24f5 2009-06-16 08:55 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
* source/vm/thread.c
    * HB_MUTEXQUEUEINFO() returning logical var.
    ! HB_MUTEXQUEUEINFO() resetting ref params with 0 in case of error.
2009-06-16 06:55:21 +00:00
Viktor Szakats
4dbccf8ead 2009-06-16 08:50 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
* include/hbextern.ch
  * source/vm/thread.c
  * examples/uhttpd2/umain.prg
    * Replaced HB_MUTEXWAITERSCOUNT() with 
      HB_MUTEXQUEUEINFO( hMutex, [ @nWaitersCount ], [ @nQueueLength ] )
    ; Please review.
2009-06-16 06:51:12 +00:00
Viktor Szakats
c73804dc7a 2009-06-15 20:44 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
* include/hbextern.ch
  * source/vm/thread.c
    + Added HB_MUTEXWAITERSCOUNT() to core.
      (slightly rewritten using local functions)

  - examples/uhttpd2/umutex.c
    - No longer needed.
2009-06-15 18:45:17 +00:00
Przemyslaw Czerpak
69941dbb06 2009-06-15 18:39 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/source/rtl/fstemp.c
  * harbour/source/rtl/filesys.c
    * convert '/' to '\' in hb_fTempCreate*()/CurDir() functions in
      DJGPP builds
2009-06-15 16:29:58 +00:00
Przemyslaw Czerpak
7bf93bff46 2009-06-15 15:19 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/source/vm/mainstd.c
    * forced '\' in argv[0] instead of '/' in DJGPP builds
    * disabled using SHELL envvar and forced COMSPEC in system() function
      in DJGPP builds (it effects __run() and hb_run() .prg functions)
2009-06-15 13:09:53 +00:00
Przemyslaw Czerpak
19cc018359 2009-06-14 21:50 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/include/hbapirdd.h
  * harbour/include/hbusrrdd.ch
  * harbour/contrib/rddsql/sddodbc/odbcdd.c
  * harbour/contrib/rddads/ads1.c
  * harbour/source/rdd/workarea.c
  * harbour/source/rdd/sdf1.c
  * harbour/source/rdd/delim1.c
  * harbour/source/rdd/dbf1.c
    * changed HB_FT_DAYTIME to HB_FT_TIMESTAMP
2009-06-14 19:40:43 +00:00