Commit Graph

313 Commits

Author SHA1 Message Date
Przemyslaw Czerpak
4057472258 2009-07-11 15:38 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/config/os2/watcom.cf
  * harbour/config/os2/dir.cf
  * harbour/config/os2/install.cf
    * small cleanup for builds with *nix like shells and cross builds

  * harbour/contrib/rddads/Makefile
    ! disabld from OS2 builds - if ADS supports OS2 then please speak-up

  * harbour/include/hbthread.h
    * added small hack as workaround for missing OS2 declarations

  * harbour/source/rtl/filesys.c
    ! fixed typo in OS2 builds

  * harbour/source/rtl/hbproces.c
    ! fixed non GCC OS2 builds

  * harbour/contrib/hbtpathy/tpos2.c
    ! fixed casting in OS2 builds

  * harbour/contrib/xhb/hbserv.c
    ! disabled from OS2 non GCC builds

   Now I can create OS2 OpenWatcom build in my Linux box using this simple
   script:

      #!/bin/sh
      if [ -z "${WATCOM}" ]; then
         export WATCOM="/opt/lng/watcom"
         export INCLUDE="${WATCOM}/h:${WATCOM}/h/os2"
         export PATH="${WATCOM}/binl:$PATH"
      fi

      export HB_ARCHITECTURE=os2
      export HB_COMPILER=watcom
      export HB_INSTALL_PREFIX="$(pwd)/hb-os2/watcom"

      #cross build settings
      # this should be fixed and we should use HB_PPGEN_PATH as direct
      # reference to hbpp binaries and HB_COMP_PATH as direct reference
      # to harbour binaries in all builds. Otherwise we have to create
      # some hacks to create platform specific names for above binaries
      # i.e. in *nixes links with .exe extension.
      export HB_PPGEN_PATH="/tmp/cros-hb"
      export HB_BIN_COMPILE="/tmp/cros-hb"

      export HB_USER_PRGFLAGS="${HB_USER_PRGFLAGS} -D__PLATFORM__OS2"
      export HB_USER_PRGFLAGS="${HB_USER_PRGFLAGS} -undef:__PLATFORM__UNIX"
      export HB_USER_PRGFLAGS="${HB_USER_PRGFLAGS} -undef:__PLATFORM__LINUX"
      # eliminate libraries which scans for local host header files
      export HB_XBUILD=yes

      ./make_gnu.sh "$@"

   It should work also in Windows with MSys.
   This should resolve the problem with testing OS2 builds, at least
   for OpenWatcom. I do not know if GCC for OS2 is available as cross
   build environment.
   I think that Viktor can quite easy adopt hbmk2 for OS2 cross compilation.
2009-07-11 13:39:02 +00:00
Viktor Szakats
2832c55881 2009-07-09 23:14 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
* include/hbvmpub.h
  * include/extend.api
  * include/hbwince.h
  * include/hb_io.h
  * include/hbdefs.h
  * include/hbsetup.h
  * include/hbinit.h
  * include/clipdefs.h
  * include/hbmath.h
  * include/hbzlib.h
  * include/hbregex.h
  * include/hbexprb.c
  * source/pp/hbpp.c
  * source/lang/msgrukoi.c
  * source/lang/msgzhgb.c
  * source/lang/msgruwin.c
  * source/lang/msgelwin.c
  * source/lang/msgro.c
  * source/lang/msghriso.c
  * source/lang/msgcskam.c
  * source/lang/msggl.c
  * source/lang/msges.c
  * source/lang/msgde.c
  * source/lang/msgru866.c
  * source/lang/msgcs852.c
  * source/lang/msgplmaz.c
  * source/lang/msgpliso.c
  * source/lang/msgplwin.c
  * source/lang/msgid.c
  * source/lang/msgel.c
  * source/lang/msgdewin.c
  * source/lang/msghr437.c
  * source/lang/msghr852.c
  * source/lang/msgcsiso.c
  * source/lang/msgcswin.c
  * source/lang/msgeswin.c
  * source/vm/macro.c
  * source/vm/mainwin.c
  * source/vm/maindll.c
  * source/vm/itemapi.c
  * source/vm/hvm.c
  * source/vm/cmdarg.c
  * source/vm/mainstd.c
  * source/vm/maindllp.c
  * source/vm/fm.c
  * source/vm/extrap.c
  * source/vm/thread.c
  * source/vm/main.c
  * source/vm/break.c
  * source/vm/dynlibhb.c
  * source/vm/set.c
  * source/vm/classes.c
  * source/debug/dbgtwin.prg
  * source/debug/dbgtmenu.prg
  * source/debug/dbgmenu.prg
  * source/debug/dbgthsh.prg
  * source/debug/dbgwa.prg
  * source/common/hbgete.c
  * source/common/hbver.c
  * source/common/hbprintf.c
  * source/common/hbfsapi.c
  * source/common/hbverdsp.c
  * source/common/hbwince.c
  * source/common/hbfopen.c
  * source/common/hbdate.c
  * source/macro/macroa.c
  * source/macro/macrob.c
  * source/rtl/lennum.c
  * source/rtl/gtdos/gtdos.c
  * source/rtl/setposbs.c
  * source/rtl/gtwin/gtwin.c
  * source/rtl/typefile.prg
  * source/rtl/math.c
  * source/rtl/getsys53.prg
  * source/rtl/tobject.prg
  * source/rtl/gtcrs/gtcrs.c
  * source/rtl/gtcrs/gtcrs.h
  * source/rtl/philesx.c
  * source/rtl/filehb.c
  * source/rtl/hbtoken.c
  * source/rtl/fstemp.c
  * source/rtl/ampm.c
  * source/rtl/maxrow.c
  * source/rtl/hbstrfmt.c
  * source/rtl/transfrm.c
  * source/rtl/gttone.c
  * source/rtl/datec.c
  * source/rtl/fserr.c
  * source/rtl/pushbtn.prg
  * source/rtl/memvarbl.prg
  * source/rtl/hbregexc.c
  * source/rtl/profiler.prg
  * source/rtl/hbini.prg
  * source/rtl/dbedit.prg
  * source/rtl/filesys.c
  * source/rtl/lang.c
  * source/rtl/einstv52.prg
  * source/rtl/hbbit.c
  * source/rtl/isprint.c
  * source/rtl/altd.prg
  * source/rtl/diskspac.c
  * source/rtl/console.c
  * source/rtl/gtos2/gtos2.c
  * source/rtl/adir.prg
  * source/rtl/gui.prg
  * source/rtl/hbgtcore.c
  * source/rtl/dirdrive.c
  * source/rtl/wait.prg
  * source/rtl/mlcfunc.c
  * source/rtl/scrollbr.prg
  * source/rtl/gtapiu.c
  * source/rtl/tbrowsys.prg
  * source/rtl/oemansi.c
  * source/rtl/philes53.c
  * source/rtl/color53.prg
  * source/rtl/xsavescr.c
  * source/rtl/tgetlist.prg
  * source/rtl/gtsln/mousesln.c
  * source/rtl/gtsln/kbsln.c
  * source/rtl/gtsln/gtsln.h
  * source/rtl/disksphb.c
  * source/rtl/tlabel.prg
  * source/rtl/radiogrp.prg
  * source/rtl/scrrow.c
  * source/rtl/net.c
  * source/rtl/stuff.c
  * source/rtl/checkbox.prg
  * source/rtl/filebuf.c
  * source/rtl/mtran.c
  * source/rtl/gete.c
  * source/rtl/hbproces.c
  * source/rtl/gtwvt/gtwvt.c
  * source/rtl/fssize.c
  * source/rtl/memofile.c
  * source/rtl/hbffind.c
  * source/rtl/tmenuitm.prg
  * source/rtl/gtsys.c
  * source/rtl/devoutp.prg
  * source/codepage/uckoi8.c
  * source/codepage/uckoi8u.c
  * source/codepage/cphu852s.c
  * source/codepage/cpes850c.c
  * source/codepage/cphuisos.c
  * source/codepage/ucmaz.c
  * source/codepage/cptr857.c
  * source/codepage/ucmik.c
  * source/codepage/cphr437.c
  * source/codepage/cphuwins.c
  * source/rdd/dbjoin.prg
  * source/rdd/dbnubs.c
  * source/rdd/dbfuncs.prg
  * source/rdd/dbtotal.prg
  * source/rdd/dbstrux.prg
  * source/rdd/dbsort.prg
  * source/rdd/dbfcdx/dbfcdx1.c
  * source/rdd/hbsix/sxcompr.c
  * source/compiler/hbmain.c
  * source/compiler/expropta.c
  * source/compiler/exproptb.c
  * source/compiler/fixflex.c
  * source/compiler/compi18n.c
  * source/compiler/gencobj.c
  * source/compiler/hbopt.c
  * source/compiler/hbgenerr.c
  * utils/hbtest/rt_main.h
  * utils/hbtest/rt_main.ch
  * utils/hbtest/rt_trans.prg
  * utils/hbtest/rt_misc.prg
  * utils/hbtest/rt_vars.ch
  * contrib/gtalleg/gtalleg.c
  * contrib/gtalleg/ssf.h
  * contrib/hbmysql/mysqlold.c
  * contrib/hbmysql/mysql.c
  * contrib/hbct/charlist.c
  * contrib/hbct/ctnet.c
  * contrib/hbct/charonly.c
  * contrib/hbct/ctset.c
  * contrib/hbct/ctset.h
  * contrib/hbct/cterror.ch
  * contrib/hbct/ftoc.c
  * contrib/hbct/charevod.c
  * contrib/hbct/exponent.c
  * contrib/hbct/dattime3.c
  * contrib/hbct/ct.prg
  * contrib/hbct/cursor.c
  * contrib/hbct/color.c
  * contrib/hbct/charone.c
  * contrib/hbct/numconv.prg
  * contrib/hbct/cttime.prg
  * contrib/hbct/ctstr.h
  * contrib/hbct/atnum.c
  * contrib/hbct/disk.c
  * contrib/hbct/misc1.c
  * contrib/hbct/print.c
  * contrib/xhb/hblog.ch
  * contrib/xhb/bkgtsks.c
  * contrib/xhb/wintypes.ch
  * contrib/xhb/classex.ch
  * contrib/xhb/hbcomprs.c
  * contrib/xhb/ttable.ch
  * contrib/xhb/hbcompat.ch
  * contrib/xhb/arrayblk.prg
  * contrib/xhb/hbctypes.ch
  * contrib/xhb/xhbextrn.ch
  * contrib/xhb/filestat.c
  * contrib/xhb/hblogdef.ch
  * contrib/xhb/xhbcopyf.c
  * contrib/xhb/hbserv.c
  * contrib/xhb/xhbfunc.c
  * contrib/hbodbc/odbcold.c
  * contrib/hbtpathy/telepath.ch
  * contrib/hbmzip/hbmzip.c
  * contrib/hbblat/hbblat.ch
  * contrib/hbxbp/xbpfiledialog.prg
  * contrib/hbxbp/gra.ch
  * contrib/hbxbp/xbpwindow.prg
  * contrib/hbxbp/xbp.ch
  * contrib/hbxbp/xbphtmlviewer.prg
  * contrib/hbxbp/xbptoolbar.prg
  * contrib/hbxbp/appevent.ch
  * contrib/hbxbp/xbpgeneric.prg
  * contrib/xpp/philesx.c
  * contrib/hbnf/acctyear.prg
  * contrib/hbnf/byteneg.prg
  * contrib/hbnf/isshare.prg
  * contrib/hbnf/kspeed.c
  * contrib/hbnf/prtscr.c
  * contrib/hbnf/ftshadow.c
  * contrib/hbnf/descendn.c
  * contrib/hbnf/scancode.prg
  * contrib/hbnf/vidmode.prg
  * contrib/hbnf/acctadj.prg
  * contrib/hbnf/vidcur.prg
  * contrib/hbnf/iamidle.c
  * contrib/hbnf/acctmnth.prg
  * contrib/hbnf/madd.prg
  * contrib/hbnf/fttext.c
  * contrib/hbnf/mouse1.prg
  * contrib/hbnf/settime.prg
  * contrib/hbnf/page.prg
  * contrib/hbnf/setkeys.c
  * contrib/hbnf/month.prg
  * contrib/hbnf/acctweek.prg
  * contrib/hbnf/acctqtr.prg
  * contrib/hbnf/dosver.prg
  * contrib/hbnf/metaph.prg
  * contrib/hbnf/menu1.prg
  * contrib/hbnf/byteand.prg
  * contrib/hbnf/bytexor.prg
  * contrib/hbnf/byteor.prg
  * contrib/hbnf/asum.prg
  * contrib/hbnf/wda.prg
  * contrib/hbnf/aavg.prg
  * contrib/hbnf/mouse.c
  * contrib/hbnf/setdate.prg
  * contrib/hbnf/amedian.prg
  * contrib/hbnf/blink.prg
  * contrib/hbnf/getvid.c
  * contrib/hbnf/getver.c
  * contrib/hbnf/nwuid.prg
  * contrib/hbnf/aemaxlen.prg
  * contrib/hbnf/bitset.prg
  * contrib/hbnf/nwlstat.prg
  * contrib/hbnf/tempfile.prg
  * contrib/hbnf/diskfunc.prg
  * contrib/hbnf/d2e.prg
  * contrib/hbnf/mouse2.prg
  * contrib/hbnf/firstday.prg
  * contrib/hbnf/menutonf.prg
  * contrib/hbnf/pvid.prg
  * contrib/hbnf/isbit.prg
  * contrib/hbnf/datecnfg.prg
  * contrib/hbnf/putkey.c
  * contrib/hbnf/getenvrn.c
  * contrib/hbnf/bytenot.prg
  * contrib/hbnf/aeminlen.prg
  * contrib/hbnf/year.prg
  * contrib/hbnf/ftmenuto.ch
  * contrib/hbnf/rmdir.c
  * contrib/hbnf/sysmem.prg
  * contrib/hbnf/bitclr.prg
  * contrib/hbnf/setlastk.c
  * contrib/hbnf/clrsel.prg
  * contrib/hbcurl/hbcurl.ch
  * contrib/gtwvg/gtwvg.c
  * contrib/gtwvg/wvgax.prg
  * contrib/gtwvg/gtwvg.h
  * contrib/gtwvg/wvggui.c
  * contrib/gtwvg/wvggui.h
  * contrib/gtwvg/wvgwin.c
  * contrib/gtwvg/wvgutils.c
  * contrib/gtwvg/wvgcore.c
  * contrib/gtwvg/wvgtabpg.prg
  * contrib/gtwvg/wvgsink.c
  * contrib/gtwvg/wvgwing.c
  * contrib/hbclipsm/num.c
  * contrib/hbclipsm/stack.c
  * contrib/rddads/rddads.h
  * contrib/rddads/ads1.c
  * contrib/hbfimage/fi_winfu.c
  * contrib/hbfimage/fi_wrp.c
  * contrib/hbgd/gd.ch
  * contrib/hbgd/gdchart.prg
  * contrib/hbgd/gdimage.prg
  * contrib/hbgd/gdwrp.c
  * contrib/hbmisc/nconvert.prg
  * contrib/hbmisc/stringsx.c
  * contrib/hbmisc/spd.c
  * contrib/hbmisc/stringp.prg
  * contrib/hbwin/win_prn2.c
  * contrib/hbwin/wapi_commctrl.c
  * contrib/hbwin/wapi_winbase.c
  * contrib/hbwin/wapi_winuser.c
  * contrib/hbwin/hbwinole.h
  * contrib/hbwin/win_dll.c
  * contrib/hbwin/axfunc.prg
  * contrib/hbwin/win_prn1.c
  * contrib/hbvpdf/hbvpdf.ch
  * examples/hboleold/win_ole.c
    * Formatting:
       - Removing EOL whitespaces.
       - Removing extra empty lines at EOF.
       - Adding EOL at EOF if missing.
      (except in foreign code)
2009-07-09 21:22:22 +00:00
Viktor Szakats
36a9aff8ff 2009-07-03 18:51 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
* source/rtl/fscopy.c
  * source/rtl/copyfile.c
  * source/rtl/memofile.c
  * source/rtl/filesys.c
  * contrib/hbmzip/hbmzip.c
  * contrib/hbsqlit3/hbsqlit3.c
  * contrib/hbpgsql/postgres.c
  * contrib/hbgd/gdwrp.c
    % Cleaned BYTE usage (converted to void).
2009-07-03 16:52:16 +00:00
Przemyslaw Czerpak
973d1336e0 2009-07-03 13:40 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/source/rtl/filesys.c
    ! fixed typo in recent modification

  * harbour/include/hbchksum.h
  * harbour/source/rtl/hbadler.c
  * harbour/source/rtl/hbcrc.c
  * harbour/source/rtl/hbmd5.c
    * changed passed parameter from 'const char *' to 'const void *' to
      eliminate explicit casting in user code
2009-07-03 11:40:29 +00:00
Przemyslaw Czerpak
9169e0e94f 2009-07-03 08:28 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
+ harbour/include/hbtask.h
  + harbour/source/vm/task.c
  * harbour/include/hbthread.h
  * harbour/include/hbatomic.h
  * harbour/source/vm/thread.c
  * harbour/source/vm/hvm.c
  * harbour/source/vm/fm.c
  * harbour/source/rtl/idle.c
  * harbour/source/rtl/filesys.c
    + implemented OS independent task switching system - it gives PTHREAD
      compatible basic API so it can be used in HVM as alternative MT support
      which does not use any OS threads. As long as Harbour does not call
      any blocking OS function then it's possible to create and execute
      simultaneously many threads though only one CPU is used and switched
      between HVM threads. It gives similar scalability to xbase++ threads
      and also similar behavior in item protection at .prg level.
      Now it's possible to use HVM threads in any OS.
      Of course it does not mean that Harbour adds in some magic way
      thread support to OS-es which does not support threads like DOS.
      It only means that HVM supports threads for .prg code just like
      in native MT environment as long as some C code does not block
      task switching or process execution will not be frozen by sth, i.e.
      executing other process (__run()) in single process OS like DOS.
      In some cases it can be interesting alternative even in OS which
      have native thread support.
      All tests/mttest*.prg programs and speedtst --thread=<n> --scale
      are executed correctly with new task switching just like with
      OS native MT support.
      Compilation with task switching in hbvmmt library can be forced
      by HB_TASK_THREAD macro which also disable native OS threads
      support.
      For task context switching two alternative methods are used:
         1) getcontext()/makecontext()/swapcontext() (SUSv2, POSIX.1-2001)
            which is preferable because does not need any additional
            hacks but not all OS-es supports these functions.
            It's enabled by default in Linux builds.
         2) setjmp()/longjmp() (POSIX, ISO 9899 (C99)) otherwise.
            These functions are supported by most of C compilers
            but there is no function to set new stack in saved context
            so it's necessary to introduce for each architecure/C compiler
            peace of code which makes it. Macro HB_TASK_STACK_INIT() in
            task.c makes it. I defined this macro for x86@32 in DJGPP
            Linux GCC and OpenWatcom builds. I tested OpenWatcom builds only
            in DOS and Linux but probably it works in all x86@32 builds.
            If someone is interesting in adding support for some other
            platforms which does not support ucontext.h and 1-st methods
            then please define above macro for them.

      Have a fun with new toy ;-)

  * harbour/source/vm/Makefile
    * enabled hbvmmt in DJGPP and OpenWatcom DOS builds. It works well.
      Viktor if possible please add support for -mt switch in hbmk2
      in all builds even if we do not compile hbvmmt by default so
      it can be used with DJGPP and OW and any other builds for which
      someone enable hbtask.c though OS does not support threads.

  * harbour/contrib/hbmzip/hbmzip.c
    ! fixed '[const] char|BYTE *' casting in DOS and OS2 builds
2009-07-03 06:29:26 +00:00
Viktor Szakats
03caef2ec2 2009-07-02 15:48 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
* include/hbcomp.h
  * include/hbcompdf.h
  * include/hbapifs.h
  * include/hbexprop.h
  * include/hbmacro.h
  * include/hbapi.h
  * include/hbapiitm.h
  * include/hbdate.h
  * source/pp/ppcore.c
  * source/vm/itemapi.c
  * source/vm/arrays.c
  * source/vm/extend.c
  * source/common/expropt1.c
  * source/rtl/philes.c
  * source/rtl/empty.c
  * source/rtl/minmax.c
  * source/rtl/dates.c
  * source/rtl/filesys.c
  * source/rdd/dbfnsx/dbfnsx1.c
  * source/rdd/dbfcdx/dbfcdx1.c
  * source/rdd/dbf1.c
  * source/rdd/dbffpt/dbffpt1.c
  * source/rdd/hbsix/sxdate.c
  * source/compiler/hbmain.c
  * source/compiler/complex.c
  * source/compiler/harbour.yyc
  * source/compiler/harbour.y
  * contrib/hbct/files.c
  * contrib/hbct/dattime2.c
  * contrib/hbct/datetime.c
  * contrib/xhb/filestat.c
  * contrib/hbtip/utils.c
  * examples/hboleold/win_ole.c
    * LONG -> long for date/time related values
      (julian, date, type, millisec)
    ; This is an effort to clean Harbour sources from
      Windows/legacy-Clipper basic types and replace
      them with own or ANSI C ones.
      In the above case, usage wasn't consistent,
      LONG and long were mixed.

  * source/main/harbour.c
  * source/vm/fm.c
    * LONG -> long for some stat counters.
2009-07-02 14:18:06 +00:00
Przemyslaw Czerpak
5c8c967e8c 2009-06-29 15:58 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/source/rtl/filesys.c
    ! fixed memory corruption in file name conversion

  * harbour/source/common/hbstr.c
    * formatting
2009-06-29 13:58:50 +00:00
Viktor Szakats
a9197e7223 2009-06-27 09:47 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
* include/hbapifs.h
  * source/rtl/filebuf.c
  * source/rtl/filesys.c
    * Changed file I/O buffer parameters from
      '( [const] BYTE * )' to '( [const] void * )'

  * utils/hbmk2/hbmk2.prg
    + Added ${hb_curdir} macro support.
    + Added ${hb_first} macro support (will return first source name
      specced on cmdline)
    + Added support for 'sources=' line in .hbc files. This
      will accept .prg, .c/.cpp, .po/.pot, object and resources.
      For resources, also wildcards are supported. Files with
      no extension will be considered .prg.
      This also replaces former 'pos=' line.
      This can be useful to put some central sources into all
      project without using a lib (or when a lib isn't an option
      for some reason).

  - man
    - Dir deleted.
2009-06-27 07:48:26 +00:00
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
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
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
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
Przemyslaw Czerpak
73f27d4447 2009-05-18 11:03 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/source/rtl/filesys.c
    ! fixed OpenWatcom Linux builds which does not support utimes() yet.

  * harbour/contrib/rddads/ads1.c
    * pacified two BCC warnings
2009-05-18 08:55:06 +00:00
Przemyslaw Czerpak
ea8b3df999 2009-05-12 18:05 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/source/rtl/filesys.c
    + added support for millisecond precision in hb_fsGetFileTime()/
      hb_fsSetFileTime() in Linux builds. Please note that file time
      precision depends also on used file system and Linux kernel so
      it does not have to work in all cases.
2009-05-12 15:57:30 +00:00
Przemyslaw Czerpak
c9ab61737a 2009-04-20 20:53 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/source/rtl/filesys.c
    ! restored hack used for non POSIX compatible _POSIX_SYNCHRONIZED_IO
      definition.
2009-04-20 18:45:43 +00:00
Przemyslaw Czerpak
9ad880c611 2009-04-20 14:32 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/include/hbcomp.h
  * harbour/source/common/hbdate.c
  * harbour/source/rtl/strmatch.c
  * harbour/source/rtl/fssize.c
  * harbour/source/rtl/hbffind.c
  * harbour/source/rtl/filesys.c
    * enabled some POSIX function added to 1.8 Linux OpenWatcom builds
      and cleaned some workarounds not longer necessary

  * harbour/source/rtl/hbproces.c
    + added hack with small sysconf() implementation which is still missing
      in OpenWatcom 1.8. Now it's possible to build Harbour in Linux using
      officially distributed OpenWatcom 1.8

  * harbour/source/rtl/disksphb.c
    * added TODO warning message

  * harbour/source/compiler/cmdcheck.c
    ! fixed typo in memory freeing in repeated -p<path> options
2009-04-20 12:24:42 +00:00
Viktor Szakats
142a03c102 2009-03-27 18:30 UTC+0100 Viktor Szakats (harbour.01 syenar hu)
* config/win/poccce.cf
  * config/win/pocc.cf
    * Warning level taken down to -w2.

  * contrib/hbsqlit3/Makefile
    - Disabled for pocc, as it chokes on the new version of
      sqlite3.h.

  * INSTALL
    * Minor update.

  * include/hbapifs.h
  * include/hbdbsort.h
  * include/hbsetup.h
  * contrib/hbct/files.c
  * contrib/hbct/disk.c
  * contrib/hbmzip/hbmzip.c
  * contrib/rddads/ads1.c
  * contrib/hbbmcdx/bmdbfcdx.c
  * contrib/examples/pp/pp.c
  * contrib/examples/pp/hbppcore.c
  * source/pp/ppcore.c
  * source/pp/hbpp.c
  * source/vm/runner.c
  * source/vm/estack.c
  * source/vm/hvm.c
  * source/vm/cmdarg.c
  * source/vm/fm.c
  * source/vm/proc.c
  * source/vm/extrap.c
  * source/vm/memvars.c
  * source/vm/set.c
  * source/main/harbour.c
  * source/common/hbfsapi.c
  * source/common/hbwince.c
  * source/rtl/spfiles.c
  * source/rtl/defpath.c
  * source/rtl/philes.c
  * source/rtl/fnsplit.c
  * source/rtl/fstemp.c
  * source/rtl/gtchrmap.c
  * source/rtl/errorint.c
  * source/rtl/filebuf.c
  * source/rtl/hbffind.c
  * source/rtl/filesys.c
  * source/rtl/file.c
  * source/rdd/dbfntx/dbfntx1.c
  * source/rdd/sdf1.c
  * source/rdd/dbfnsx/dbfnsx1.c
  * source/rdd/dbfcdx/dbfcdx1.c
  * source/rdd/delim1.c
  * source/rdd/dbf1.c
  * source/rdd/hsx/hsx.c
  * source/rdd/dbffpt/dbffpt1.c
  * source/rdd/hbsix/sxsem.c
  * source/rdd/hbsix/sxfname.c
  * source/compiler/hbmain.c
  * source/compiler/genc.c
  * source/compiler/harbour.yyc
  * source/compiler/harbour.y
  * source/compiler/compi18n.c
  * source/compiler/genhrb.c
  * source/compiler/gencobj.c
  * source/compiler/genobj32.c
    * _POSIX_PATH_MAX + 1 -> HB_PATH_MAX
    * _POSIX_PATH_MAX -> HB_PATH_MAX - 1
      Please update your .c code to use new constant.
      Harbour initialization of the value is now HB_LEGACY_LEVEL2
      and will be removed in next version.
    ; Please review me.
2009-03-27 17:35:14 +00:00
Viktor Szakats
3de4f48f71 2009-03-25 16:19 UTC+0100 Viktor Szakats (harbour.01 syenar hu)
* bin/hb-func.sh
  * bin/hb-mkdyn.bat
  * bin/hb-mkdyn.sh
  * bin/postinst.bat
  * bin/postinst.cmd
  * bin/postinst.sh
  * contrib/examples/hbdoc/examples/core_es/array.txt
  * contrib/examples/hbdoc/examples/core_es/binnum.txt
  * contrib/examples/hbdoc/examples/core_es/browse.txt
  * contrib/examples/hbdoc/examples/core_es/clipper.txt
  * contrib/examples/hbdoc/examples/core_es/cmdline.txt
  * contrib/examples/hbdoc/examples/core_es/codebloc.txt
  * contrib/examples/hbdoc/examples/core_es/command.txt
  * contrib/examples/hbdoc/examples/core_es/compiler.txt
  * contrib/examples/hbdoc/examples/core_es/datetime.txt
  * contrib/examples/hbdoc/examples/core_es/dbdelim.txt
  * contrib/examples/hbdoc/examples/core_es/dbsdf.txt
  * contrib/examples/hbdoc/examples/core_es/dbstrux.txt
  * contrib/examples/hbdoc/examples/core_es/dir.txt
  * contrib/examples/hbdoc/examples/core_es/dirstruc.txt
  * contrib/examples/hbdoc/examples/core_es/diskspac.txt
  * contrib/examples/hbdoc/examples/core_es/error.txt
  * contrib/examples/hbdoc/examples/core_es/eval.txt
  * contrib/examples/hbdoc/examples/core_es/file.txt
  * contrib/examples/hbdoc/examples/core_es/garbage.txt
  * contrib/examples/hbdoc/examples/core_es/harbext.txt
  * contrib/examples/hbdoc/examples/core_es/hb_apiln.txt
  * contrib/examples/hbdoc/examples/core_es/hb_set.txt
  * contrib/examples/hbdoc/examples/core_es/hb_vm.txt
  * contrib/examples/hbdoc/examples/core_es/howtobsd.txt
  * contrib/examples/hbdoc/examples/core_es/hvm.txt
  * contrib/examples/hbdoc/examples/core_es/idle.txt
  * contrib/examples/hbdoc/examples/core_es/input.txt
  * contrib/examples/hbdoc/examples/core_es/lang.txt
  * contrib/examples/hbdoc/examples/core_es/license.txt
  * contrib/examples/hbdoc/examples/core_es/macro.txt
  * contrib/examples/hbdoc/examples/core_es/math.txt
  * contrib/examples/hbdoc/examples/core_es/memo.txt
  * contrib/examples/hbdoc/examples/core_es/memvar2.txt
  * contrib/examples/hbdoc/examples/core_es/misc.txt
  * contrib/examples/hbdoc/examples/core_es/nation.txt
  * contrib/examples/hbdoc/examples/core_es/objfunc.txt
  * contrib/examples/hbdoc/examples/core_es/pcode.txt
  * contrib/examples/hbdoc/examples/core_es/pragma.txt
  * contrib/examples/hbdoc/examples/core_es/rdd.txt
  * contrib/examples/hbdoc/examples/core_es/readme.txt
  * contrib/examples/hbdoc/examples/core_es/sayget.txt
  * contrib/examples/hbdoc/examples/core_es/setmode.txt
  * contrib/examples/hbdoc/examples/core_es/statics.txt
  * contrib/examples/hbdoc/examples/core_es/strotype.txt
  * contrib/examples/hbdoc/examples/core_es/subcodes.txt
  * contrib/examples/hbdoc/examples/core_es/tbrowse.txt
  * contrib/examples/hbdoc/examples/core_es/tclass.txt
  * contrib/examples/hbdoc/examples/core_es/tgetlist.txt
  * contrib/examples/hbdoc/examples/core_es/tlabel.txt
  * contrib/examples/hbdoc/examples/core_es/tracing.txt
  * contrib/examples/hbdoc/examples/core_es/treport.txt
  * contrib/examples/hbdoc/examples/core_es/var.txt
  * contrib/examples/hbdoc/examples/core_es/vm.txt
  * contrib/examples/pp/hbppcore.c
  * contrib/gtwvg/gtwvg.c
  * contrib/gtwvg/wvgcore.c
  * contrib/gtwvg/wvgcuig.c
  * contrib/gtwvg/wvggui.c
  * contrib/gtwvg/wvgutils.c
  * contrib/gtwvg/wvgwin.c
  * contrib/hbct/datetime.c
  * contrib/hbct/pack.c
  * contrib/hbct/video.c
  * contrib/hbfbird/firebird.c
  * contrib/hbfbird/tfirebrd.prg
  * contrib/hbfimage/readme.txt
  * contrib/hbgd/doc/hbgd.txt
  * contrib/hbmisc/dates2.c
  * contrib/hbmisc/doc/en/dates2.txt
  * contrib/hbmisc/doc/en/ht_class.txt
  * contrib/hbmisc/doc/en/ht_conv.txt
  * contrib/hbmisc/doc/en/ht_dbf.txt
  * contrib/hbmisc/doc/en/ht_doc.txt
  * contrib/hbmisc/doc/en/ht_str.txt
  * contrib/hbmysql/mysql.c
  * contrib/hbnf/fttext.c
  * contrib/hbodbc/odbc.c
  * contrib/hbpgsql/postgres.c
  * contrib/hbpgsql/tpostgre.prg
  * contrib/hbsqlit3/hbsqlit3.c
  * contrib/hbsqlit3/hbsqlit3.ch
  * contrib/hbsqlit3/tests/blob.prg
  * contrib/hbsqlit3/tests/metadata.prg
  * contrib/hbsqlit3/tests/pack.prg
  * contrib/hbsqlit3/tests/sqlite3_test.prg
  * contrib/hbtip/utils.c
  * contrib/hbwin/win_prn1.c
  * contrib/hbwin/win_tprn.prg
  * contrib/rddads/doc/en/adsfuncs.txt
  * doc/class_tp.txt
  * doc/en/array.txt
  * doc/en/binnum.txt
  * doc/en/browse.txt
  * doc/en/command.txt
  * doc/en/datetime.txt
  * doc/en/dbdelim.txt
  * doc/en/dbsdf.txt
  * doc/en/dbstrux.txt
  * doc/en/dir.txt
  * doc/en/diskspac.txt
  * doc/en/error.txt
  * doc/en/eval.txt
  * doc/en/file.txt
  * doc/en/hb_api.txt
  * doc/en/hb_apier.txt
  * doc/en/hb_apifs.txt
  * doc/en/hb_apigt.txt
  * doc/en/hb_apiit.txt
  * doc/en/hb_apiln.txt
  * doc/en/hb_apird.txt
  * doc/en/hb_compa.txt
  * doc/en/hb_date.txt
  * doc/en/hb_macro.txt
  * doc/en/hb_set.txt
  * doc/en/hb_vm.txt
  * doc/en/hvm.txt
  * doc/en/input.txt
  * doc/en/lang.txt
  * doc/en/math.txt
  * doc/en/memo.txt
  * doc/en/menu.txt
  * doc/en/misc.txt
  * doc/en/nation.txt
  * doc/en/objfunc.txt
  * doc/en/rdd.txt
  * doc/en/rdddb.txt
  * doc/en/rddmisc.txt
  * doc/en/rddord.txt
  * doc/en/set.txt
  * doc/en/setmode.txt
  * doc/en/string.txt
  * doc/en/tclass.txt
  * doc/en/terminal.txt
  * doc/en/tgetlist.txt
  * doc/en/tlabel.txt
  * doc/en/treport.txt
  * doc/en/var.txt
  * doc/hdr_tpl.txt
  * harbour-wce-spec
  * harbour-win-spec
  * harbour.spec
  * include/hbapigt.h
  * include/hbclass.ch
  * include/hboo.ch
  * make_gnu.bat
  * make_gnu.sh
  * mpkg_deb.sh
  * mpkg_rpm.sh
  * mpkg_rpm_from_svn.sh
  * mpkg_rpm_wce.sh
  * mpkg_rpm_win.sh
  * mpkg_tgz.sh
  * mpkg_win.bat
  * mpkg_win.nsi
  * source/common/hbdate.c
  * source/common/hbstr.c
  * source/common/hbver.c
  * source/compiler/cmdcheck.c
  * source/compiler/hbmain.c
  * source/debug/dbgtwin.prg
  * source/debug/debugger.prg
  * source/lang/msgpt.c
  * source/lang/msgptiso.c
  * source/rtl/accept.c
  * source/rtl/alert.prg
  * source/rtl/console.c
  * source/rtl/dates.c
  * source/rtl/dateshb.c
  * source/rtl/errorapi.c
  * source/rtl/filesys.c
  * source/rtl/gete.c
  * source/rtl/getsys.prg
  * source/rtl/getsys53.prg
  * source/rtl/gtapi.c
  * source/rtl/gtcrs/hb-charmap.def
  * source/rtl/gtdos/gtdos.c
  * source/rtl/gtos2/gtos2.c
  * source/rtl/gtwin/gtwin.c
  * source/rtl/gtwvt/gtwvt.c
  * source/rtl/gx.c
  * source/rtl/idle.c
  * source/rtl/inkey.c
  * source/rtl/mouseapi.c
  * source/rtl/natmsg.c
  * source/rtl/natmsgu.c
  * source/rtl/net.c
  * source/rtl/objfunc.prg
  * source/rtl/round.c
  * source/rtl/setpos.c
  * source/rtl/tclass.prg
  * source/rtl/tgetlist.prg
  * source/rtl/tobject.prg
  * source/rtl/transfrm.c
  * source/rtl/valtype.c
  * source/rtl/xsavescr.c
  * source/vm/arrays.c
  * source/vm/classes.c
  * source/vm/eval.c
  * source/vm/extend.c
  * source/vm/extrap.c
  * source/vm/fm.c
  * source/vm/hvm.c
  * source/vm/itemapi.c
  * source/vm/memvars.c
  * source/vm/proc.c
  * tests/bnchmark/bnch_win.bat
  * tests/langmsg.prg
  * tests/rto_tb.prg
  * utils/hbmk2/hbmk2.prg
  * utils/hbtest/make_c5x.bat
    * Changed reference:
      doc/license.txt -> COPYING.
      One step to allow the reorganization of doc dir.
2009-03-25 15:34:09 +00:00
Przemyslaw Czerpak
26a11bd859 2009-03-21 16:07 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/bin/hb-func.sh
    ! restored default optimization flag (-O3) in hb* scripts

  * harbour/harbour.spec
    ! fixed recent modification

  * harbour/contrib/rddads/ads1.c
  * harbour/contrib/rddads/adsfunc.c
  * harbour/contrib/hbmisc/strfmt.c
  * harbour/contrib/hbcrypt/sha1.c
    ! fixed wrongly used C reference operator

  * harbour/contrib/hbwin/win_prn2.c
  * harbour/contrib/hbwin/wapi_commctrl.c
  * harbour/source/vm/maindllp.c
    ! fixes for unicode builds

  * harbour/include/std.ch
    + added SET TIME FORMAT [TO] <f>

  * harbour/include/set.ch
  * harbour/include/hbset.h
  * harbour/source/vm/set.c
    + added _SET_TIMEFORMAT
      The folowing modifiers are supported:
         hh - hours
         mm - minutes
         ss - seconds
         fff - fraction part of seconds
         p - 1-st letter from PM / AM signature. When used time is shown
             in 12 hour format otherwise 24 hour format is used
      ex: Set( __SET_TIMEFORMAT, "hh:mm pm" )
      default _SET_TIMEFORMAT value is "hh:mm:ss:fff"
    + added C function: char * hb_setGetTimeFormat( void );

  * harbour/include/hbpp.h
  * harbour/source/pp/ppcore.c
    + added support for timestamp constant values in the form:
         t"YYYY-MM-DD HH:MM:SS.fff"
      The exact accepted timestamp pattern is is:
         YYYY-MM-DD [H[H][:M[M][:S[S][.f[f[f[f]]]]]]] [PM|AM]
      i.e.:
         tValue := t"2009-03-21 5:31:45.437 PM"
      or:
         YYYY-MM-DDT[H[H][:M[M][:S[S][.f[f[f[f]]]]]]] [PM|AM]
      with literal "T" as date and time part delimiters (XML timestamp
      format), i.e.:
         tValue := t"2009-03-21T17:31:45.437"
      The folowing characters can be used as date delimiters: "-", "/", "."
      if PM or AM is used HH is in range < 1 : 12 > otherwise
      in range < 0 : 23 >

  * harbour/source/compiler/complex.c
  * harbour/source/compiler/harbour.y
  * harbour/source/compiler/harbour.yyc
  * harbour/source/compiler/harbour.yyh
    + added support for t"YYYY-MM-DD HH:MM:SS.fff" time stamp constant
      to compiler
    + added support for VFP datetime constant values:
         { ^ [ YYYY-MM-DD [,] ] [ HH[:MM[:SS][.FFF]] [AM|PM] ] }
      The following characters can be used as date delimiters: "-", "/".
      Dot "." as date delimiter is not supported.
      There is no limit on number of characters in YYYY, MM, DD, HH, MM,
      SS, FFF parts. Important is only their value. This is the format
      in semi PP notation:
         { ^ <YEAR> <sep:/-> <MONTH> <sep:/-> <DAY> [[<sep2:,>]
           [ <HOUR> [ : <MIN> [ : <SEC> [ . <FRAQ> ] ] ] [AM|PP] ] }
      In practice it allows to also parse xHarbour datetime constant
      values with compatible conditions though xHarbour support onlu "/"
      as date delimiter.
      NOTE: there is one important difference to VFP and xHarbour in
      decoding above format. In VFP and xHarbour when date part is
      missing then it's set by default to: 1899-12-30 so this code:
         { ^ 12:00 }
      gived the same results as:
         { ^ 1899/12/30 12:00 }
      Harbour does not set any default date value when timestamp
      constant value contains only time part.
      If you want we can change it for strict VFP compatiblity.
      Now this extension is enabled by default for testing. In the future
      it will be probably covered by HB_COMPAT_FOXPRO macro.

  * harbour/source/macro/macro.yyc
  * harbour/source/macro/macro.y
  * harbour/source/macro/macro.yyh
  * harbour/source/macro/macrolex.c
    + added support for t"YYYY-MM-DD HH:MM:SS.fff" time stamp constant
      to macro compiler

  * harbour/include/hbmacro.h
  * harbour/source/vm/macro.c
    + added new function:
      void hb_macroGenPushTimeStamp( LONG lDate, LONG lTime, HB_COMP_DECL );

  * harbour/include/hberrors.h
  * harbour/source/compiler/hbgenerr.c
    + added new compile time error: "Invalid timestamp constant '%s'"

  * harbour/source/compiler/cmdcheck.c
    * use Harbour API timestamp functions instead of calling system
      functions

  * harbour/include/hbpcode.h
  * harbour/source/compiler/hbfix.c
  * harbour/source/compiler/hbpcode.c
  * harbour/source/compiler/hbdead.c
  * harbour/source/compiler/genc.c
  * harbour/source/compiler/gencc.c
  * harbour/source/compiler/hblbl.c
  * harbour/source/compiler/hbstripl.c
  * harbour/source/compiler/hbopt.c
    + added new PCODE HB_P_PUSHTIMESTAMP (replaced one unused PCODE value)
      to store timestamp constant values in the PCODE

  * harbour/include/hbcomp.h
  * harbour/source/compiler/hbmain.c
    + added new function:
      void hb_compGenPushTimeStamp( LONG lDate, LONG lTime, HB_COMP_DECL );

  * harbour/include/hbexprop.h
  * harbour/source/common/expropt1.c
    + added new C functions:
      HB_EXPR_PTR hb_compExprNewTimeStamp( LONG, LONG, HB_COMP_DECL );

  * harbour/include/hbexprb.c
  * harbour/include/hbcompdf.h
  * harbour/source/common/expropt2.c
    + added timestamp expressions support
    + added compile time optimization for timestamp expressions
    * updated function optimization for timestamp expressions

  * harbour/include/hbdate.h
  * harbour/source/common/hbdate.c
    * changed hb_dateMilliSeconds() to return UTC julian timestamp in
      milliseconds
    * changed existing seconds, time and timestamp functions to operate
      on common OS specific functions to eliminate possible problems
      with different OS time counters
    + added new functions to operates on time and timestamp values.
      See source code for details.

  + harbour/source/rtl/cputime.c
    * moved double hb_secondsCPU( int n ) function to separate file

  * harbour/source/rtl/seconds.c
    - removed old version of date/seconds functions

  * harbour/source/vm/hashes.c
  * harbour/source/vm/arrays.c
    + added support for timestamp values as hash item indexes

  * harbour/source/vm/hashfunc.c
    + added support for find timestamp values in hash and array items
      by simple date value in AScan(), hb_HScan(), hb_AScan() and hb_RAScan()
      functions when exact comparison is not used.

  * harbour/source/vm/asort.c
    + added support for sorting timestamp values

  * harbour/source/vm/classes.c
    + added support for timestamp scallar classes
    + added support for timestamp typed instance variables

  * harbour/source/vm/memvars.c
    + added support for timestamp values in .mem files

  * harbour/source/vm/estack.c
    + show timestamp values in stack dump

  * harbour/include/hbapi.h
  * harbour/source/vm/arrays.c
    + added new C functions:
      double hb_arrayGetTD( PHB_ITEM pArray, ULONG ulIndex );
      BOOL hb_arraySetTD( PHB_ITEM pArray, ULONG ulIndex, double dTimeStamp )
      BOOL hb_arrayGetTDT( PHB_ITEM pArray, ULONG ulIndex,
                           LONG * plJulian, LONG * plMilliSec );
      BOOL hb_arraySetTDT( PHB_ITEM pArray, ULONG ulIndex,
                           LONG lJulian, LONG lMilliSec );

  * harbour/include/hbapi.h
  * harbour/source/vm/extend.c
    + accept timestamp items in date functions - use only date part of
      timestamp value
    + added new C functions:
      double hb_partd( int iParam, ... );
      BOOL hb_partdt( LONG * plJulian, LONG * plMilliSec , int iParam, ... );
      void hb_rettd( double dTimeStamp );
      void hb_rettdt( LONG lJulian, LONG lMilliSec );
      int hb_stortd( double dTimeStamp, int iParam, ... );
      int hb_stortdt( LONG lJulian, LONG lMilliSec, int iParam, ... );

  * harbour/include/hbapiitm.h
  * harbour/source/vm/itemapi.c
    + accept timestamp items in date functions - use only date part of
      timestamp value
    + added new C functions:
      char * hb_itemGetTS( PHB_ITEM pItem, char * szDateTime );
      PHB_ITEM hb_itemPutTS( PHB_ITEM pItem, const char * szDateTime );
      double hb_itemGetTD( PHB_ITEM pItem );
      PHB_ITEM hb_itemPutTD( PHB_ITEM pItem, double dTimeStamp )
      BOOL hb_itemGetTDT( PHB_ITEM pItem, LONG * plJulian, LONG * plMilliSec );
      PHB_ITEM hb_itemPutTDT( PHB_ITEM pItem, LONG lJulian, LONG lMilliSec );
    + support for timestamp items in hb_itemString(), hb_itemPadConv() and
      hb_itemTypeStr() functions

  * harbour/include/hbvm.h
  * harbour/include/hbxvm.h
  * harbour/include/hbapi.h
  * harbour/source/vm/hvm.c
    + added HB_IT_TIMESTAMP items
    * modified HB_IT_DATE internal item structure to use common structure
      with HB_IT_TIMESTAMP - it  simplifies HVM code and eliminates additional
      RT conditions.
    + added HB_IS_TIMESTAMP() and ISTIMESTAMP() macros
    + added HB_IS_DATETIME() and ISDATETIME() macros - they return true
      if item/parameter is DATE or TIMESTAMP type.
    + added void hb_vmPushTimeStamp( long lJulian, long lMilliSec );
      and xhb_vmPushTimeStamp()
    + added support for timestamp values in relational operators:
         <, <=, >, >=, =, ==
      When two timestamp values are compared then VM compares date and
      time parts in both values.
      When date and timestamp values are used in <, <=, >, >=, = operations
      then VM compares only date part in both values.
      When date and timestamp values are used in == operation then VM
      compares date part in both values and then check if time part
      of timestamp value is 0.
    + added support for timestamp values in + and - math operations.
      The following rules are used in timestamp arithmetic:
         <t> + <t> => <t>
         <t> - <t> => <n>
         <t> + <n> => <t>
         <n> + <t> => <t>
         <t> - <n> => <t>
         <d> + <t> => <t>
         <t> + <d> => <t>
         <d> - <t> => <n>
         <t> - <d> => <n>
      When number is result or argument of timestamp operation then the
      its integer part is a number of day and fractional part is the time.

  * harbour/source/rtl/dateshb.c
    + added new .prg functions to mange date and timestamp values:
      HB_DATETIME() -> <tTimeStamp>
      HB_CTOD( <cDate> [, <cDateFormat> ] ) -> <dDate>
      HB_DTOC( <dDate> [, <cDateFormat> ] ) -> <cDate>
      HB_NTOT( <nValue> ) -> <tTimeStamp>
      HB_TTON( <tTimeStamp> ) -> <nValue>
      HB_TTOC( <tTimeStamp>, [ <cDateFormat> ] [, <cTimeFormat> ] ) ->
                                                            <cTimeStamp>
      HB_CTOT( <cTimeStamp>, [ <cDateFormat> ] [, <cTimeFormat> ] ) ->
                                                            <tTimeStamp>
      HB_TTOS( <tTimeStamp> ) -> <cYYYYMMDDHHMMSSFFF>
      HB_STOT( <cDateTime> ) -> <tTimeStamp>
         <cDateTime> should be in one of the above form:
            - "YYYYMMDDHHMMSSFFF"
            - "YYYYMMDDHHMMSSFF"
            - "YYYYMMDDHHMMSSF"
            - "YYYYMMDDHHMMSS"
            - "YYYYMMDDHHMM"
            - "YYYYMMDDHH"
            - "YYYYMMDD"
            - "HHMMSSFFF"
            - "HHMMSSF"
            - "HHMMSS"
            - "HHMM"
            - "HH"
         Important is number of digits.
      HB_TSTOSTR( <tTimeStamp> ) -> <cTimeStamp> // YYYY-MM-DD HH:MM:SS.fff
      HB_STRTOTS( <cTimeStamp> ) -> <tTimeStamp>
         <cTimeStamp> should be in one of the above form:
            YYYY-MM-DD [H[H][:M[M][:S[S][.f[f[f[f]]]]]]] [PM|AM]
            YYYY-MM-DDT[H[H][:M[M][:S[S][.f[f[f[f]]]]]]] [PM|AM]
         The folowing characters can be used as date delimiters: "-", "/", "."
         T - is literal "T" - it's for XML timestamp format
         if PM or AM is used HH is in range < 1 : 12 > otherwise
         in range < 0 : 23 >
      HB_HOUR( <tTimeStamp> ) -> <nHour>
      HB_MINUTE( <tTimeStamp> ) -> <nMinute>
      HB_SEC( <tTimeStamp> ) -> <nSeconds>   // with milliseconds

  * harbour/source/rtl/datec.c
    + accept timestamp parameters in CMONTH() and CDOW() functions

  * harbour/source/rtl/empty.c
    + added support for timestamp items

  * harbour/source/rtl/itemseri.c
    + added support for timestamp items serialization

  * harbour/source/rtl/minmax.c
    + added support for timestamp values to MIN() and MAX() functions.
      when only one of given parameters is timestamp value and other
      is date value and date parts are equal then always date item
      is returned as both MIN() or MAX() value.

  * harbour/source/rtl/dates.c
    + added new C functions: hb_timeFormat(), hb_timeUnformat(),
      hb_timeStampFormat(), hb_timeStampUnformat()

  * harbour/source/rtl/valtype.c
    + added .prg functions: HB_ISDATETIME(), HB_ISTIMESTAMP()

  * harbour/source/rtl/transfrm.c
    + added support for timestamp items formatting.
    + added new function modifier @T.
      When @T is used without @D then only time part of timestamp value
      is formatted and return.
      When @D is used without @T then only date part of timestamp value
      is formatted and return.

  * harbour/source/rtl/tbrowse.prg
    + display timestamp values

  * harbour/source/rtl/philes.c
    + accept timestamp value as second parameter of HB_FSETDATETIME()
      function
    + store file data and time in second parameter of HB_FGETDATETIME()
      as timestamp value.
    Old parameters (2-dDate, 3-cTime) are still supported but please think
    about removing them - they are redundant.

  * harbour/source/rtl/filesys.c
    * updated function names


  * harbour/source/rdd/dbf1.c
    + added native support for time and timestamp fields

  * harbour/include/hbrddcdx.h
  * harbour/include/hbrddnsx.h
  * harbour/source/rdd/dbfntx/dbfntx1.c
  * harbour/source/rdd/dbfcdx/dbfcdx1.c
  * harbour/source/rdd/dbfnsx/dbfnsx1.c
  * harbour/source/rdd/dbffpt/dbffpt1.c
    + added support for indexing timestamp fields
    + added support for using DATE values with timestamp fields
      which replicate HVM behavior.
      SEEK and SEEKLAST with date value when active index is on
      timestamp positions to 1-st or last record where date part
      of indexed timesamp value is equal.
      Settings scopes to date values when active index is on timestamp
      value reduce the visible record range to these ones which have
      date part of timestamp value in the range of dates values used
      for scopes. It possible to mix date and timestamp values in scope
      and set one scope to date value and the second to timesamp.

  * harbour/source/rdd/sdf1.c
  * harbour/source/rdd/delim1.c
    + added support for exporting timestamp fields

  * harbour/source/rdd/dbsql.c
    ! fixed typo in logical value export
    + export timestamp fields.
      Please update the format to given SQL syntax.


  * harbour/contrib/hbct/files.c
    + changed SETFDATI() to optionally accept timestamp parameter
      instead of two parameters dDate and cTime

  * harbour/contrib/hbct/misc1.c
    + added timestamp support to XTOC() function

  * harbour/contrib/hbct/misc2.c
    + added timestamp support to COMPLEMENT() function

  * harbour/contrib/hbct/dattime2.c
    + accept timestamp values in ADDMONTH(), DOY(), ISLEAP(), QUARTER()
      LASTDAYOM(), WEEK() functions

  * harbour/contrib/hbmzip/hbmzip.c
    + updated HB_ZipFileCreate( hZip, cZipName, tDateTime, cTime, ... )
      functions to optionaly accept timestamp value in 3-rd parameter
      instead od dDate, and cTime in 3-rd and 4-th parameters.
    + updated HB_UnzipFileInfo( hUnzip, @cZipName, @tDateTime, @cTime, ... )
      to return timestamp value in 3-rd parameter instead of date value.
      TODO: Please think about removing 4-th parameter from:
               HB_ZipFileCreate( hZip, cZipName, tDateTime, cTime, ... )
               HB_UnzipFileInfo( hUnzip, @cZipName, @tDateTime, @cTime, ... )
            Now it's redundant.
  * harbour/contrib/hbmzip/readme.txt
    * updated parameters description for above functions

  * harbour/contrib/hbnf/descendn.c
    + added timestamp support to FT_DESCEND() function

  * harbour/contrib/hbclipsm/date.c
    + accept timestamp values in DATEASAGE(), DATEASARRAY() and DATEISLEAP()
      functions

  * harbour/contrib/hbmisc/dates2.c
    + accept timestamp values in ISLEAPYEAR(), DAYSINMONTH(), EOM(), BOM(),
      WOM(), WOY(), EOY() and BOY() functions


   The following contrib files should be updated but I'm leaving it to
   other developers who want to keep this code alive:
         contrib/hbtip/utils.c
         contrib/hbvpdf/hbvpdf.prg
         contrib/hbvpdf/hbvpdft.prg
         contrib/hbwin/win_dll.c
            some minor cleanups if necessary and authors will find
            timestamp values usable

         contrib/hbole/ole2.c
         contrib/hbwin/win_ole.c
            add support for timestamp values in OLE

         contrib/rddado/adordd.prg
         contrib/rddads/ads1.c
         contrib/rddads/adsx.c
         contrib/rddsql/...
            add support for timestamp values in RDDs

   Warning: this implementation is not xHarbour compatible. There are many
   important differences. Mostly on C level and used API. Please be careful
   in porting xHarbour source code to Harbour.
2009-03-21 15:04:43 +00:00
Przemyslaw Czerpak
d44fea92a9 2009-03-11 17:45 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/include/hbdate.h
  * harbour/source/common/hbgete.c
  * harbour/source/common/hbdate.c
  * harbour/source/rtl/seconds.c
  * harbour/source/rtl/hbffind.c
  * harbour/source/rtl/filesys.c
  * harbour/source/compiler/cmdcheck.c
  * harbour/contrib/hbct/files.c
  * harbour/contrib/xhb/filestat.c
  * harbour/contrib/hbmzip/hbmzip.c
  * harbour/contrib/hbtip/utils.c
  * harbour/contrib/examples/uhttpd/uhttpdc.c
    * cleaned feature test macros usage
2009-03-11 16:39:32 +00:00
Przemyslaw Czerpak
f3bf261945 2009-03-11 16:27 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/source/common/hbdate.c
  * harbour/source/compiler/cmdcheck.c
  * harbour/source/rtl/idle.c
  * harbour/source/rtl/seconds.c
  * harbour/source/rtl/fssize.c
  * harbour/source/rtl/hbffind.c
  * harbour/source/rtl/filesys.c
  * harbour/contrib/hbct/files.c
    * cleaned feature test macros usage
2009-03-11 15:22:17 +00:00
Viktor Szakats
4c6372e8ff 2009-02-11 19:40 UTC+0100 Viktor Szakats (harbour.01 syenar hu)
* doc/en/diskspac.txt
  * doc/en/terminal.txt
  * doc/en/setmode.txt
  * doc/es/diskspac.txt
  * doc/es/dirstruc.txt
  * doc/inet.txt
  * contrib/hbmysql/readme.txt
  * contrib/hbct/disk.c
  * contrib/hbtpathy/telepath.prg
  * contrib/hbole/tests/testole.prg
  * contrib/gtwvg/gtwvg.c
  * contrib/gtwvg/wvgclass.prg
  * contrib/gtwvg/gtwvg.h
  * contrib/gtwvg/wvggui.c
  * contrib/gtwvg/wvggui.h
  * contrib/gtwvg/wvgwin.c
  * contrib/gtwvg/wvgutils.c
  * contrib/gtwvg/wvgcore.c
  * contrib/hbgf/hbgfos2/winctrl.prg
  * contrib/hbgf/hbgfos2/tform.prg
  * source/common/hbver.c
  * source/rtl/run.c
  * source/rtl/gtwin/gtwin.c
  * source/rtl/oemansi.c
  * source/rtl/gtwvt/gtwvt.h
  * source/rtl/gtwvt/gtwvt.c
  * source/rtl/hbrandom.c
  * source/rtl/filesys.c
    * Win32 -> Windows. In comments / docs.
2009-02-11 18:41:31 +00:00
Przemyslaw Czerpak
013f7ab9a5 2009-02-11 02:38 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/include/hbapi.h
  * harbour/source/vm/cmdarg.c
    + added const char * hb_cmdargARGVN( int argc )

  * harbour/source/vm/cmdarg.c
    * try to convert executable file name argument in argv[0] to
      absolute path if it's relative one. Respect PATH envvar it necessary.

  * harbour/source/common/hbdate.c
    * formatting

  * harbour/source/rtl/philes.c
  * harbour/source/rtl/errorint.c
  * harbour/source/rtl/filesys.c
    ! use hb_cmdargARGVN(n) instead of hb_cmdargARGV()[n] to avoid
      possible GPF if some function will be called before argument
      initialization
    * removed additional logic which tries to convert relative paths
      in file name from hb_fsBaseDirBuff() and HB_PROGNAME() functions
2009-02-11 01:33:31 +00:00
Viktor Szakats
bd949536fe 2009-02-10 10:35 UTC+0100 Viktor Szakats (harbour.01 syenar hu)
* source/rtl/filesys.c
    ! Fixes for *NIX compilation to latest change.
      Please test. [ some more ]
2009-02-10 09:36:36 +00:00
Viktor Szakats
1c87526a47 2009-02-10 10:34 UTC+0100 Viktor Szakats (harbour.01 syenar hu)
* source/rtl/filesys.c
    ! Fixes for *NIX compilation to latest change.
      Please test.
2009-02-10 09:34:44 +00:00
Viktor Szakats
7ee8e7a80f 2009-02-10 03:52 UTC+0100 Viktor Szakats (harbour.01 syenar hu)
* contrib/hbssl/Makefile
    + Added new detection dir.

  * source/rtl/gtwvt/gtwvt.c
    + Added support for HB_GTI_BOXCP.
      (available for UNICODE builds only).

  * source/rtl/filesys.c
    + Added (untested) support for *NIX system to
      hb_fsBaseDirBuff() / HB_DIRBASE().
2009-02-10 03:19:10 +00:00
Viktor Szakats
897a02e44a 2009-02-10 01:39 UTC+0100 Viktor Szakats (harbour.01 syenar hu)
* doc/whatsnew.txt
  * include/clipdefs.h
  * include/filesys.api
  * include/gt.api
  * include/hbapi.h
  * include/hbapierr.h
  * include/hbapifs.h
  * include/hbapigt.h
  * include/hbapiitm.h
  * include/hbapirdd.h
  * include/hbdefs.h
  * include/hbgfxdef.ch
  * include/hbgtinfo.ch
  * include/hbsetup.ch
  * include/hbsetup.h
  * include/item.api
  * include/rdd.api
  * source/rtl/errorapi.c
  * source/rtl/filesys.c
  * source/vm/cmdarg.c
  * common.mak
  - source/vm/debugold.c
  * source/vm/Makefile
  * source/vm/vmmt/Makefile
    - Permanently disabled HB_LEGACY_LEVEL support.
    + Added HB_LEGACY_LEVEL2 support to protect some
      recently made incompatible changes. Old methods
      are supported until Harbour 1.2. Please update
      your code until then. To test your code for
      compatibility with recent changes, you can turn
      off legacy support manually by #defining HB_LEGACY_OFF.
      (HB_USER_CFLAGS=-DHB_LEGACY_OFF)
      This is recommended on local systems for all
      Harbour developers.
2009-02-10 00:47:50 +00:00
Viktor Szakats
b129b78a47 2009-02-06 19:03 UTC+0100 Viktor Szakats (harbour.01 syenar hu)
* include/hbdefs.h
    + Added HB_ISALNUM() macro.
    + Added HB_ISSPACE() macro. Please review.

  * source/contrib/hbver.c
    * isspace() -> HB_ISSPACE().

  * contrib/rddads/ads1.c
    ! toupper() -> HB_TOUPPER()

  * contrib/xhb/hbxml.c
    + Readded #include <ctype.h> because this one still uses isspace().

  * include/hbcomp.h
  * include/hbmacro.h
  * contrib/hbct/token1.c
  * contrib/hbodbc/odbc.c
  * contrib/xhb/freadlin.c
  * contrib/rddsql/sqlmix.c
  * contrib/gtwvg/gtwvg.h
  * contrib/gtwvg/wvggui.h
  * contrib/rddads/adsx.c
  * contrib/rddads/ads1.c
  * contrib/hbclipsm/time.c
  * contrib/hbclipsm/status.c
  * contrib/hbmisc/dates2.c
  * contrib/hbwin/win_ole.c
  * contrib/examples/pp/pp.c
  * source/debug/dbgentry.c
  * source/common/hbver.c
  * source/rtl/chrasc.c
  * source/rtl/philes.c
  * source/rtl/dirdrive.c
  * source/rtl/dateshb.c
  * source/rtl/philesx.c
  * source/rtl/disksphb.c
  * source/rtl/soundex.c
  * source/rtl/gtapi.c
  * source/rtl/filesys.c
  * source/codepage/cppt850.c
  * source/codepage/cpuawin.c
  * source/codepage/cpde850.c
  * source/codepage/cpsv850.c
  * source/codepage/cpeswinc.c
  * source/codepage/cptr857.c
  * source/codepage/cpru866.c
  * source/codepage/cproiso.c
  * source/codepage/cprowin.c
  * source/codepage/cpeswinm.c
  * source/codepage/cpes850.c
  * source/codepage/cpcs852.c
  * source/codepage/cpitisb.c
  * source/codepage/cphu852.c
  * source/codepage/cpsk852.c
  * source/codepage/cpplmaz.c
  * source/codepage/cpesisoc.c
  * source/codepage/cppliso.c
  * source/codepage/cpbgmik.c
  * source/codepage/cpplwin.c
  * source/codepage/cpbg866.c
  * source/codepage/cpltwin.c
  * source/codepage/cphu852s.c
  * source/codepage/cpptiso.c
  * source/codepage/cpel737.c
  * source/codepage/cpsrwin.c
  * source/codepage/cpsviso.c
  * source/codepage/cpdeiso.c
  * source/codepage/cpfr850.c
  * source/codepage/cpsvwin.c
  * source/codepage/cpdewin.c
  * source/codepage/cphr437.c
  * source/codepage/cpes850c.c
  * source/codepage/cphr852.c
  * source/codepage/cpua866.c
  * source/codepage/cpit850.c
  * source/codepage/cpit437.c
  * source/codepage/cpsl437.c
  * source/codepage/cpsl852.c
  * source/codepage/cphuwins.c
  * source/codepage/cpcsiso.c
  * source/codepage/cpesiso.c
  * source/codepage/cpcswin.c
  * source/codepage/cpeswin.c
  * source/codepage/cphuiso.c
  * source/codepage/cpskiso.c
  * source/codepage/cprukoi.c
  * source/codepage/cphuwin.c
  * source/codepage/cpskwin.c
  * source/codepage/cp_tpl.c
  * source/codepage/cpruiso.c
  * source/codepage/cpruwin.c
  * source/codepage/cphuisos.c
  * source/codepage/cpelwin.c
  * source/codepage/cpro852.c
  * source/codepage/cpfriso.c
  * source/codepage/cpfrwin.c
  * source/codepage/cpitiso.c
  * source/codepage/cphrwin.c
  * source/codepage/cpsliso.c
  * source/codepage/cpitwin.c
  * source/codepage/cpslwin.c
  * source/codepage/cpcskam.c
  * source/codepage/cpsvclip.c
  * source/codepage/cpbgiso.c
  * source/codepage/cptrwin.c
  * source/codepage/cpskkam.c
  * source/codepage/cpbgwin.c
  * source/codepage/cpuakoi.c
  * source/codepage/cppl852.c
  * utils/hbdoc/hbdfrdln.c
  * utils/hbmake/hbmfrdln.c
    % Removed #include <ctype.h>. Most of these didn't need it anyway.
2009-02-06 18:23:08 +00:00
Przemyslaw Czerpak
75890d9bb2 2009-02-06 11:26 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/source/rtl/philes.c
  * harbour/source/rtl/dirdrive.c
  * harbour/source/rtl/philesx.c
  * harbour/source/rtl/filesys.c
    ! fixed CURDRIVE() and DISKNAME() to not return "A" in OS-es which
      does not use drive letters
    ! eliminated toupper()
    % minor cleanup and speed improvement

  * harbour/config/bin.cf
  * harbour/config/test.cf
    * removed quoting for TOP=$(GRANDP) nested GNU make call parameters
2009-02-06 10:21:51 +00:00
Viktor Szakats
a8598c6299 2009-02-04 23:23 UTC+0100 Viktor Szakats (harbour.01 syenar hu)
* include/hbwince.h
  * include/hb_io.h
  * include/hbwmain.c
  * include/hbthread.h
  * include/hbsetup.h
  * include/hbmath.h
  * include/hbassert.h
  * contrib/gtwvg/gtwvg.c
  * contrib/gtwvg/gtwvg.h
  * contrib/gtwvg/wvggui.c
  * contrib/gtwvg/wvggui.h
  * contrib/gtwvg/wvgutils.c
  * contrib/hbwin/win_prn2.c
  * contrib/hbwin/win_dll.c
  * contrib/hbwin/win_prn1.c
  * contrib/examples/pp/pp.c
  * contrib/examples/pp/hbppcore.c
  * source/pp/hbpp.c
  * source/vm/fm.c
  * source/vm/extrap.c
  * source/main/harbour.c
  * source/common/hbver.c
  * source/common/hbwince.c
  * source/rtl/diskspac.c
  * source/rtl/hbgtcore.c
  * source/rtl/gtclip.c
  * source/rtl/gtstd/gtstd.c
  * source/rtl/disksphb.c
  * source/rtl/gtpca/gtpca.c
  * source/rtl/seconds.c
  * source/rtl/filebuf.c
  * source/rtl/hbproces.c
  * source/rtl/gtwvt/gtwvt.h
  * source/rtl/gtwvt/gtwvt.c
  * source/rtl/fssize.c
  * source/rtl/hbinet.c
  * source/rtl/gtsys.c
  * source/rtl/filesys.c
    * HB_WINCE -> HB_OS_WIN_CE.
      Now all OS branching #defines are in the HB_OS_* namespace.
      Please use the new name from now on.
2009-02-04 22:24:35 +00:00
Viktor Szakats
1d13959a7b 2009-02-04 01:09 UTC+0100 Viktor Szakats (harbour.01 syenar hu)
* include/extend.api
  * include/hbgtcore.h
  * include/hbwince.h
  * include/hbthread.h
  * include/hbdefs.h
  * include/hbsetup.h
  * include/hbapi.h
  * include/clipdefs.h
  * include/hbatomic.h
  * contrib/hbmysql/mysql.c
  * contrib/hbct/ctnet.c
  * contrib/hbct/files.c
  * contrib/hbct/dattime3.c
  * contrib/hbct/disk.c
  * contrib/hbodbc/odbc.c
  * contrib/xhb/hboutdbg.c
  * contrib/xhb/hbsyslog.c
  * contrib/xhb/filestat.c
  * contrib/hbmsql/msql.c
  * contrib/hbole/ole2.c
  * contrib/hbmzip/hbmzip.c
  * contrib/hbapollo/apollo.c
  * contrib/hbfbird/firebird.c
  * contrib/hbnf/descendn.c
  * contrib/hbnf/getenvrn.c
  * contrib/rddsql/sqlmix.c
  * contrib/gtwvg/gtwvg.c
  * contrib/gtwvg/wvggui.c
  * contrib/gtwvg/wvgwin.c
  * contrib/gtwvg/wvgutils.c
  * contrib/gtwvg/wvgcore.c
  * contrib/rddads/adsx.c
  * contrib/rddads/rddads.h
  * contrib/rddads/adsmgmnt.c
  * contrib/rddads/adsfunc.c
  * contrib/rddads/ads1.c
  * contrib/hbfimage/fi_winfu.c
  * contrib/hbfimage/fi_wrp.c
  * contrib/hbgd/gd.ch
  * contrib/hbgd/gdwrp.c
  * contrib/hbgf/hbgfwin/winapi.c
  * contrib/hbtip/utils.c
  * contrib/hbtip/ChangeLog
  * contrib/hbwin/win_prn2.c
  * contrib/hbwin/win_osc.c
  * contrib/hbwin/win_misc.c
  * contrib/hbwin/win_prt.c
  * contrib/hbwin/win_dll.c
  * contrib/hbwin/win_ole.c
  * contrib/hbwin/win_prn1.c
  * contrib/hbwin/win_regc.c
  * contrib/hbssl/sslsess.c
  * contrib/hbssl/sslrand.c
  * contrib/hbwhat/whtdate.c
  * contrib/hbwhat/whtini.c
  * contrib/hbwhat/whtcret.c
  * contrib/hbwhat/whthead.c
  * contrib/hbwhat/whtilst.c
  * contrib/hbwhat/whtreg.c
  * contrib/hbwhat/whtclpb.c
  * contrib/hbwhat/whtmous.c
  * contrib/hbwhat/whtrgn.c
  * contrib/hbwhat/whtmeta.c
  * contrib/hbwhat/whttbar.c
  * contrib/hbwhat/whtrect.c
  * contrib/hbwhat/whtbrsh.c
  * contrib/hbwhat/whtgdi.c
  * contrib/hbwhat/whtdlg.c
  * contrib/hbwhat/whtview.c
  * contrib/hbwhat/whtsys.c
  * contrib/hbwhat/whtmain.c
  * contrib/hbwhat/whtwnd.c
  * contrib/hbwhat/whtmmcap.c
  * contrib/hbwhat/whtfont.c
  * contrib/hbwhat/whtdir.c
  * contrib/hbwhat/whtbmp.c
  * contrib/hbwhat/whtkbrd.c
  * contrib/hbwhat/whtpen.c
  * contrib/hbwhat/whttext.c
  * contrib/hbwhat/whtdc.c
  * contrib/hbwhat/whtdraw.c
  * contrib/examples/uhttpd/socket.c
  * contrib/examples/uhttpd/uhttpdc.c
  * source/vm/mainwin.c
  * source/vm/maindll.c
  * source/vm/maindllh.c
  * source/vm/hvm.c
  * source/vm/cmdarg.c
  * source/vm/maindllp.c
  * source/vm/fm.c
  * source/vm/extrap.c
  * source/vm/thread.c
  * source/vm/dynlibhb.c
  * source/vm/set.c
  * source/common/hbgete.c
  * source/common/hbver.c
  * source/common/hbfsapi.c
  * source/common/hbwince.c
  * source/common/hbdate.c
  * source/rtl/diskspac.c
  * source/rtl/console.c
  * source/rtl/gtwin/gtwin.c
  * source/rtl/fserror.c
  * source/rtl/hbgtcore.c
  * source/rtl/gtclip.c
  * source/rtl/fstemp.c
  * source/rtl/idle.c
  * source/rtl/oemansi.c
  * source/rtl/disksphb.c
  * source/rtl/net.c
  * source/rtl/gtgui/gtgui.c
  * source/rtl/seconds.c
  * source/rtl/gttone.c
  * source/rtl/hbproces.c
  * source/rtl/gtkeycod.c
  * source/rtl/version.c
  * source/rtl/gtwvt/gtwvt.c
  * source/rtl/hbrandom.c
  * source/rtl/hbinet.c
  * source/rtl/hbffind.c
  * source/rtl/gtsys.c
  * source/rtl/filesys.c
  * source/rtl/gtkbstat.c
  * source/rtl/isprint.c
  * source/compiler/cmdcheck.c
  * utils/hbmake/hbmlang.c
    * #defines renamed to be bitwidth-independent.
      - HB_OS_WIN_32_USED -> HB_OS_WIN_USED
      - HB_OS_WIN_32      -> HB_OS_WIN
    ; Please modify your code accordingly.

  * include/hbdefs.h
  * include/hbsetup.h
    + Added compatibility to still understand HB_OS_WIN_32_USED,
      and to #define HB_OS_WIN_32 in addition to HB_OS_WIN.
      This means that old code will still work, but these
      compatibility features will be removed in the future,
      so it's recommended to change the code as above.
2009-02-04 00:18:56 +00:00
Viktor Szakats
1e62fb550e 2009-01-14 16:15 UTC+0100 Viktor Szakats (harbour.01 syenar hu)
* source/rtl/net.c
  * contrib/hbziparc/hbziparc.prg
  * contrib/hbct/files.c
    * Minor formatting.

  * source/rtl/gtxwc/gtxwc.c
    ! Fix to recent fix. An '!' was missing, Przemek pls check me.

  * source/rtl/philes.c
    + HB_PROGNAME() now returns absolute path in *NIX systems, too.
      (please test and refine)

  * source/lang/msgca.c
    ! Fixes from xhb.

  * contrib/hbziparc/hbziparc.prg
    * Minor correction ( = -> := )

  * source/rtl/gtwin/gtwin.c
    + Added HB_GTI_CODEPAGE support.
      As per MS docs, this works only when non-raster font is used
      in the console window. Notice that the accepted CP values are
      different from the GTWVT ones (GTWIN being the more "logical"
      one, since it's a newer API). Currently, Harbour doesn't try
      to hide these interface details.
    ; TODO: UNICODE and BOX char support for GTWIN mode.

  * source/rtl/tbrowse.prg
    * Using HB_DISPOUTATBOX() to draw column/header/footer separators.
    ; NOTE: This may cause problems if someone wants to use native
            CP (accented or other special CP specific) chars to draw
            these screen elements. Maybe an option should be added,
            or some sort of markings in the separator strings to
            control that.
            Pls REVIEW.

  * include/hbextern.ch
  * source/rtl/console.c
    + Added HB_DISPOUTATBOX() which is similar to HB_DISPOUTAT(),
      but marks the text drawn as HB_GT_ATTR_BOX, so these chars
      can be properly displayed as drawing chars, regardless of
      the selected codepage. Another difference is that this
      function only supports strings to be printed. Other types
      don't print anything.
    ; NOTE: Maybe this function could use a better name, pls
            review and decide.

  * source/rtl/gtwvt/gtwvt.c
  * source/rtl/gtwvt/gtwvt.h
    ! Fixed not accepting zero as a HB_GTI_CODEPAGE value.
    ! Fixed HB_GTI_CODEPAGE to change the codepage.
    + Added box char support in Unicode mode.
      For chars marked as HB_GT_ATTR_BOX, chars will be
      mapped to Unicode according to CP437.
    + Added box char support in non-Unicode mode.
      For chars marked as HB_GT_ATTR_BOX, OEM_CHARSET will
      always be used.
    ; NOTE: This way it's possible to use ISO/WIN codepages with
            GTWVT, while still being able to use various drawing
            chars (lines, blocks, arrows).
    ; NOTE: The available set of drawing chars depends on the
            OS OEM_CHARSET mapping _for non-Unicode Harbour_.
            For Unicode Harbour, full CP437 codepage is
            always available.
    ; NOTE: This solution doesn't go as far as (GTWXC) to
            graphically draw / emulate these chars.
    ; TODO: Add HB_GTI_BOXCP support to change hard-wired "EN" CP.

  * include/hbapigt.h
  * include/hbgtcore.h
    ! Moved HB_GT_ATTR_* macros to public headers, because they
      are needed for public API functions.

  * contrib/hbwin/win_reg.prg
    + w32_regRead(): Added second parameter to specify the default
      value returned in case the reg entry doesn't exist.
      If not specified, NIL will be returned, just like before.
    + GetRegistry(): Added 4th parameter with same purpose as above.

  * source/rtl/hbregex.c
    * Minor opt.

  * contrib/hbwin/win_misc.c
    * Added command line option parameter to WIN_RUNDETACHED().

  * include/hbapi.h
    + HB_ERRCODE (to replace ERRCODE)
    + HB_SUCCESS (to replace SUCCESS)
    + HB_FAILURE (to replace FAILURE)

  + contrib/hbwin/win_misc.c
  * contrib/hbwin/common.mak
  * contrib/hbwin/Makefile
    + WIN_SHELLEXECUTE()
      WIN_RUNDETACHED()
      WIN_LOADRESOURCE()
      Added some new Windows API wrappers.
    ; TODO: Add hb_osEncode() to them.

  * source/rtl/diskspac.c
  * source/rtl/disksphb.c
    ! Fixed DISKSPACE() and HB_DISKSPACE() for Darwin.
      Previously they had returned erroneous values.
    ; TOFIX: Probably HB_DISKSPACE() should be implemented for Watcom and CEGCC,
             just like DISKSPACE() is.

  * source/rtl/filesys.c
    ! hb_fsGetAttr() to set the returned attribute to zero
      in case of error.

  * include/hbextern.ch
  * source/rtl/philes.c
    + HB_FSETATTR( <cFileName>, @<nAttr> ) -> <lSuccess>
    + HB_FGETATTR( <cFileName>, <nAttr> ) -> <lSuccess>
    + HB_FSETDATETIME( <cFileName>, [<dDate>], [<cTime HH:MM:SS>] ) -> <lSuccess>

  * source/rtl/direct.c
    ! Fixed DIRECTORY() when called with "V" (label) parameter.
      Tested under Windows. Please test/correct for other platforms.
      On Windows, the dirspec should not contain a filemask in order
      to work.

  * contrib/hbtip/base64x.c
    % HB_BASE64(): Optimized, cleaned.
    ! HB_BASE64(): Removed second parameter allowing to pass the length of
      the string. This could cause GPF if passed incorrectly. Now length
      is simply determined using hb_parclen().
    ; TOFIX: Input string size limit checking.

  * include/hbdefs.h
    + HB_SIZEOFARRAY() macro, which does: ( sizeof( var ) / sizeof( *var ) )
      To be really precise, f.e. all hb_strncpy() calls should use
      'hb_strncpy( d, s, HB_SIZEOFARRAY( d ) );' instead of:
      'hb_strncpy( d, s, sizeof( d ) );' (given that 'd' is allocated at compile time).
      So that the code adapts to changing character sizes (like UTF-16/32).
      It's useful in some other places, too.

  * contrib/hbct/dattime2.c
    * 0 -> FALSE for BOOL types.

  * include/hbextern.ch
  * source/rtl/strmatch.c
    + HB_WILDMATCHI(). Case-instenstive, exact match. First
      two parameters and return value are the same as for
      HB_WILDMATCH().

  * include/hbextern.ch
  * source/rtl/cdpapi.c
    + HB_CDPSELECT() which does the same as HB_SETCODEPAGE(), but
      aligns well with function naming rules and namespace.
      HB_SETCODEPAGE() still works, but usage is not recommended.
    + Added HB_CDPUNIID( <cHarbourCP> ) -> <cCPName>
      This will return the std CP ID of a Harbour CP, or empty
      if the Harbour CP isn't linked.

  * include/hbapi.h
  * source/rtl/is.c
    ! Fixed compile error when HB_CDP_SUPPORT_OFF is defined.
    + Added following functions:
      hb_charIsDigit()
      hb_charIsAlpha()
      hb_charIsLower()
      hb_charIsUpper()

  * include/hbapi.h
    - hb_strUpperCopy() removed. Implementation was missing.

  * source/rtl/strcase.c
    * Minor formatting.

  * source/rtl/filesys.c
    ! hb_fsCurDirBuff() fixed potential buffer overrun by one byte.

  * source/rtl/hbrunfun.c
  * source/rtl/run.c
    ! Fixed missing header hbapiitm.h (after previous local change).

  * include/hbapi.h
  * include/hbset.h
  * include/hbapifs.h
  * include/set.ch
  * source/rtl/hbffind.c
  * source/rtl/gete.c
  * source/rtl/filesys.c
  * source/rtl/hbrunfun.c
  * source/rtl/run.c
  * source/rtl/philes.c
  * source/vm/set.c
  * source/vm/cmdarg.c
    + Added file system CP translation.
      Set( _SET_FNAMECP[, <cCPID> ] ) -> <cOldCPID>
      All operations passing filenames to/from the
      OS will convert them to/from the host CP from/to
      the FS CP specified using _SET_FNAMECP.
    * hb_fsNameConv() extended to deal with CP
      conversion, if requested by the app.
    + hb_fsNameConvFrom() (exported) added to deal
      with CP conversions for filenames received from OS.
    + hb_fsNameConvTo() (exported) added to deal
      with CP conversions for filenames/string sent to the OS.
    + Added hb_setGetFNAMECP() (exported) function.
    + Added hb_setGetFileCPTransTo(), hb_setGetFileCPTransFrom()
      (non-exported) functions.
    + hb_fsCurDirBuff() and hb_fsFindNextLow() extended
      to use hb_fsNameConvFrom().
    + Added hb_fsBaseDirBuff() to return the base
      directory on the C level (based on argv[0]).
    + Added HB_PROGNAME() to return the executable
      program name (based on argv[0]).
    + Added HB_DIRBASE() to return the executable
      base directory (based on argv[0]).
    * Renames done regarding OS/FS CP conversion:
      hb_fsNameConvFrom()        -> hb_osDecode()
      hb_fsNameConvTo()          -> hb_osEncode()
      hb_setGetFileCPTransTo()   -> -
      hb_setGetFileCPTransFrom() -> -
      hb_setGetFNAMECP()         -> hb_setGetOSCODEPAGE()
      _SET_FNAMECP               -> _SET_OSCODEPAGE
    * hb_osDecode()/hb_osEncode() extended to have a second
      parameter BOOL * fFree.
       Changed all calls to handle the case when fFree is set
      to TRUE by hb_osDecode()/hb_osEncode().
    + HB_GETENV(): Added 3rd logical parameter to control wether
      to convert the returned value from OS CP to Harbour CP.
      The default is TRUE to be in sync with GETE[NV]() and the
      rest of core.
    * hb_fsNameConv() is now doing OS CP conversion using std APIs,
      rather than duplicating such logic. I've traded some speed
      for modularity.
    * hb_osDecode/hb_osEncode() function declarations moved to hbapi.h
    * hb_osDecode/hb_osEncode() function definitions moved to set.c
    ; NOTE: None of these were extensively tested, and I tend
            to make mistakes when dealing with pointers.
            It compiles cleanly with BCC, and some basic tests
            worked, but bFree = TRUE codepaths are not yet
            working so this needs more review.

  * source/rtl/teditor.prg
  * source/rtl/tpersist.prg
  * utils/hbmake/hbmake.prg
    * MemoRead() -> hb_MemoRead()

  * contrib/hbct/files.c
    ; TOFIX: Many functions here are possibly not thread safe.
    ; TOFIX: Calling hb_fsFindClose() at app exit (and thus keeping
             the FF handles open for the whole app lifetime) doesn't
             play well with server side apps (as the app may run for
             months or even longer), and even worse, they
             will lock the passed directory so that they cannot be
             removed (maybe even renamed), until the app exists.
             At least on Windows.

  * source/rtl/dirdrive.c
    ! Fixed to use F_ERROR instead of -1.

  * include/hbextern.ch
    ! Added missing HB_GCSTEP().

  * source/vm/extrap.c
    + Added CPU dump code for Windows x64.
    + Enabled module listing for Windows 64-bit platforms.
    % Minor cleanup in Windows x86 CPU dump code.
    + Added TODO for Windows IA64 CPU dump.
    + Added TODO for Windows x64 stack walk, with pointers.
    + Added TOFIX regarding displaying module names in Windows x64 mode.

  * source/rtl/fstemp.c
    ! Minor formatting.

  * source/rtl/gete.c
  * source/rtl/run.c
  * source/rtl/hbrunfun.c
  * source/vm/cmdarg.c
    + Added CP conversion to:
      GETE[NV](), HB_GETENV(), __RUN(), HB_RUN(),
      HB_ARGSTRING(), HB_CMDLINE().

  ; TODO: dbCreateTemp( <cAlias>, <aStruct>, <cRDD>, <cDelimArg>, <nConnection> ) -> <lSuccess>
          Generates and opens a new dbf with a temporary filename
          in exclusive mode, deletes it automatically when closed.
          All indexes created for this table, should ideally have
          the temporary flag on, so those get deleted too, when closed.

  ; TOFIX: hb_regex*() functions will not honor Harbour CP setting,
           when case insensitivity is selected.

  ; TOFIX: hbct / SetFDaTi() to move any local logic into Harbour core
           functions and use a simple Harbour API call only.
           I'm not sure what is the reason with keeping the logic
           duplicated here; if this isn't by intent, this function
           could be much simplified.

  ; TOFIX: Avoid using C level toupper()/tolower()/islower()/isupper()

  ; TOFIX: hb_regexMatch()'s 3rd parameter has a double meaning.
           It controls case-sensitivity (in sync with the documentation),
           but it also controls if hb_regexMatch() behaves like
           hb_regexLike() (.T.), or hb_regexHas() (.F.). This means
           that hb_regexMatch(,, .T.) == hb_regexLike(,, .T.) (case-sensitive) and
                hb_regexMatch(,, .F.) == hb_regexHas(,, .F.) (case-insensitive)
           Maybe this was the intent of the original developers, but
           to me it looks a rather strange behaviour which was added by
           accidentally forgetting about the 3rd parameter already being
           utilized. This either needs to be fixed, or properly documented.

  ; NOTE: Noteworthy links:
          http://docs.python.org/3.0/whatsnew/3.0.html
            - Unicode/text section
            - Removed <> (use != instead)
          http://sphinx.pocoo.org/
            - Documentation format
          http://fredeaker.blogspot.com/2007/01/character-encoding-detection.html
            - Character encoding detection
2009-01-14 15:32:43 +00:00
Przemyslaw Czerpak
06c4d78cb4 2009-01-09 01:24 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/source/rtl/hbntos.c
  * harbour/source/rtl/hbrandom.c
    * removed dummy spaces

  * harbour/source/rtl/filesys.c
    * updated HB_TRACE messages

  * harbour/source/rdd/dbfntx/dbfntx1.c
  * harbour/source/rdd/dbfnsx/dbfnsx1.c
    * return pure index name without path and extension for DBOI_BAGNAME just
      like DBFCDX does. It's not Clipper compatible but looks that people
      expects ordBagName() behavior implemented in COMIX CDX driver (CL53).
      Full index name can be accessed by DBOI_FULLPATH.
      If you think it's wrong and we should keep CL52 DBFNTX behavior then
      I can revert it but I will want to also change DBFCDX to keep
      ordBagName() compatible core RDDs.
      Please let me know your preferences.

  * harbour/contrib/hbtpathy/telepath.prg
    ! replaced ThreadSleep() with hb_idleSleep()
2009-01-09 00:21:25 +00:00
Przemyslaw Czerpak
6b668123d6 2008-12-19 19:46 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/source/rtl/filesys.c
    * do not respect _SET_PATH when hb_{file|fs}ExtOpen() is called
      with create file attributes - Clipper compatibility.

  * harbour/source/vm/set.c
    * recognize files starting with "/dev/" as devices in *nixes
    * check if given file name is a name of existing device (character,
      block, fifo, socket) in *nix builds
    * ignore _SET_DEFAULT and default extension in _SET_PRINTFILE,
      _SET_ALTFILE and _SET_EXTRAFILE when given file name is device name.
      In DOS/Windows/OS2 builds devices are recognized by name:
      "PRN", "CON", "LPT[1-3]", "COM[1-9]"
2008-12-19 18:44:35 +00:00
Przemyslaw Czerpak
4c56ab22f8 2008-12-19 04:30 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/contrib/hbmysql/tmysql.prg
  * harbour/contrib/hbpgsql/pgrdd.prg
  * harbour/contrib/hbpgsql/tpostgre.prg
    ! fixed unused variables and meaningless assignment detected by new
      compiler extension - many thanks to Mindaugas for it.

  * harbour/include/hbsetup.h
    + added macros for some function attributes which can be used in
      the future for optimizations

  * harbour/source/rtl/filesys.c
    * formatting

  * harbour/source/rtl/hbtoken.c
    * changed the behavior of " " token delimiter - now it works as
      any other tokens. The old behavior can be still reach using empty
      string "" as token delimiter. "" is not default token.

  * harbour/utils/hbtest/hbtest.prg
    * change error object to text conversion in hbtest so now it detects also
      differences which were ignored by previous version, f.e. OPERATION
      wrongly used instead of FILENAME or wrongly set TRIES flag.

  * harbour/utils/hbtest/hbtest.prg
  * harbour/utils/hbtest/rt_trans.prg
  * harbour/utils/hbtest/rt_math.prg
  * harbour/utils/hbtest/rt_hvm.prg
  * harbour/utils/hbtest/rt_misc.prg
  * harbour/utils/hbtest/rt_hvma.prg
  * harbour/utils/hbtest/rt_class.prg
  * harbour/utils/hbtest/rt_str.prg
  * harbour/utils/hbtest/rt_stra.prg
  * harbour/utils/hbtest/rt_date.prg
  * harbour/utils/hbtest/rt_array.prg
    * updated for extended error messages, tested with Harbour, Cl52/53

  * harbour/include/hbapierr.h
  * harbour/source/rtl/errorapi.c
    + added hb_errRT_FileError() used in file errors
    ! fixed TRIES counter updating when RETRY flag is set - it should
      be done before calling error block not after - detected by new
      hbtest error messages
    ; TOFIX: in practice all errors with RETRY flag generated by
             other hb_errRT_*() functions have to be fixed because
             new error object is created each time and informations
             from previous one are lost, f.e. TRIES counter or CARGO
             value set by user. They should be reimplemented in similar
             way to hb_errRT_FileError()

  * harbour/source/vm/memvars.c
  * harbour/source/rtl/copyfile.c
  * harbour/source/vm/set.c
    ! fixed wrong error messages detected by new hbtest in _SET_PRINTFILE,
      _SET_ALTFILE and _SET_EXTRAFILE
    ; TOCHECK - Does CA-Cl*pper respect _SET_DEFAULT in above SETs?
2008-12-19 03:28:10 +00:00
Przemyslaw Czerpak
ae5075fa5b 2008-11-10 00:20 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/config/rules.cf
    ! fixed recursive HB_FLAGS declaration

  * harbour/include/hbdefs.h
  * harbour/include/hbsetup.h
  * harbour/include/hbtrace.h
    * declared hb_tr_trace() parameters as printf() compatible in GCC
      builds. It enabled format string with parameters validation

  * harbour/source/rtl/errorapi.c
    ! fixed GPF caused by HB_ERR_FUNCNAME which is not longer valid
      string

  * harbour/source/vm/itemapi.c
  * harbour/source/vm/hvm.c
  * harbour/source/vm/arrays.c
  * harbour/source/vm/memvars.c
  * harbour/source/vm/eval.c
  * harbour/source/vm/extend.c
  * harbour/source/vm/set.c
  * harbour/source/debug/dbgentry.c
  * harbour/source/rtl/gtwin/gtwin.c
  * harbour/source/rtl/gtxwc/gtxwc.c
  * harbour/source/rtl/hbgtcore.c
  * harbour/source/rtl/gtcrs/gtcrs.c
  * harbour/source/rtl/gtstd/gtstd.c
  * harbour/source/rtl/gtsln/gtsln.c
  * harbour/source/rtl/gttrm/gttrm.c
  * harbour/source/rtl/gtpca/gtpca.c
  * harbour/source/rtl/gtcgi/gtcgi.c
  * harbour/source/rtl/gtwvt/gtwvt.c
  * harbour/source/rtl/filesys.c
  * harbour/source/rdd/dbf1.c
  * harbour/source/rdd/dbffpt/dbffpt1.c
  * harbour/contrib/gtalleg/gtalleg.c
  * harbour/contrib/xhb/freadlin.c
  * harbour/contrib/gtwvg/gtwvg.c
  * harbour/contrib/rddads/adsfunc.c
  * harbour/contrib/rddads/ads1.c
  * harbour/contrib/hbwin/win_ole.c
  * harbour/utils/hbdoc/hbdfrdln.c
  * harbour/utils/hbmake/hbmfrdln.c
    ! fixed bugs in HB_TRACE massages reported in GCC builds
2008-11-09 23:20:16 +00:00
Viktor Szakats
69952de84f 2008-11-09 20:58 UTC+0100 Viktor Szakats (harbour.01 syenar hu)
* include/hbdefs.h
  * include/hbapigt.h
  * source/common/hbfsapi.c
  * source/rtl/console.c
  * source/rtl/fserror.c
  * source/rtl/fstemp.c
  * source/rtl/gtstd/gtstd.c
  * source/rtl/gtpca/gtpca.c
  * source/rtl/filesys.c
    * Macro rename:
      - HB_WIN32_IO_OFF -> HB_IO_WIN_OFF
      - HB_WIN32_IO     -> HB_IO_WIN
    ; NOTE: INCOMPATIBLE if someone happens to disable 
            Windows native IO. Users don't normally 
            needs this though.
2008-11-09 19:59:39 +00:00
Viktor Szakats
618407cbec 2008-11-09 17:03 UTC+0100 Viktor Szakats (harbour.01 syenar hu)
* contrib/gtwvg/wvgcore.c
  * contrib/gtwvg/wvgutils.c
  * contrib/hbwin/win_dll.c
  * contrib/hbwin/win_ole.c
  * contrib/xhb/cstructc.c
  * contrib/xhb/dbgfxc.c
  * source/common/hbarch.c
  * source/common/hbdate.c
  * source/common/hbfsapi.c
  * source/common/hbstr.c
  * source/common/hbver.c
  * source/common/hbverdsp.c
  * source/debug/dbgentry.c
  * source/main/harbour.c
  * source/rdd/dbf1.c
  * source/rdd/nulsys/nulsys.c
  * source/rdd/wacore.c
  * source/rdd/wafunc.c
  * source/rdd/workarea.c
  * source/rtl/cdpapi.c
  * source/rtl/console.c
  * source/rtl/dates.c
  * source/rtl/errorint.c
  * source/rtl/file.c
  * source/rtl/filesys.c
  * source/rtl/fscopy.c
  * source/rtl/fserror.c
  * source/rtl/fstemp.c
  * source/rtl/gtapi.c
  * source/rtl/gtapiu.c
  * source/rtl/hbadler.c
  * source/rtl/hbcrc.c
  * source/rtl/hbffind.c
  * source/rtl/hbgtcore.c
  * source/rtl/hbmd5.c
  * source/rtl/inkeyapi.c
  * source/rtl/isprint.c
  * source/rtl/math.c
  * source/rtl/mouseapi.c
  * source/rtl/seconds.c
  * source/rtl/setcolor.c
  * source/rtl/setcurs.c
  * source/rtl/strmatch.c
  * source/vm/hvm.c
    % Removed HB_EXPORT from function definitions.
      Placing it in declaration is enough.

  * source/debug/dbgentry.c
    * Formatting.
2008-11-09 16:06:36 +00:00
Viktor Szakats
294d83814d 2008-11-02 14:28 UTC+0200 Viktor Szakats (harbour.01 syenar hu)
* include/hbextern.ch
    ! Added all missing LANG and CODEPAGE modules.
      [TOMERGE 1.0]

  * ChangeLog
    - Removed duplicate entry of mine.

  * source/common/hbstr.c
  * source/rtl/version.c
  * source/rtl/filesys.c
    * Minor formatting.

  * source/codepage/cpcs852.c
  * source/codepage/cpsk852.c
  * source/codepage/cpcsiso.c
  * source/codepage/cpcswin.c
  * source/codepage/cpskiso.c
  * source/codepage/cpskwin.c
  * source/codepage/cpcskam.c
  * source/codepage/cpskkam.c
    * Removed unnecessary ending ';'
2008-11-02 13:29:00 +00:00
Przemyslaw Czerpak
5064f64927 2008-11-02 12:25 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/source/vm/dynlibhb.c
    * forced casting in OS2 builds to eliminate problems with possible
      differences between compilers in 'char' type sign

  * harbour/source/rtl/filesys.c
    ! use _getcwd1() only in GCC OS2 builds - it's local GCC function
    * removed some header files from OS2 build - please test if it does
      not break GCC builds
2008-11-02 11:24:58 +00:00
Przemyslaw Czerpak
ecc87c1bf3 2008-10-31 13:54 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/source/vm/dynlibhb.c
  * harbour/source/common/hbgete.c
  * harbour/source/common/hbfsapi.c
  * harbour/source/rtl/hbinet.c
  * harbour/source/rtl/hbffind.c
  * harbour/source/rtl/filesys.c
  * harbour/contrib/hbct/files.c
  * harbour/contrib/hbmzip/hbmzip.c
  * harbour/contrib/hbgf/hbgfos2/os2pm.c
    * cleanup casting in OS2 builds (use PCSZ/PSZ)
2008-10-31 12:53:52 +00:00
Przemyslaw Czerpak
47ed35ee5c 2008-10-22 17:45 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/bin/hbmk.bat
    * simple modification to make beginning hbmk parameters (-mt and -gui)
      position independent though they still have to be used before Harbour/
      C compiler switches and filenames

  * harbour/source/common/hbdate.c
  * harbour/source/compiler/cmdcheck.c
  * harbour/source/rtl/filesys.c
  * harbour/source/rtl/hbffind.c
    ! use MT safe localtime_r() function if it's available instead of
      localtime()
      TODO: clean the usage of this function and gmttime[_r]() probably
      by adding our own wrappers.

  * harbour/source/rtl/hbffind.c
    ! disabled calls to tzset() - this function should be executed
      automatically by CRTL only if it's necessary. It's also not MT
      safe and can cause MT applications crash.
2008-10-22 15:45:36 +00:00
Przemyslaw Czerpak
0cef1d4902 2008-10-21 22:18 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/include/hbapigt.h
  * harbour/source/rtl/console.c
  * harbour/source/rtl/filesys.c
    * use HB_STD{IN,OUT,ERR}_HANDLE macros instead of hard coded values

  * harbour/include/hbgtcore.h
  * harbour/source/rtl/hbgtcore.c
  * harbour/source/rtl/gtapi.c
    + added optional support for dynamic supertables
    + added reference counter to HB_GT_BASE structure
    - removed hb_gtUnLoad() function
    + added hb_gtAlloc(), hb_gtRelease(), hb_gtAttach()
    + added hb_gtRealod() function which unloads current GT driver
      and loads given new one
    + added .prg function HB_GTRELOAD( <cGtName> ) -> <lSuccess>
      This function allow to switch active GT driver at run time.
      It can be also used to simulate removed HB_NOSTARTUPWINDOW()
      functionality. F.e.:

         REQUEST HB_GT_WVT
         REQUEST HB_GT_NUL_DEFAULT
         proc main()
            // do some initializations...
            hb_gtReload( "WVT" )
            // rest of code...
         return

      Please remember that some GTs may refuse initialization due to
      missing required resources and instead of return FALSE they can
      interrupt program with internal error, just like at application
      startup so it's not guarantied that this function always returns.

  * harbour/contrib/hbct/ctwin.c
    * updated for new GT API
    + added support for dynamic supertable to allow using CTWIN in the
      same time with different GTs.

  * harbour/contrib/xhb/hbcompat.h
    - removed hb_retclenAdoptRaw translation
2008-10-21 20:19:00 +00:00
Miguel Angel Marchuet Frutos
08be73b95c 2008-10-21 13:17 UTC+0100 Miguel Angel Marchuet <miguelangel@marchuet.net>
* contrib/xhb/hbcompat.ch
  * contrib/xhb/hbcompat.h
    + added compatibilities.
  * include/fileio.ch
  * source/rtl/filesys.c
    * minor sintax correction.
2008-10-21 11:16:35 +00:00
Viktor Szakats
10ddbcf1f4 2008-10-19 09:34 UTC+0200 Viktor Szakats (harbour.01 syenar hu)
* source/rtl/filebuf.c
  * source/rtl/filesys.c
    ! Fixed -W4 warnings.

  * source/rtl/tclass.prg
  * source/rtl/tsymbol.prg
    ! Fixed mistakes in recent commit.
2008-10-19 07:35:06 +00:00
Viktor Szakats
31c5f289d9 2008-10-11 20:54 UTC+0200 Viktor Szakats (harbour.01 syenar hu)
* include/hbapierr.h
    ! Fixed previous casting fix.

  * source/rtl/console.c
  * source/rtl/philes.c
    % Optimized by using static buffers and hb_retc_const():
      HB_OSNEWLINE()
      HB_OSPATHSEPARATOR()
      HB_OSPATHLISTSEPARATOR()
      HB_OSPATHDELIMITERS()
      HB_OSDRIVESEPARATOR()
      HB_OSFILEMASK()

  * source/rtl/filesys.c
    ! hb_fsDisableWaitLocks() made static.
2008-10-12 18:55:12 +00:00
Przemyslaw Czerpak
aeb6b8686e 2008-10-11 03:06 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/include/hbapigt.h
  * harbour/source/rtl/gtapi.c
    + added hb_gtDrawBox() works like hb_gtBox() but does not change cursor
      posiion and support colors
    + added support for color parameter to hb_gtPutText()

  * harbour/source/rtl/console.c
    * use new hb_gtPutText() format in HB_DISPOUTAT()
      Now all screen operations inside this function is one atomic
      operation for other threads

  * harbour/source/rtl/box.c
    + added HB_DISPBOX() function - works like DISPBOX() bit does not
      change cursor position and is atomic for other threads


  * harbour/include/hbapigt.h
  * harbour/include/hbgtcore.h
  * harbour/source/rtl/hbgtcore.c
  * harbour/source/rtl/gtclip.c
  * harbour/source/rtl/gtdos/gtdos.c
  * harbour/source/rtl/gtwin/gtwin.c
  * harbour/source/rtl/gtxwc/gtxwc.c
  * harbour/source/rtl/gtcrs/gtcrs.c
  * harbour/source/rtl/gtstd/gtstd.c
  * harbour/source/rtl/gtsln/gtsln.c
  * harbour/source/rtl/gttrm/gttrm.c
  * harbour/source/rtl/gtpca/gtpca.c
  * harbour/source/rtl/gtcgi/gtcgi.c
  * harbour/source/rtl/gtwvt/gtwvt.c
  * harbour/contrib/gtalleg/gtalleg.c
  * harbour/contrib/gtalleg/ssf.h
  * harbour/contrib/gtalleg/ssf.c
  * harbour/contrib/gtwvg/gtwvg.c
    * cleanup char * casting

  * harbour/source/rtl/filesys.c
    ! do not use pread()/pwrite() in OpenWatcom Linux builds
2008-10-11 01:06:39 +00:00
Przemyslaw Czerpak
f51b6c2f24 2008-10-10 21:22 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/source/vm/garbage.c
    * unblock HVM before executing destructors and releasing blocks

  * harbour/source/vm/fm.c
    ! do not call internal error with active lock when FM statistic
      is enabled

  * harbour/source/vm/thread.c
    ! stop other threads in hb_threadOnce() if the 1-st one
      executes bAction block to be sure that it will be completed
      before thread leave hb_threadOnce() function

  * harbour/source/vm/set.c
    ! do not call hb_inkeyReset() in set release. It's not necessary
      and it could change keyboard buffer size for other threads using
      the same GT driver.

  * harbour/source/vm/hvm.c
    % allocate new thread stack without lock

  * harbour/source/rtl/hbgtcore.c
  * harbour/source/rtl/gtapi.c
    * moved clipboard resetting from hbgtcore.c to gtapi.c

  * harbour/source/rtl/filesys.c
    ! do not use read/write operations with given file offset in Win9X
      which seems to not support such functionality
2008-10-10 19:23:11 +00:00
Viktor Szakats
c3c9bc4e89 2008-10-09 09:57 UTC+0200 Viktor Szakats (harbour.01 syenar hu)
* include/hbextern.ch
    + Added missing HB_DISABLEWAITLOCKS().
    ; NOTE: This looks like a hack to add FLX_WAIT flag 
            for locks app-wide, and on Windows systems only.
            IMO we should not have such hacks in core, or if 
            this is really important it should support all 
            possible platforms.
            It also has a low-level function equivalent, 
            which is missing from hbapifs.h. There is no 
            reference to these function in any Harbour or 
            xhb changelogs.
            If there are no objections, I'd like remove 
            this functionality.

  * source/rtl/hbrandom.c
  * source/rtl/filesys.c
    * Minor formatting.
2008-10-09 08:06:47 +00:00
Przemyslaw Czerpak
423391977e 2008-10-06 02:18 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/tests/speedtst.prg
    * marked T054 as memory tests

  * harbour/source/vm/hvm.c
  * harbour/source/vm/thread.c
    * added hb_threadOnce( @<onceControl> [, <bAction> ] ) -> <lFirstCall>
      This function allow to execute some code only once. It's usefull in
      MT environment for initialization.
      <onceControl> is variable which holds the execution status and have
      to be initialized to NIL. In most of cases it will be simple static
      variable in user code.
      <bAction> is optional codeblock which is executed only once (on 1-st
      call with given <onceControl>)

  * harbour/source/rtl/filesys.c
    ! do not make any file name conversions in hb_fsNameConv() if HVM stack
      is not allocated

  * harbour/source/rtl/gtcrs/gtcrs.c
    * casting
2008-10-06 00:19:10 +00:00