Commit Graph

2112 Commits

Author SHA1 Message Date
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
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
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
Viktor Szakats
a3805daf7e 2009-06-16 18:39 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* include/hbextern.ch
    + Added HB_WAEVAL().

  * contrib/hbwin/win_prn1.c
    - Direct procedural Windows printing interface will now only
      accept real pointers.
    * WIN_CREATEDC() will now return null pointer instead of NIL.
      The safest way to check for success is: 'IF ! Empty( win_CreateDC() )'
    ; With this, only some DLL related functions remain which
      still use numeric pointers
2009-06-16 16:39:43 +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
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
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
Przemyslaw Czerpak
5d2a6931be 2009-06-14 14:49 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/contrib/gtwvg/wvgwin.c
    ! fixed wrongly used & operator

  * harbour/source/rtl/hbproces.c
    * added TODO warning in OpenWatcom Linux builds

  * harbour/make_gnu.sh
    ! fixed test_param() function definition - it has to be defined it's
      before use

  * harbour/include/hbexpra.c
  * harbour/include/hbexprb.c
  * harbour/source/common/expropt1.c
  * harbour/source/rtl/round.c
    * removed unnecessary <math.h>

  * harbour/source/vm/hvm.c
  * harbour/source/common/expropt2.c
  * harbour/contrib/hbct/ctmath.h
  * harbour/contrib/hbclipsm/num.c
  * harbour/contrib/hbclipsm/numfloor.c
  * harbour/contrib/hbclipsm/numceil.c
    * use "hbmath.h" instead of <math.h> to avoid possible desynchronization
      between used math libraries and header files

  * harbour/source/pp/Makefile
    ! fixed real DOS compilation - replaced Windows only hack by wildcard
      function usage

  * harbour/config/dos/dir.cf
    * removed intermediate sh call from executed commands

  * harbour/source/vm/Makefile
    * disabled HB_HVM_ALL in all Watcom builds - it works but the compilation
      time is very huge so user who wants to use it should set envvar
      HB_HVM_ALL=yes
    * enabled HB_HVM_ALL for DJGPP builds
2009-06-14 12:40:11 +00:00
Viktor Szakats
8cff1ae469 2009-06-14 10:37 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
* include/hbextern.ch
  * source/vm/hashfunc.c
    + Added HB_HGETDEF( <hHash>, <xKey>[, <xDefault> ] ) -> <value>
      This function will return <xDefault> when <xKey> isn't 
      found in the hash table. If <xDefault> isn't passed, it 
      will return NIL.
2009-06-14 08:38:37 +00:00
Viktor Szakats
e4ddd5f914 2009-06-13 23:51 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
* contrib/hbxbp/hbxbp.hbc
    + Added gtgui as default GT on win/wce systems.

  * include/extend.api
  * include/hbsetup.ch
  * include/hbapi.h
    + Added new HB_LEGACY_LEVEL3 macro to wrap legacy
      constructs to be deprecated in the next major release.
      Currently legacy IS*() parameter type checking macros
      are marked as such, ones present in CA-Cl*pper retained
      in extend.api even when this macro off.

    ; NOTE: It's recommended for 3rd party developers to
            start using new HB_IS*() macros. They work
            the same as Clipper compatible IS*() macros,
            but got a HB_ prefix: ISNUM( 1 ) -> HB_ISNUM( 1 )
            (not to be confused with HB_IS_*() macros which
            accept a PHB_ITEM)
            Here's a little batch which helps this process:
            ---
            gsar -o -s:x20ISNUM(       -r:x20HB_ISNUM(       *.c *.cpp
            gsar -o -s:x20ISCHAR(      -r:x20HB_ISCHAR(      *.c *.cpp
            gsar -o -s:x20ISLOG(       -r:x20HB_ISLOG(       *.c *.cpp
            gsar -o -s:x20ISARRAY(     -r:x20HB_ISARRAY(     *.c *.cpp
            gsar -o -s:x20ISBYREF(     -r:x20HB_ISBYREF(     *.c *.cpp
            gsar -o -s:x20ISDATE(      -r:x20HB_ISDATE(      *.c *.cpp
            gsar -o -s:x20ISDATETIME(  -r:x20HB_ISDATETIME(  *.c *.cpp
            gsar -o -s:x20ISNIL(       -r:x20HB_ISNIL(       *.c *.cpp
            gsar -o -s:x20ISTIMESTAMP( -r:x20HB_ISTIMESTAMP( *.c *.cpp
            gsar -o -s:x20ISBLOCK(     -r:x20HB_ISBLOCK(     *.c *.cpp
            gsar -o -s:x20ISPOINTER(   -r:x20HB_ISPOINTER(   *.c *.cpp
            gsar -o -s:x20ISSYMBOL(    -r:x20HB_ISSYMBOL(    *.c *.cpp
            gsar -o -s:x20ISOBJECT(    -r:x20HB_ISOBJECT(    *.c *.cpp
            gsar -o -s:x20ISHASH(      -r:x20HB_ISHASH(      *.c *.cpp
            gsar -o -s!ISNUM(          -r!HB_ISNUM(          *.c *.cpp
            gsar -o -s!ISCHAR(         -r!HB_ISCHAR(         *.c *.cpp
            gsar -o -s!ISLOG(          -r!HB_ISLOG(          *.c *.cpp
            gsar -o -s!ISARRAY(        -r!HB_ISARRAY(        *.c *.cpp
            gsar -o -s!ISBYREF(        -r!HB_ISBYREF(        *.c *.cpp
            gsar -o -s!ISDATE(         -r!HB_ISDATE(         *.c *.cpp
            gsar -o -s!ISDATETIME(     -r!HB_ISDATETIME(     *.c *.cpp
            gsar -o -s!ISNIL(          -r!HB_ISNIL(          *.c *.cpp
            gsar -o -s!ISTIMESTAMP(    -r!HB_ISTIMESTAMP(    *.c *.cpp
            gsar -o -s!ISBLOCK(        -r!HB_ISBLOCK(        *.c *.cpp
            gsar -o -s!ISPOINTER(      -r!HB_ISPOINTER(      *.c *.cpp
            gsar -o -s!ISSYMBOL(       -r!HB_ISSYMBOL(       *.c *.cpp
            gsar -o -s!ISOBJECT(       -r!HB_ISOBJECT(       *.c *.cpp
            gsar -o -s!ISHASH(         -r!HB_ISHASH(         *.c *.cpp
            ---

  * source/rtl/hbinet.c
    * Formatting.
    % Minor optimizations.

  * source/debug/dbgentry.c
  * source/rdd/dbcmd.c
  * source/rdd/dbcmd53.c
  * source/rdd/dbcmdx.c
  * source/rdd/dbdetach.c
  * source/rdd/dbsql.c
  * source/rdd/hbsix/sxfname.c
  * source/rdd/hbsix/sxord.c
  * source/rdd/hbsix/sxtable.c
  * source/rdd/usrrdd/usrrdd.c
  * source/rtl/at.c
  * source/rtl/box.c
  * source/rtl/cdpapi.c
  * source/rtl/chrasc.c
  * source/rtl/colorind.c
  * source/rtl/console.c
  * source/rtl/copyfile.c
  * source/rtl/dateshb.c
  * source/rtl/dirdrive.c
  * source/rtl/diskspac.c
  * source/rtl/disksphb.c
  * source/rtl/errapi.c
  * source/rtl/filesys.c
  * source/rtl/fscopy.c
  * source/rtl/fssize.c
  * source/rtl/fstemp.c
  * source/rtl/gete.c
  * source/rtl/gtfunc.c
  * source/rtl/gx.c
  * source/rtl/hbbit.c
  * source/rtl/hbgtcore.c
  * source/rtl/hbhex.c
  * source/rtl/hbi18n1.c
  * source/rtl/hbinet.c
  * source/rtl/hbprocfn.c
  * source/rtl/hbrandom.c
  * source/rtl/hbregex.c
  * source/rtl/hbstrsh.c
  * source/rtl/hbtoken.c
  * source/rtl/hbzlib.c
  * source/rtl/hbzlibgz.c
  * source/rtl/inkey.c
  * source/rtl/itemseri.c
  * source/rtl/left.c
  * source/rtl/math.c
  * source/rtl/maxrow.c
  * source/rtl/mlcfunc.c
  * source/rtl/mouse53.c
  * source/rtl/mousex.c
  * source/rtl/mtran.c
  * source/rtl/natmsg.c
  * source/rtl/padc.c
  * source/rtl/padl.c
  * source/rtl/padr.c
  * source/rtl/philes.c
  * source/rtl/philes53.c
  * source/rtl/rat.c
  * source/rtl/replic.c
  * source/rtl/right.c
  * source/rtl/round.c
  * source/rtl/run.c
  * source/rtl/saverest.c
  * source/rtl/scroll.c
  * source/rtl/setcolor.c
  * source/rtl/setcurs.c
  * source/rtl/setpos.c
  * source/rtl/shadow.c
  * source/rtl/strc.c
  * source/rtl/strmatch.c
  * source/rtl/strpeek.c
  * source/rtl/strtoexp.c
  * source/rtl/strtran.c
  * source/rtl/stuff.c
  * source/rtl/substr.c
  * source/rtl/tone.c
  * source/rtl/trace.c
  * source/rtl/transfrm.c
  * source/rtl/valtype.c
  * source/rtl/word.c
  * source/vm/arrayshb.c
  * source/vm/asort.c
  * source/vm/classes.c
  * source/vm/cmdarg.c
  * source/vm/eval.c
  * source/vm/hashfunc.c
  * source/vm/hvm.c
  * source/vm/memvars.c
  * source/vm/proc.c
  * source/vm/thread.c
    * IS*() -> HB_IS*() macro rename.
      (pass 1 - sf.net SVN works badly today, so I've split 
      the commit to raise the chances of a successfully 
      finished one)
2009-06-13 22:44:34 +00:00
Viktor Szakats
1abaae6c84 2009-06-09 15:59 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
* harbour-win-spec
  * harbour-wce-spec
  * mpkg_win.bat
  * include/hbver.h
  * harbour.spec
    * Changed version to 2.0.0beta1 (from 2.0.0dev)
    ; NOTE: Everyone is encouraged to create binary releases
            for various platforms and try this new with real apps.
            We can even upload these binary releases to 
            sf.net.
2009-06-09 14:01:05 +00:00
Viktor Szakats
2b5d2600aa 2009-06-06 16:07 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
* INSTALL
    * Made clear that GNU Make installation isn't needed for mingw
      targets.

  * include/hbextern.ch
    + Added HB_EXECMSG().

  * contrib/xhb/tests/xhb.hbc
    + Added hbct, hbtip and hbwin (on Windows) to emulate xhb, which
      has these libs as part of the core.

  * utils/hbmk2/hbmk2.prg
    + Environment variables can not be used as filters.
      If an envvar with the name of the filter exists and it's
      value isn't "0" or "no", it's considered a match.
    - Deleted -EHsc-/-EHsc/-EHs-c- switch variant from msvc C flag list.
      This was copied from Harbour Make files, and most probably they
      aren't necessary even there, especially since they are set
      inconsistently (differently) for depending on msvc compiler
      version and win/wce target. These flags deal with exception
      handling, so I doubt any core code (with the exception of hbqt)
      would need it.
    + Added some level of internal support for build modes
      (release, debug, fulldebug) and unicode/ascii selection. Added
      to TODO anyway, will continue with them in the future.
2009-06-06 14:07:51 +00:00
Przemyslaw Czerpak
6b88ee5fac 2009-06-06 14:31 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/include/hbvm.h
  * harbour/source/vm/hvm.c
    + added hb_vmProc() function - it's hb_vmDo() but without hack to send
      messages.
      TODO: remove from hb_vmDo() support for messages so it can replace
            new hb_vmProc() function or if we really need such mixed common
            execution function then replace in HVM calls to hb_vmDo() with
            hb_vmProc()

  * harbour/source/vm/classes.c
    * replaced hb_vmFunction() call by hb_vmDo()

  * harbour/source/vm/arrays.c
  * harbour/source/vm/thread.c
    ! cleaned hb_vmDo()/hb_vmSend() usage

  * harbour/source/vm/eval.c
    ! replaced hb_vmFunction() calls by hb_vmSend()
    + added .prg function hb_execMsg( <sFuncSym>, <object>, [<params,...>] )
      which executes <sFuncSym> with <object> set as QSELF() value.
      Mindaugas, you can use it in your HashObject to execute functions
      like pseudo messages.
2009-06-06 12:21:43 +00:00
Viktor Szakats
8fcec391a4 2009-06-05 23:05 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
+ config/mingw32-make.exe
    + Added GNU Make (Windows, 32-bit) executable (size: 173KB),
      this is the version recommended by INSTALL, found here:
      https://sourceforge.net/project/showfiles.php?group_id=2435&package_id=23918

  * make_gnu.bat
    * Modified to utilize above GNU Make binary for Harbour
      Windows/WinCE builds in order to make one thing less to
      worry about for users wishing to build from source.
      From this point the only two requirements for building
      Harbour are a C compiler and the source itself. Much less
      things to go/get wrong. If this works out good, we can
      remove a few instructions from INSTALL.
      If someone wants to override supplied version (not very
      good idea, but who knows) the supplied version has to be
      replaced by custom version.
      In case group thinks it's onorthodox or inappropriate
      (or outright illegal) to have such binaries stored in
      our repository, please shout, it's not yet late to undo
      this change.
      Also please test.

  * include/hbsetup.h
    + Added MSVS 2010 version information.

  * contrib/gtwvg/wvggui.c
    - Temporarily disabled whole file for MSVS 2010 due to lots
      of compilation errors, similar to the ones recently seen
      with letdb. (errors posted on the list)
2009-06-05 21:15:52 +00:00
Przemyslaw Czerpak
a7005290de 2009-06-05 17:04 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/include/hbdefs.h
    * cleanup in some declarations
2009-06-05 14:54:52 +00:00
Viktor Szakats
3915031ebb 2009-06-05 15:26 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
* utils/hbmk2/hbmk2.prg
    + In -rebuild mode now targets will be deleted by hbmk2
      before calling compilers to create them. This will resolve
      some potential errors when compiler tools get confused about
      an existing file with the same name but perhaps created with
      another compiler. It will also make sure no attempts will be
      made to create an incremental build. If target cannot be
      deleted, a warning message will be shown by hbmk2.

  * harbour-win-spec
  * harbour-wce-spec
  * harbour.spec
  * mpkg_win.bat
  * include/hbver.h
  * doc/whatsnew.txt
  * source/vm/maindllp.c
    * 1.1.0dev -> 2.0.0dev
    ; Preparation for next rc1.

  * INSTALL
    * Long lines reflowed.
2009-06-05 13:29:28 +00:00
Przemyslaw Czerpak
8e70525b66 2009-06-05 06:10 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/include/hbclass.ch
    + extended support for xbase++ compatible method declaration:
         [SYNC] METHOD <methodName1>[([<params>])] ;
                       [ , <methodNameN>[([<params>])] ]

  * harbour/include/hbthread.h
  * harbour/source/vm/thread.c
  * harbour/source/vm/classes.c
    + added alternative support for SYNC method which does not use
      sync mutexes. The old method is still present. I'll remove it
      when xbase++ users confirm that the new one exactly emulates
      xbase++ behavior.

  * harbour/source/vm/classes.c
  * harbour/source/rtl/tthreadx.prg
    * switch to alternative SYNC method implementation which seems to be
      xbase++ compatible - please test
    ! fixed missing thread interrupt in recent modification for ::setInterval
2009-06-05 04:01:40 +00:00
Viktor Szakats
0ea981e9c4 2009-06-03 12:20 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
* tests/langapi.prg
  * tests/rto_get.prg
  * tests/lnlenli2.prg
  * tests/fortest.prg
  * tests/memory.prg
  * tests/rto_tb.prg
  * tests/statinit.prg
  * tests/memfile.prg
  * tests/vec1.prg
  * tests/lnlenli1.prg
  * doc/cmdline.txt
  * doc/en-EN/hb_date.txt
  * doc/en-EN/terminal.txt
  * doc/en-EN/hb_apiln.txt
  * doc/en-EN/hb_compa.txt
  * doc/howtosvn.txt
  * INSTALL
  * bin/postinst.cmd
  * bin/postinst.bat
  * include/hbvmpub.h
  * include/vm.api
  * include/extend.api
  * include/item.api
  * include/hbapilng.h
  * include/rdd.api
  * include/gt.api
  * include/hbundoc.api
  * include/error.api
  * include/hbsetup.ch
  * include/hblang.ch
  * include/hbsetup.h
  * include/hbapigt.h
  * include/hbmemory.ch
  * include/clipdefs.h
  * include/hboo.ch
  * include/hbver.ch
  * include/hbzlib.h
  * include/fm.api
  * include/hbdate.h
  * include/extend.h
  * ChangeLog
  * harbour.spec
  * make_gnu.bat
  * make_gnu.sh
  * contrib/hbmysql/mysqlold.c
  * contrib/hbct/charmix.c
  * contrib/hbct/charevod.c
  * contrib/hbct/ctchksum.c
  * contrib/hbct/pos1.c
  * contrib/hbct/ctmisc.prg
  * contrib/hbct/ctcrypt.c
  * contrib/hbct/getinfo.prg
  * contrib/hbct/ctdummy.prg
  * contrib/hbct/readme.txt
  * contrib/hbodbc/odbcold.c
  * contrib/hbodbc/browodbc.prg
  * contrib/hbodbc/odbc.c
  * contrib/xhb/datesxhb.c
  * contrib/xhb/xhbat.c
  * contrib/xhb/xhbver.prg
  * contrib/xhb/xhbcomp.prg
  * contrib/hbziparc/hbziparc.prg
  * contrib/hbnf/iamidle.c
  * contrib/hbnf/fttext.c
  * contrib/hbnf/setkeys.c
  * contrib/hbnf/ftisprn.c
  * contrib/hbnf/setlastk.c
  * contrib/hbcurl/hbcurl.c
  * contrib/hbcurl/hbcurl.ch
  * contrib/hbcurl/hbcurlm.c
  * contrib/rddads/adsextrn.ch
  * contrib/rddads/adsmgmnt.c
  * contrib/hbmisc/strfmt.c
  * contrib/hbmisc/numtxthu.prg
  * contrib/hbmisc/doc/en/ht_str.txt
  * contrib/hbtip/utils.c
  * contrib/hbwin/win_reg.prg
  * contrib/hbwin/legacyc.c
  * contrib/hbwin/win_misc.c
  * contrib/hbwin/wapi_winbase.c
  * contrib/hbwin/wapi_winuser.c
  * contrib/hbwin/hbwinole.h
  * contrib/hbwin/hbwin.ch
  * contrib/hbwin/tests/testdll.prg
  * contrib/hbwin/tests/testole.prg
  * contrib/hbwin/win_regc.c
  * contrib/hbvpdf/hbvpsup.prg
  * contrib/hbssl/sslsess.c
  * contrib/hbssl/hbssl.h
  * contrib/hbssl/sslctx.c
  * contrib/hbssl/tests/test.prg
  * contrib/hbssl/ssl.c
  * contrib/hbssl/hbssl.ch
  * contrib/hbssl/sslciph.c
  * contrib/hbssl/sslrand.c
  * contrib/hbcrypt/tests/testsha2.prg
  * contrib/hbcrypt/hbsha2.c
  * contrib/hbcrypt/hbsha2hm.c
  * source/lang/msghuiso.c
  * source/lang/msghuwin.c
  * source/lang/msgro.c
  * source/lang/msghriso.c
  * source/lang/msghrwin.c
  * source/lang/msghe862.c
  * source/lang/msgcskam.c
  * source/lang/msgbgiso.c
  * source/lang/msgbgwin.c
  * source/lang/msgcs852.c
  * source/lang/msgfr.c
  * source/lang/msgis850.c
  * source/lang/msghu852.c
  * source/lang/msgbg866.c
  * source/lang/msghr852.c
  * source/lang/msghewin.c
  * source/lang/msghucwi.c
  * source/lang/msgcsiso.c
  * source/lang/msgcswin.c
  * source/vm/harbinit.prg
  * source/vm/asort.c
  * source/vm/itemapi.c
  * source/vm/hvm.c
  * source/vm/cmdarg.c
  * source/vm/arrays.c
  * source/vm/fm.c
  * source/vm/extrap.c
  * source/vm/proc.c
  * source/vm/memvars.c
  * source/vm/memvclip.c
  * source/vm/main.c
  * source/vm/eval.c
  * source/vm/extend.c
  * source/vm/set.c
  * source/vm/classes.c
  * source/common/hbver.c
  * source/common/hbfsapi.c
  * source/common/hbstr.c
  * source/common/hbdate.c
  * source/rtl/lennum.c
  * source/rtl/gtdos/gtdos.c
  * source/rtl/diskspac.c
  * source/rtl/setposbs.c
  * source/rtl/mousehb.c
  * source/rtl/console.c
  * source/rtl/fscopy.c
  * source/rtl/gtwin/gtwin.c
  * source/rtl/mousex.c
  * source/rtl/philes.c
  * source/rtl/adir.prg
  * source/rtl/oldclear.c
  * source/rtl/tbcolumn.prg
  * source/rtl/hbgtcore.c
  * source/rtl/fieldbl.prg
  * source/rtl/dirdrive.c
  * source/rtl/dateshb.c
  * source/rtl/philesx.c
  * source/rtl/fnsplit.c
  * source/rtl/box.c
  * source/rtl/datesx.c
  * source/rtl/filehb.c
  * source/rtl/hbfile.c
  * source/rtl/gtapiu.c
  * source/rtl/fstemp.c
  * source/rtl/accept.c
  * source/rtl/radiobhb.prg
  * source/rtl/tgethb.prg
  * source/rtl/oemansix.c
  * source/rtl/strmatch.c
  * source/rtl/readkey.prg
  * source/rtl/ampm.c
  * source/rtl/oemansi.c
  * source/rtl/xsavescr.c
  * source/rtl/gtstd/gtstd.c
  * source/rtl/gtsln/mousesln.c
  * source/rtl/disksphb.c
  * source/rtl/xhelp.c
  * source/rtl/getlist.prg
  * source/rtl/net.c
  * source/rtl/hbntos.c
  * source/rtl/tgetx.prg
  * source/rtl/samples.c
  * source/rtl/idlex.c
  * source/rtl/tget.prg
  * source/rtl/alert.prg
  * source/rtl/inkey.c
  * source/rtl/gete.c
  * source/rtl/readvar.prg
  * source/rtl/fkmax.c
  * source/rtl/strzero.c
  * source/rtl/typefilx.prg
  * source/rtl/langapi.c
  * source/rtl/word.c
  * source/rtl/gtcgi/gtcgi.c
  * source/rtl/fmhb.c
  * source/rtl/natmsgu.c
  * source/rtl/errapi.c
  * source/rtl/version.c
  * source/rtl/natmsg.c
  * source/rtl/mouse53.c
  * source/rtl/errint.c
  * source/rtl/fssize.c
  * source/rtl/errapiu.c
  * source/rtl/colorind.c
  * source/rtl/gt.c
  * source/rtl/gx.c
  * source/rtl/binnumx.c
  * source/rtl/mouseapi.c
  * source/rtl/soundex.c
  * source/rtl/memofile.c
  * source/rtl/errintlo.c
  * source/rtl/hbffind.c
  * source/rtl/gtapi.c
  * source/rtl/pad.c
  * source/rtl/hbstrsh.c
  * source/rtl/filesys.c
  * source/rtl/file.c
  * source/rtl/lang.c
  * source/rtl/val.c
  * source/rtl/isprint.c
  * source/rtl/tbrowse.prg
  * source/codepage/ucmacce.c
  * source/codepage/uc885910.c
  * source/codepage/ucmacice.c
  * source/codepage/uc885914.c
  * source/codepage/uc874.c
  * source/codepage/cpes850.c
  * source/codepage/uc1258.c
  * source/codepage/cphu852.c
  * source/codepage/cpsk852.c
  * source/codepage/uc424.c
  * source/codepage/ucmacrom.c
  * source/codepage/uc862.c
  * source/codepage/cpesisoc.c
  * source/codepage/cpbg866.c
  * source/codepage/cphu852s.c
  * source/codepage/uc8859_3.c
  * source/codepage/uc8859_7.c
  * source/codepage/ucmacgrk.c
  * source/codepage/uc037.c
  * source/codepage/cpesiso.c
  * source/codepage/uc885911.c
  * source/codepage/uc885915.c
  * source/codepage/uc875.c
  * source/codepage/uc1255.c
  * source/codepage/cphuisos.c
  * source/codepage/cpfriso.c
  * source/codepage/uc863.c
  * source/codepage/cpfrwin.c
  * source/codepage/uc1026.c
  * source/codepage/cpbgiso.c
  * source/codepage/uc8859_4.c
  * source/codepage/cpskkam.c
  * source/codepage/cpbgwin.c
  * source/codepage/uc8859_8.c
  * source/codepage/uc855.c
  * source/codepage/uc885916.c
  * source/codepage/cproiso.c
  * source/codepage/ucascii.c
  * source/codepage/cprowin.c
  * source/codepage/uc1256.c
  * source/codepage/ucatari.c
  * source/codepage/uc860.c
  * source/codepage/ucmaccyr.c
  * source/codepage/uc864.c
  * source/codepage/uc1006.c
  * source/codepage/cpsviso.c
  * source/codepage/uc8859_5.c
  * source/codepage/uc8859_9.c
  * source/codepage/cphuwins.c
  * source/codepage/ucnext.c
  * source/codepage/ucmactrk.c
  * source/codepage/uc885913.c
  * source/codepage/cphuiso.c
  * source/codepage/uc775.c
  * source/codepage/uc856.c
  * source/codepage/cpskiso.c
  * source/codepage/cphuwin.c
  * source/codepage/cpskwin.c
  * source/codepage/uc500.c
  * source/codepage/cpro852.c
  * source/codepage/uc861.c
  * source/codepage/uc865.c
  * source/codepage/cpitwin.c
  * source/codepage/uc869.c
  * source/codepage/uc8859_6.c
  * source/rdd/dbjoinx.prg
  * source/rdd/dbnubs.c
  * source/rdd/dblistx.prg
  * source/rdd/dbtotalx.prg
  * source/rdd/dbstruxx.prg
  * source/rdd/dbsortx.prg
  * source/rdd/dbupdatx.prg
  * source/rdd/dbfuncsx.prg
  * source/rdd/dbcmdhb.c
  * source/compiler/cmdcheck.c
  * source/compiler/hbusage.c
  * source/hbzlib/ChangeLog
  * utils/hbmk2/hbmk2.prg
  * utils/hbtest/rt_main.h
  * utils/hbtest/hbtest.prg
  * utils/hbtest/rt_main.ch
  * utils/hbtest/rt_trans.prg
  * utils/hbtest/rt_miscc.c
  * utils/hbtest/rt_math.prg
  * utils/hbtest/rt_hvm.prg
  * utils/hbtest/rt_hvma.prg
  * utils/hbtest/rt_misc.prg
  * utils/hbtest/make_c5x.bat
  * utils/hbtest/rt_init.ch
  * utils/hbtest/rt_str.prg
  * utils/hbtest/rt_stra.prg
  * utils/hbtest/rt_date.prg
  * utils/hbtest/rt_vars.ch
  * utils/hbtest/rt_array.prg
  * utils/hbtest/rt_file.prg
  * examples/pp/hbppcore.c
  * examples/superlib/hbsuper.prg
    * My e-mail address corrected to the same one using the
      same format in all files. Corrected mistyped ones.
2009-06-03 10:26:40 +00:00
Viktor Szakats
3cef50334b 2009-06-03 08:17 UTC+0200 Viktor Szakats (harbour.01 syenar hu)
* include/hbextern.ch
  * source/rtl/idlex.c
    * Renamed XPP compatible SLEEP() function to XPP_SLEEP() to
      avoid collision with FlagShip and CLIP implementations.

  * contrib/hbwin/wapi_winbase.c
    + Added WAPI_SLEEP() function as a wrapper to Windows Sleep()
      function.
2009-06-03 06:21:00 +00:00
Viktor Szakats
325e4bc4db 2009-06-02 21:03 UTC+0200 Viktor Szakats (harbour.01 syenar hu)
* include/hbextern.ch
  * source/rtl/Makefile
  + source/rtl/idlex.c
    + Added Xbase++ compatible SLEEP() function.
2009-06-02 19:04:05 +00:00
Przemyslaw Czerpak
e3ab3d0b8b 2009-06-02 20:53 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/include/hbsetup.h
    + added HB_RESTRICT macro which can be used in some declarations
      to reach better code optimization

  * harbour/include/hbclass.ch
    + added support for xbase++ compatible method declaration by:
         METHOD <methodName1> [ , <methodNameN> ]

  * harbour/source/rtl/tthreadx.prg
    * redirect parameters passed to ::new() method to ::init() method
      as emulation for class object new method
    + added basic support for ::setInterval in xbasee++ THREAD class

  * harbour/tests/speedtst.prg
    ! removed unused variable cDir
2009-06-02 18:44:21 +00:00
Viktor Szakats
6ef2986f43 2009-06-02 19:22 UTC+0200 Viktor Szakats (harbour.01 syenar hu)
* contrib/xhb/Makefile
  + contrib/xhb/bkgtsks.c
    + Added background tasks functions. My only current goal
      was to make it compile under Harbour, plus did some
      optimizations along the way.
      (borrowed from xhb, work of Francesco Saverio Giudice)
    ; TODO: Adapt to Harbour: MT mode, Set() replacement,
            attach it to VM possibly without modifying
            the VM itself.

  * source/rtl/mlcfunc.c
    + Reenabled for default builds the parameter extension
      in memo functions (now guarded with HB_C52_STRICT).
      This breaks our effort to not introduce such extensions,
      but since was no better idea I've made an exception,
      but I personally still don't like it and this practice
      stays forbidden.
      Talking about the last parameter of these functions:
      MEMOLINE(), MLCOUNT(), MLPOS(), MLCTOPOS(), MPOSTOLC()

  * source/codepage/cphr437.c
  * source/codepage/cphr852.c
  * source/codepage/cphrwin.c
    * Fixed wrongly ordered accented chars.
    * Fixed missing accented chars in Windows CP.
    ; Submitted by Vladimir Miholic on sf.net.

  * contrib/xhb/xhb.h
    + Added hb_seconds() compatibility macro.

  * tests/speedtst.prg
    + Added SET DATE ANSI and SET CENTURY ON.

  * tests/Makefile
  + tests/brwpos.prg
    + Added TBrowse() :rowPos test submitted by Xavi to the list.

  * utils/hbmk2/hbmk2.hbp
  * utils/hbrun/hbrun.hbp
    % Minor opt to prev.

  * tests/rto_tb.prg
    + Added hb_SToD() compatibility function to make it link
      with xhb.
    + Added forced define of HB_COMPAT_C53 in xhb mode, but 
      commented because it makes it RTE.

  * INSTALL
    ! Term changed to be consistent with rest of doc.

  * include/hbapi.h
    ! Typo in comment.
2009-06-02 17:24:02 +00:00
Petr Chornyj
eb23eb6eb1 2009-05-31 19:40 UTC+0200 Petr Chornyj (myorg63 at mail.ru)
* harbour/include/std.ch
    ! fixed typo of last commit
2009-05-31 16:42:46 +00:00
Petr Chornyj
02bfdcea52 2009-05-31 17:30 UTC+0200 Petr Chornyj (myorg63 at mail.ru)
* harbour/include/std.ch
    + added clause CODEPAGE for commands COPY, APPEND, SORT, TOTAL
   * harbour/source/rdd/dbdelim.prg
   * harbour/source/rdd/dbsdf.prg
    + added CODEPAGE support for __dbDelim, __dbSdf
2009-05-31 14:25:53 +00:00
Przemyslaw Czerpak
1ccc1e06f7 2009-05-27 05:34 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/harbour.spec
  * harbour/mpkg_tgz.sh
    + added hbformat

  * harbour/include/hbdefs.h
  * harbour/include/hbapi.h
  * harbour/source/common/hbarch.c
    * redefined macros used to store/retrieve integer and double values
      to/from byte arrays in little and big endian order.
      Now GCC uses inline functions which are hardly optimized by compiler
      giving on x86 machines the same code as direct casting (with the
      exception to march=i686 where putting double value forces strict
      alignment to avoid hidden CPU exception) but they respect strict
      aliasing rules. It also means that now GCC builds always respect
      strict alignment even if HB_STRICT_ALIGNMENT macro is not set.
2009-05-27 03:25:05 +00:00
Viktor Szakats
327a1b5b5a 2009-05-27 04:42 UTC+0200 Viktor Szakats (harbour.01 syenar hu)
* include/hbsetup.h
  * source/common/hbver.c
    + Moved CPU detection to core header. Introduced
      HB_CPU_* macros. Now they can be used to branch code
      by CPU type.

  * contrib/rddads/adsmgmnt.c
    + Added my copyright.

  * contrib/hbwin/wapi_commctrl.c
  * contrib/hbwin/wapi_winbase.c
  * contrib/hbwin/wapi_winuser.c
    ! Fixed remaining hb_parc() vs hb_parcx() usages.
    % WAPI_TABCTRL_CREATE() further simplified.
      Please review, it may be wrong.

  * utils/hbmk2/hbmk2.prg
    * Minor internal change.
2009-05-27 02:46:49 +00:00
Viktor Szakats
822c4cabcd 2009-05-27 03:16 UTC+0200 Viktor Szakats (harbour.01 syenar hu)
* include/hbver.ch
  * source/rtl/version.c
    + Added hb_Version( HB_VER_COMPILER_CPP ) which
      returns if the C compiler was used in C++ mode.
      Mainly added for HB_BUILDINFO() emulation, maybe it
      can be useful to set defaults in hbmk2, we will see.

  * contrib/xhb/Makefile
  + contrib/xhb/xhbver.prg
    + Added emulation of HB_BUILDINFO() xhb function.

  + contrib/xhb/xhbver.ch
    + Copied xhb's hbver.ch under this name.
      (borrowed from xhb, work of Andi Jahja)
2009-05-27 01:21:06 +00:00
Przemyslaw Czerpak
640e3a0149 2009-05-25 17:08 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/include/hbxvm.h
  * harbour/source/vm/hvm.c
  * harbour/source/compiler/gencc.c
    ! added missing RT error for wrong values used in SWITCH statement
      in code generated for -gc3 output
2009-05-25 14:59:41 +00:00
Przemyslaw Czerpak
519d866cba 2009-05-25 13:21 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/source/rtl/gtxwc/gtxwc.c
    ! fixed typo in HB_GTXVG_SQUARE shape initialization

  * harbour/include/hbrddnsx.h
  * harbour/include/hbrddntx.h
  * harbour/source/rdd/dbfntx/dbfntx1.c
  * harbour/source/rdd/dbfnsx/dbfnsx1.c
    * code cleanup - use predefined #define instead of hardcoded constant
      values

  * harbour/source/rtl/valtoexp.prg
    * added REQUEST __objSetClass

  * harbour/source/compiler/gencc.c
    ! fixed -gc3 code generated for switch statement - thanks to Marek and
      Xavi for information and self contain example
      TODO: add missing RT error in -gc3 output when wrong (non integer
            and non string value) is used in SWITCH statement
2009-05-25 11:12:39 +00:00
Przemyslaw Czerpak
d039f3bec7 2009-05-21 11:19 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/source/rtl/filebuf.c
    ! refuse to share file handles if they were open in different mode
      TODO: add support for keeping more then one handle for single file
            open and allow such combinations.

  * harbour/source/rtl/hbffind.c
    % optimized *nix version of hb_fsFind*()

  * harbour/utils/hbmk2/hbmk2.prg
    ! fixed compilation on non Windows platforms (unused variable warning)

  * harbour/include/hbset.h
  * harbour/source/vm/set.c
    + added new function hb_setGetPrinterHandle() which allows to open
      closed printer port
    ! do not force opening default port after SET PRINTER TO ""
      but delay the initialization untill other code does not call
      hb_setGetPrinterHandle()
    ! fixed filename returned by _SET_PRINTFILE, _SET_ALTFILE, _SET_EXTRAFILE
    ! fixed dpossible resource leaks whne _SET_*FILE is called recurisvely
      for user error block
    ! fixed _SET_*FILE settings to not accept files which cannot be open
      (just like in Clipper)

  * harbour/source/rtl/console.c
    * use hb_setGetPrinterHandle() to access printer handler
2009-05-21 09:10:41 +00:00
Przemyslaw Czerpak
d2c2fb58cf 2009-05-17 17:35 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/source/pp/ppcore.c
    + added new  predefined macro __TIMESTAMP__

  * harbour/source/vm/classes.c
    ! fixed compilation in MT mode and HB_HASH_MSG_ITEMS macro

  * harbour/source/compiler/compi18n.c
    * translate '\' in source code references in .pot files to '/'

  * harbour/contrib/rddsql/sddodbc/odbcdd.c
    * cleared non ANSI C initialization

  * harbour/include/hbmacro.h
  * harbour/source/vm/macro.c
  * harbour/include/hbexprb.c
    ! force memvar context to undeclared variables used with array index
      operator []. Clipper compatible behavior

  * harbour/contrib/hbwin/hbwinole.h
  * harbour/contrib/hbwin/olecore.c
    + added hb_oleItemPut()
2009-05-17 15:27:15 +00:00
Viktor Szakats
622639c23c 2009-05-15 09:21 UTC+0200 Viktor Szakats (harbour.01 syenar hu)
* utils/hbmk2/hbmk2.prg
    + Using HB_USERLANG() to detect language, so it now also
      works on Windows.
    + Added support for -lang= switch to override language.
    + Added support for HB_LANG envvar to override language.
      (this is the recommended method)

  * include/hbextern.ch
  * source/rtl/Makefile
  + source/rtl/lang.c
    + Added HB_USERLANG() function to retrieve ietf code of
      language set by user. Works also on Windows.

  * contrib/hbwin/win_misc.c
  * contrib/hbwin/wapi_winbase.c
  * contrib/hbwin/wapi_winuser.c
    * WAPI_*() functions moved to wapi_* files.
    + WAPI_GETPROCADDRESS() added. This is a pure wrapper to
      this Windows API.

  * contrib/hbwin/win_prn1.c
  * contrib/hbwin/win_prt.c
    % hb_parnl() -> hb_parni() where it was cast to int anyway.
2009-05-15 07:40:39 +00:00
Viktor Szakats
8959f99f45 2009-05-14 02:28 UTC+0200 Viktor Szakats (harbour.01 syenar hu)
* include/hbextern.ch
  * source/rtl/Makefile
  + source/rtl/tgethb.prg
  * source/rtl/tget.prg
    + HB_EXTENSION functionality (:hideInput() and :style()) moved
      from GET to a new derived class called HB_GET(). It means
      this functionality is available in default builds.
      Further extensions can be added to this class.
2009-05-14 00:31:36 +00:00
Viktor Szakats
196768b461 2009-05-14 02:00 UTC+0200 Viktor Szakats (harbour.01 syenar hu)
* include/hbextern.ch
  * contrib/xhb/hbcompat.ch
  * source/rtl/setkey.c
    + Added HB_SETKEY() which is similar to SETKEY() but contains
      3rd parameter extension. Now this functionality is available
      for default Harbour builds under this new function name.
    + Added cross mappings for xhb SETKEY().

  * source/rtl/setfunc.prg
    + F11/F12 key handling now protected with HB_C52_STRICT instead
      of HB_EXTENSION so it will available in default builds.
    - Other HB_EXTENSION protected feature deleted (allowing to
      assign non-string key sequences to F keys. This effect can
      easily be achieved with direct SETKEY() calls, so it wasn't
      an essential extension here.

  * source/rtl/hbffind.c
    + Internal HB_EXTENSION protected part enabled.
    - Deleted HB_EXTENSION dealing with Windows-specific attribute
      chars. Those needing this functionality can access it using
      C level API.

  * source/rtl/tpopup.prg
  * source/rtl/ttopbar.prg
    - Deleted minor (non Clipper-compatible) behaviour change
      in handling disabled menu items when HB_EXTENSION
      is enabled.

  ; Only remains few class extensions covered by HB_EXTENSION.
    Overall there is no reason anymore to use this macro.
    TODO: Solve these using inheritance.
2009-05-14 00:15:22 +00:00
Viktor Szakats
339c86f1bc 2009-05-12 16:10 UTC+0200 Viktor Szakats (harbour.01 syenar hu)
* utils/hbmk2/hbmk2.prg
    + Added -hbrun option which will run the target without trying to
      build it. If target is missing, the command will fail.
    + -run/-hbrun options will now run GUI target executable using 'start'
      command on Windows platforms so that hbmk2 will return and leave
      the app running.

  * include/hbextern.ch
    + Added HB_GZPUTC().

  * include/hbsetup.ch
    - Removed HB_EXTENSION from documented list of build modified macros.

  * source/common/hbverdsp.c
    - Deleted HB_EXTENSION dependent part.

  * source/rtl/mlcfunc.c
    - Deleted HB_EXTENSION branch. Please modify your program to
      use Set( _SET_EOL ) instead of passing EOLs explicitly to
      memo functions. This works also in xhb.
      INCOMPATIBLE when for HB_EXTENSION builds.

  * source/rtl/alert.prg
    ! Minor in comment.

  * source/rtl/saverest.c
    - Removed SAVESCREEN()/RESTSCREEN() extra "lNoCheck" parameter
      when HB_EXTENSION is enabled. Please report on the list
      if you need this functionality.

  * source/compiler/hbfunchk.c
    ! Fix to prev: AT() declaration.

  ; TODO: Clean rest of HB_EXTENSION stuff.
2009-05-12 14:11:21 +00:00
Viktor Szakats
301c1c5f98 2009-05-12 10:37 UTC+0200 Viktor Szakats (harbour.01 syenar hu)
* contrib/xhb/hbcompat.ch
    + Added HB_GETENV() <-> GETENV() conversions.
    + Added MEMOWRIT() translation for xhb sources.

  * source/rtl/at.c
  * source/rtl/gete.c
  * source/rtl/memofile.c
    - Deleted HB_EXTENSION branches. Users of extended
      GETENV(), GETE(), AT() and MEMOWRIT() functionality
      will have to use hbcompat.ch to stay compatible with xhb
      (this isn't needed for MEMOWRIT()).
      INCOMPATIBLE change for those who enabled HB_EXTENSION
      in Harbour. Hopefully xhb will implement HB_AT() and
      HB_GETENV() in the future so hbcompat.ch will become
      unnecessary.

   * include/hbextern.ch
   + source/rtl/radiobhb.prg
   * source/rtl/radiobtn.prg
     * RADIOBUTTON() Harbour extension moved to a separate file
       to cause no harm for programs defining this function locally.
       At the same time, HB_EXTENSION protection got removed so
       it can be accessed in default builds as a RADIOBUTTO() 
       alternative.
2009-05-12 08:44:03 +00:00
Viktor Szakats
52e2e002e5 2009-05-12 09:25 UTC+0200 Viktor Szakats (harbour.01 syenar hu)
* doc/cmdline.txt
  * doc/howtosvn.txt
    + Added CC copyright.

  * source/rtl/alert.prg
  * include/hbextern.ch
    + HB_ALERT(). Now this function holds all extended features:
      nDelay support and any type for first parameter.
    * ALERT() now behaves completely along Clipper version, without
      extensions. HB_EXTENSION no longer modifies its behaviour, so
      if someone needs these extended features, there is no need to
      build with HB_EXTENSION, only ALERT() calls have to be
      converted to HB_ALERT(). INCOMPATIBLE (in some scenarios).

  * contrib/hbtip/utils.c
    % TIP_TIMESTAMP() code cleaned to remove redundancy of
      having two full distinct copies of this function. Now
      platform independent parts are kept common.
    ! TIP_TIMESTAMP() fixed hb_parl() to hb_parnl() for 'hours'
      parameter. I wonder how this bug wasn't noticed till now.
      Please someone test, maybe I'm missing the point of this
      parameter, but it's unlikely the intent was a logical value
      as it's later converted to timestamp.

  * contrib/hbtip/thtml.prg
  * contrib/hbtip/sendmail.prg
  * contrib/hbtip/httpcln.prg
  * contrib/hbtip/ftpcln.prg
    * END -> END*
    * Minor formatting.

  * contrib/hbtip/base64x.c
  * contrib/hbtip/smtpcln.prg
    * Formatted.
    * Minor optimizations (File() -> hb_FileExists(), ::AuthPlain()
      simplification).
    % BUILDUSERPASSSTRING() rewritten in Harbour. It's a very
      simple function.
2009-05-12 07:32:45 +00:00
Przemyslaw Czerpak
6b916eba63 2009-05-11 14:43 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/include/hbexprop.h
  * harbour/include/hbexprb.c
  * harbour/source/common/expropt2.c
    + added compile time optimization for hb_stot() function
2009-05-11 12:35:20 +00:00
Przemyslaw Czerpak
b52f13cdc1 2009-05-07 16:52 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/include/hbcompdf.h
  * harbour/source/compiler/harbour.y
  * harbour/source/compiler/harbour.yyc
    + added compile time optimization for switch statements with constant
      values, i.e. for code like:
            proc main()
               local x := 0
               switch 3
                  case 1;     x += 100;   exit
                  case 2;     x += 200
                  case 3;     x += 300
                  case 4;     x += 400;   exit
                  case 5;     x += 505;   exit
                  case 6;     x += 606
                  otherwise;  x += 1000
               endswitch
               ? x
            return
2009-05-07 14:44:36 +00:00
Przemyslaw Czerpak
eea2b15d19 2009-05-06 13:14 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/include/blob.ch
    ! fixed minor typo

  * harbour/source/rdd/dbffpt/dbffpt1.c
    ! fixed two bugs in garbage collector. One of them was critical and could
      cause FPT or DBV file corruption when memoblock size was smaller then 8
      bytes. Thanks to Mike Evans for self contain example.
2009-05-06 11:06:11 +00:00
Viktor Szakats
ee1a33a40c 2009-05-06 10:50 UTC+0200 Viktor Szakats (harbour.01 syenar hu)
* include/hbexprb.c
    + Allowing user defined 'gettext' functions to be used
      under the names hb_i18n_gettext[_strict|_noop]_*(),
      where * is a function name postfix.
2009-05-06 09:08:50 +00:00
Przemyslaw Czerpak
a3ebb728d0 2009-05-05 17:05 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/include/hbcomp.h
  * harbour/source/compiler/hbmain.c
  * harbour/source/compiler/hbcomp.c
  * harbour/source/compiler/compi18n.c
    * changed -j<path>/ and -j<file> behavior when more the one .prg file
      is compiled. Now when <path>/ is used then it's respected by all
      compiler .prg modules. When <file> is used then only single .pot
      file is generated but it contains i18n entries from all compiled
      .prg modules.

  * harbour/ChangeLog
    + added two thanks notes, one to Miguel and using HeapAlloc() and
      second to Walter Negro for his DATETIME work in xHarbour what gives
      valuable test platform for Harbour and was important inspiration for
      Harbour TIMESTAMP implementation.
2009-05-05 14:59:12 +00:00
Mindaugas Kavaliauskas
5638e5251b 2009-05-04 16:40 UTC+0300 Mindaugas Kavaliauskas (dbtopas/at/dbtopas.lt)
* harbour/include/hbexprb.h
    * suppressed warning for hb_i18n_gettext("")
2009-05-04 13:48:26 +00:00
Przemyslaw Czerpak
5c2eb974fe 2009-04-29 14:50 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/include/hbexprb.c
    ! modified := optimization to keep alive original LValue name
      used in the assign expression. It fixes FOR / NEXT loops which
      in which such optimized expression were used, f.e.:
         FOR n := n + 1 TO 10; ? n; next
      In fact it's only workaround for potentially bigger problem with
      multiple references to single expression which we probably have to
      resolve if we extend the compiler to not generate PCODE online
      for each compiled statement but only after preprocessing and
      optimizing at least whole function or procedure.
2009-04-29 12:42:13 +00:00
Przemyslaw Czerpak
e12013d2ff 2009-04-28 19:45 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/ChangeLog
    * removed TOVERIFY note - Viktor checked it.

  * harbour/contrib/hbct/ctwin.c
    ! redraw windows after each WCENTER() call

  * harbour/contrib/rddads/ads1.c
    + added support for ADS_VARCHAR_FOX and ADS_VARBINARY_FOX fields
      in ADS_VFP tables

  * harbour/include/dbinfo.ch
  * harbour/include/hbrdddbf.h
  * harbour/include/hbrddcdx.h
  * harbour/include/hbrddnsx.h
  * harbour/include/hbrddntx.h
  * harbour/source/rdd/dbf1.c
  * harbour/source/rdd/workarea.c
    + added support for VFP tables with VARCHAR and VARBINARY fields
    + added support for VFP tables with NULLABLE fields
    + added new dbFieldInfo() action to check if given field is NULL, f.e.:
         ? dbFieldInfo( DBS_ISNULL, FieldPos( <cFieldName> ) )
      The above modifications were not tested with real VFP files. I do
      not have VFP. VFP users should make some real life tests with tables
      created by VFP.
2009-04-28 17:37:49 +00:00
Przemyslaw Czerpak
5e9629763e 2009-04-24 16:24 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/include/hbapi.h
  * harbour/source/common/hbprintf.c
  * harbour/source/common/hbstr.c
    + added hb_vsnprintf() - vsnprintf() replacement
    * synced type of parameters in hb_snprintf() used for builds with and
      without HB__USE_OWN_SNPRINTF
2009-04-24 14:17:17 +00:00
Przemyslaw Czerpak
15bd32ec79 2009-04-23 17:46 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/include/hbapiitm.h
  * harbour/source/vm/itemapi.c
    * declared return value of hb_itemTypeStr() as const

  * harbour/harbour.spec
    * removed hbsqlite3 from default builds - it has to be optional due
      to external dependencies in current version
2009-04-23 15:39:27 +00:00
Przemyslaw Czerpak
9b31274eb5 2009-04-23 10:26 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/include/hbexprb.c
    + added support for indirect (by macro or some other expression)
      assign of object items
2009-04-23 08:18:59 +00:00
Przemyslaw Czerpak
5bd1d47a3f 2009-04-21 18:24 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/include/hbrddcdx.h
  * harbour/source/rdd/dbfcdx/dbfcdx1.c
    + added support for CLIP indexes with IgnoreCase flag
2009-04-21 16:16:55 +00:00