9e1b00d011c7e598c1166af8da170231749bbb38
71 Commits
| Author | SHA1 | Message | Date | |
|---|---|---|---|---|
|
|
e43cdcc5cd |
2012-06-07 00:23 UTC+0200 Viktor Szakats (harbour syenar.net)
* contrib/xhb/bkgtsks.c
* doc/en/hb_api.txt
* doc/en/hb_apird.txt
* include/hbapi.h
* include/hbapicls.h
* include/hbapierr.h
* include/hbapirdd.h
* include/hbcompdf.h
* include/hbstack.h
* include/hbtypes.h
* include/hbvmpub.h
* src/rdd/nulsys/nulsys.c
* src/rdd/wafunc.c
* src/rtl/idle.c
* src/rtl/type.c
* src/vm/arrays.c
* src/vm/classes.c
* src/vm/estack.c
* src/vm/garbage.c
* src/vm/hvm.c
* src/vm/itemapi.c
* src/vm/macro.c
* src/vm/maindllp/dllext.c
* src/vm/memvars.c
% HB_ITEM_PTR -> PHB_ITEM
* HB_ITEM_PTR, PHB_CODEBLOCK and HB_BASEARRAY_PTR marked
with HB_LEGACY_LEVEL4, latter two were unused
inside Harbour SVN.
* contrib/xhb/bkgtsks.c
* src/vm/dynsym.c
% two more local pointer type synonyms deleted
|
||
|
|
3f3973cf40 |
2010-10-09 19:07 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/include/hbapirdd.h
+ added new field flag: HB_FF_UNICODE
* harbour/contrib/rddads/ads1.c
+ added support for new ADS 10.0 UNICODE fields: NChar, NVarChar, NMemo
They are supported in all ADS* RDDs.
|
||
|
|
c429bee405 |
2010-09-29 02:08 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/include/hbapirdd.h
* harbour/src/rdd/workarea.c
+ added new 5-th parameter with pointer to super table ID to
<RDD>_GETFUNCTABLE() function
+ added new C function hb_rddInheritEx() which allows to retrieve
super RDD ID during registration.
+ added new C function:
HB_BOOL hb_rddIsDerivedFrom( HB_USHORT uiRddID,
HB_USHORT uiSupperRddID );
which returns HB_TRUE if one of uiRddID ancestors is uiSupperRddID
* harbour/src/rdd/dbf1.c
* harbour/src/rdd/delim1.c
* harbour/src/rdd/sdf1.c
* harbour/src/rdd/dbffpt/dbffpt1.c
* harbour/src/rdd/dbfntx/dbfntx1.c
* harbour/src/rdd/dbfnsx/dbfnsx1.c
* harbour/src/rdd/dbfcdx/dbfcdx1.c
* harbour/src/rdd/usrrdd/usrrdd.c
* harbour/src/rdd/usrrdd/rdds/arrayrdd.prg
* harbour/src/rdd/usrrdd/rdds/dbtcdx.prg
* harbour/src/rdd/usrrdd/rdds/fptcdx.prg
* harbour/src/rdd/usrrdd/rdds/hscdx.prg
* harbour/src/rdd/usrrdd/rdds/vfpcdx.prg
* harbour/src/rdd/usrrdd/rdds/logrdd.prg
* harbour/src/rdd/usrrdd/rdds/rlcdx.prg
* harbour/src/rdd/usrrdd/rdds/smtcdx.prg
* harbour/contrib/rddbmcdx/bmdbfcdx.c
* harbour/contrib/rddsql/sqlbase.c
* harbour/contrib/rddsql/sqlmix.c
* harbour/contrib/rddads/adsx.c
* harbour/contrib/rddads/ads1.c
* respect new parameter in <RDD>_GETFUNCTABLE() and use
hb_rddInheritEx() instead of hb_rddInherit()
* harbour/contrib/rddads/ads1.c
* use hb_rddIsDerivedFrom() to recognize RDDs which inherits from
one of ADS* RDDs.
It should resolve some problems with ADS*X RDDs and help to simplify
ADS*X RDDs code.
Please test it and update ADS*X code removing some code which is
not longer necessary.
|
||
|
|
2fa7ba29cf |
2010-06-03 16:43 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
* package/winuni/mpkg_win_uni.nsi
* 2.0 -> 2.1
* src/hbextern/hbextern.prg
* src/pp/pplib.c
* src/pp/ppcore.c
* src/pp/pplib2.c
* src/pp/hbpp.c
* src/pp/pplib3.c
* src/main/harbour.c
* src/debug/dbgtwin.prg
* src/debug/dbghelp.prg
* src/debug/dbgtmenu.prg
* src/debug/dbgtmitm.prg
* src/debug/dbgtobj.prg
* src/debug/dbgbrwsr.prg
* src/debug/dbgmenu.prg
* src/debug/dbgthsh.prg
* src/debug/tbrwtext.prg
* src/debug/dbgwa.prg
* src/debug/debugger.prg
* src/debug/dbgtarr.prg
* src/debug/dbgtinp.prg
* src/common/hbgete.c
* src/common/hbffind.c
* src/common/hbver.c
* src/common/hbwin.c
* src/common/hbtrace.c
* src/common/funcid.c
* src/common/hbfsapi.c
* src/common/hbprintf.c
* src/common/hbverdsp.c
* src/common/hbwince.c
* src/common/hbfopen.c
* src/common/expropt1.c
* src/common/hbstr.c
* src/common/expropt2.c
* src/common/hbdate.c
* src/common/hbmem.c
* src/common/strwild.c
* src/common/hbhash.c
* src/nortl/nortl.c
* src/macro/macro.yyc
* src/macro/macro.y
* src/macro/macrolex.c
* src/compiler/compi18n.c
* src/compiler/hbmain.c
* src/compiler/ppcomp.c
* src/compiler/hbfix.c
* src/compiler/cmdcheck.c
* src/compiler/hbdbginf.c
* src/compiler/hbpcode.c
* src/compiler/genhrb.c
* src/compiler/complex.c
* src/compiler/hbdead.c
* src/compiler/hbcomp.c
* src/compiler/genobj32.c
* src/compiler/genc.c
* src/compiler/hbopt.c
* src/compiler/hbident.c
* src/compiler/hbusage.c
* src/compiler/gencc.c
* src/compiler/hbcmplib.c
* src/compiler/hblbl.c
* src/compiler/harbour.yyc
* src/compiler/hbstripl.c
* src/compiler/harbour.y
* src/compiler/hbfunchk.c
* src/compiler/hbgenerr.c
* include/hbpp.h
* include/set.ch
* include/achoice.ch
* include/hbrdddbf.h
* include/hbstdgen.ch
* include/hbvmpub.h
* include/hbgtinfo.ch
* include/vm.api
* include/hbpcode.h
* include/hbset.h
* include/hbver.h
* include/hbtrace.h
* include/extend.api
* include/hbapicdp.h
* include/hbrddnsx.h
* include/button.ch
* include/hbstack.h
* include/item.api
* include/inkey.ch
* include/hbapilng.h
* include/hbhrb.ch
* include/tbrowse.ch
* include/common.ch
* include/rdd.api
* include/gt.api
* include/hbgtcore.h
* include/dbinfo.ch
* include/hbundoc.api
* include/hbapifs.h
* include/hbtask.h
* include/hbsetup.ch
* include/hbwince.h
* include/hbvmopt.h
* include/hb_io.h
* include/hbthread.h
* include/hbxvm.h
* include/setcurs.ch
* include/hbdefs.h
* include/hbmsgreg.h
* include/dbedit.ch
* include/hblang.ch
* include/filesys.api
* include/hbdebug.ch
* include/hbextcdp.ch
* include/hbsetup.h
* include/hbmacro.h
* include/hbzlib.ch
* include/hbinit.h
* include/hbtypes.h
* include/hbmacro.ch
* include/hbusrrdd.ch
* include/hbrddsdf.h
* include/hbgtreg.h
* include/hbwinuni.h
* include/hbapi.h
* include/simpleio.ch
* include/hbmemory.ch
* include/hbpers.ch
* include/error.ch
* include/hb.ch
* include/hbapiitm.h
* include/hbmath.h
* include/hbmath.ch
* include/memoedit.ch
* include/hbvmint.h
* include/hbver.ch
* include/fileio.ch
* include/rddsys.ch
* include/hbrddntx.h
* include/hbapicom.h
* include/hbatomic.h
* include/extend.h
* include/hbznet.h
* include/hbvm.h
* include/std.ch
* include/hbapidbg.h
* include/hbmemvar.ch
* include/hbcomp.h
* include/hbapirdd.h
* include/hbextlng.ch
* include/color.ch
* include/hbcompdf.h
* include/hbclass.ch
* include/hbsxdef.ch
* include/hbmather.h
* include/dbstruct.ch
* include/hbsocket.ch
* include/hbdyn.ch
* include/hbrdddel.h
* include/hbtrace.ch
* include/error.api
* include/hbapistr.h
* include/hbwmain.c
* include/hbexpra.c
* include/hbexprop.h
* include/hbiniseg.h
* include/hbgfx.ch
* include/hbsocket.h
* include/hbchksum.h
* include/hbdbf.h
* include/hbbfish.h
* include/hbdbsort.h
* include/hbcdpreg.h
* include/hbapigt.h
* include/hbfloat.h
* include/hbgfxdef.ch
* include/hbsix.ch
* include/hbextern.ch
* include/hbapicls.h
* include/hberrors.h
* include/directry.ch
* include/clipdefs.h
* include/hboo.ch
* include/box.ch
* include/hbinkey.ch
* include/hbapierr.h
* include/hbhash.h
* include/assert.ch
* include/hbassert.h
* include/getexit.ch
* include/reserved.ch
* include/hbregex.h
* include/fm.api
* include/hbthread.ch
* include/hbexprb.c
* include/ord.ch
* include/hbdate.h
* Deleted 'www.' from harbour-project.org website name.
(www.harbour-project.org -> harbour-project.org)
|
||
|
|
dc6bf8789c |
2010-03-25 09:29 UTC+0100 Viktor Szakats (harbour.01 syenar.hu)
* include/hbapirdd.h
! Typos in comments.
* contrib/hbct/print.c
+ Rewritten PRINTREADY() to work on all platforms the core
supports.
* contrib/sddoci/sddoci.c
+ Added 'nullable' flag support. By the name it's right,
but it's foggy which flag constants belong to which
structure and rdd code suggest this flag does something
else depsite the name. Pls look at it.
|
||
|
|
c6a878051b |
2010-03-10 10:04 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/include/hbapirdd.h
* harbour/src/rdd/wacore.c
+ added hb_rddDetachedList() C function
* harbour/contrib/hbxpp/Makefile
+ harbour/contrib/hbxpp/dmlb.ch
+ harbour/contrib/hbxpp/wafuncx.c
+ added xBase++ compatible PRG function:
WorkSpaceList( [<nWorkSpace>] ) -> <aAliasName>
|
||
|
|
b1cd0953df |
2010-02-08 22:49 UTC+0100 Viktor Szakats (harbour.01 syenar.hu)
* src/pp/ppcore.c
* src/pp/hbpp.c
* src/vm/macro.c
* src/vm/runner.c
* src/vm/estack.c
* src/vm/itemapi.c
* src/vm/hvm.c
* src/vm/cmdarg.c
* src/vm/maindllp.c
* src/vm/fm.c
* src/vm/thread.c
* src/vm/memvars.c
* src/vm/eval.c
* src/vm/extend.c
* src/vm/classes.c
* src/debug/dbgentry.c
* src/common/expropt1.c
* src/common/expropt2.c
* src/common/hbhash.c
* src/nortl/nortl.c
* src/macro/macrolex.c
* src/rtl/gtxwc/gtxwc.c
* src/rtl/gtstd/gtstd.c
* src/rtl/gtcgi/gtcgi.c
* src/rtl/errapi.c
* src/rtl/hbprocfn.c
* src/rtl/hbsocket.c
* src/rtl/gtpca/gtpca.c
* src/rtl/filebuf.c
* src/rtl/hbproces.c
* src/rdd/dbfntx/dbfntx1.c
* src/rdd/dbsql.c
* src/rdd/hbdbsort.c
* src/rdd/workarea.c
* src/rdd/wacore.c
* src/rdd/sdf1.c
* src/rdd/dbcmdx.c
* src/rdd/dbfnsx/dbfnsx1.c
* src/rdd/dbcmd.c
* src/rdd/dbfcdx/dbfcdx1.c
* src/rdd/delim1.c
* src/rdd/dbf1.c
* src/rdd/hsx/hsx.c
* src/rdd/usrrdd/usrrdd.c
* src/rdd/wafunc.c
* src/rdd/dbffpt/dbffpt1.c
* src/rdd/hbsix/sxord.c
* src/rdd/hbsix/sxfname.c
* src/rdd/hbsix/sxtable.c
* src/rdd/hbsix/sxutil.c
* src/rdd/hbsix/sxcrypt.c
* src/compiler/ppcomp.c
* src/compiler/hbmain.c
* src/compiler/compi18n.c
* src/compiler/cmdcheck.c
* src/compiler/hbdbginf.c
* src/compiler/hbpcode.c
* src/compiler/genhrb.c
* src/compiler/hbdead.c
* src/compiler/complex.c
* src/compiler/genobj32.c
* src/compiler/genc.c
* src/compiler/hbopt.c
* src/compiler/hbident.c
* src/compiler/gencc.c
* src/compiler/hbcmplib.c
* src/compiler/hblbl.c
* src/compiler/harbour.yyc
* src/compiler/harbour.y
* include/hbpp.h
* include/hbrdddbf.h
* include/hbvmpub.h
* include/hbrddnsx.h
* include/hbstack.h
* include/hbgtcore.h
* include/hbapifs.h
* include/hbthread.h
* include/hbdefs.h
* include/hbmacro.h
* include/hbinit.h
* include/hbtypes.h
* include/hbrddsdf.h
* include/hbapi.h
* include/hbapiitm.h
* include/hbrddntx.h
* include/hbvm.h
* include/hbapidbg.h
* include/hbcomp.h
* include/hbapirdd.h
* include/hbcompdf.h
* include/hbrdddel.h
* include/hbexpra.c
* include/hbexprop.h
* include/hbrddcdx.h
* include/hbapicls.h
* include/hbapierr.h
* include/hbrddfpt.h
* include/hbhash.h
* include/hbregex.h
* include/hbexprb.c
* contrib/hbct/screen2.c
* contrib/hbct/token2.c
* contrib/hbct/dbftools.c
* contrib/hbct/atadjust.c
* contrib/hbct/ctwin.c
* contrib/hbct/files.c
* contrib/hbct/dattime3.c
* contrib/hbct/ctstr.c
* contrib/hbct/screen1.c
* contrib/hbct/token1.c
* contrib/hbct/ctc.c
* contrib/hbct/ct.h
* contrib/hbct/atnum.c
* contrib/hbct/asciisum.c
* contrib/hbct/numat.c
* contrib/hbct/atrepl.c
* contrib/xhb/bkgtsks.c
* contrib/xhb/hbcrypt.c
* contrib/xhb/fparse.c
* contrib/xhb/datesxhb.c
* contrib/xhb/hbnxs.h
* contrib/hbqt/gtqtc/gtqtc.cpp
* contrib/xpp/dbcmdx.c
* contrib/hbnf/dispc.c
* contrib/hbnf/ftattr.c
* contrib/hbmemio/memio.c
* contrib/hbnetio/netiocli.c
* contrib/rddsql/sddmy/mysqldd.c
* contrib/rddsql/sddpg/pgsqldd.c
* contrib/rddsql/sddfb/fbirddd.c
* contrib/rddsql/sddodbc/odbcdd.c
* contrib/rddsql/hbrddsql.h
* contrib/rddsql/sqlbase.c
* contrib/rddsql/sqlmix.c
* contrib/rddads/adsx.c
* contrib/rddads/adsfunc.c
* contrib/rddads/rddads.h
* contrib/rddads/ads1.c
* contrib/rddads/adsmgmnt.c
* contrib/hbmisc/spd.c
* contrib/hbtip/utils.c
* contrib/hbtip/encmthd.c
* contrib/hbbmcdx/bmdbfcdx.c
* contrib/hbbmcdx/hbbmcdx.h
* contrib/hbbtree/hb_btree.h
* contrib/hbbtree/hb_btree.c
* ULONG -> HB_ULONG, HB_SIZE
(except for external (OS) API specific usage)
* Formatting.
; NOTE: I converted ULONG to HB_SIZE where I felt it appropriate,
but didn't touch compiler, codeblock handling, low-level
RDD (Set/GetVarLen method) and high-level contrib RDDs, so
this needs to be cleaned.
Also there may be cases where I didn't change the whole
call chain to HB_SIZE.
; NOTE: It would be probably worthy to add new types for these purposes:
- line number (HB_USHORT)
- record number (HB_ULONG)
- RDD connection (HB_ULONG)
- parameter count / stack position / class member positions / etc (HB_USHORT, sometimes HB_ULONG)
- pcode (HB_BYTE and char)
- flags / modes (HB_USHORT / HB_ULONG)
- timers (HB_ULONG, HB_MAXINT)
- GT API character (HB_USHORT)
; REQUESTS:
- Pls don't over-align variable declarations. It makes
modification much much slower. Sometimes declarations are
aligned even if there was only one or two of them in a block.
- Pls always add variable names in declarations, otherwise the purpose
of the function is very slow to decipher when looking at it.
- Keep up the nice formatting according to Harbour standards,
it makes modifications much much easier.
; TODO:
- Verify with grep script
- Verify with HB_USER_CFLAGS=-DHB_LEGACY_TYPES_OFF
- Make HB_LEGACY_TYPES_OFF default for Harbour builds.
- Tie HB_LEGACY_TYPES_OFF to HB_LEGACY_LEVEL3
- Replace current windows.h inclusion hack with regular method
- Delete hacks dealing with former type chaos:
HB_CLIPPER_INT_ITEMS, HB_DONT_DEFINE_BASIC_TYPES, HB_DONT_DEFINE_BOOL, HB_DONT_DEFINE_BYTE, HB_DONT_DEFINE_LONG
- Retest hbfimage on *nix, delete hacks
- Normalize HB_BYTE vs. HB_UCHAR usage
- Type cleanups, f.e. HB_SIZE vs. HB_ULONG
- Add new special types (see above)
- Switch HB_SIZE to signed (big project), and delete HB_ISIZ afterwards.
|
||
|
|
32f59a1f70 |
2010-02-08 19:52 UTC+0100 Viktor Szakats (harbour.01 syenar.hu)
* src/vm/macro.c
* src/vm/runner.c
* src/vm/estack.c
* src/vm/codebloc.c
* src/vm/debug.c
* src/vm/hvm.c
* src/vm/pvalue.c
* src/vm/arrays.c
* src/vm/memvars.c
* src/vm/eval.c
* src/vm/classes.c
* src/common/hbffind.c
* src/rdd/dbfntx/dbfntx1.c
* src/rdd/workarea.c
* src/rdd/sdf1.c
* src/rdd/dbcmdx.c
* src/rdd/dbfnsx/dbfnsx1.c
* src/rdd/dbcmd.c
* src/rdd/dbfcdx/dbfcdx1.c
* src/rdd/delim1.c
* src/rdd/dbf1.c
* src/rdd/usrrdd/usrrdd.c
* src/rdd/dbffpt/dbffpt1.c
* src/rdd/hbsix/sxord.c
* src/compiler/hbmain.c
* src/compiler/hbpcode.c
* src/compiler/genc.c
* src/compiler/hbopt.c
* src/compiler/gencc.c
* src/compiler/hblbl.c
* tests/bldtest/bldtest.c
* include/hbstack.h
* include/hbapifs.h
* include/hbxvm.h
* include/hbdefs.h
* include/hbmacro.h
* include/hbapi.h
* include/hbcomp.h
* include/hbapirdd.h
* include/hbsxfunc.h
* include/hbrddcdx.h
* include/hbexprb.c
* contrib/hbct/maxline.c
* contrib/hbct/numcount.c
* contrib/hbct/addascii.c
* contrib/xhb/xhbenum.c
* contrib/xhb/xhbqself.c
* contrib/xhb/xhbwith.c
* contrib/xhb/hbcomprs.c
* contrib/xhb/xhbmsgs.c
* contrib/hbmzip/hbmzip.c
* contrib/xpp/dbcmdx.c
* contrib/hbnetio/netiocli.c
* contrib/rddsql/sqlbase.c
* contrib/rddsql/sqlmix.c
* contrib/rddads/adsx.c
* contrib/rddads/ads1.c
* contrib/hbbmcdx/bmdbfcdx.c
* contrib/hbbmcdx/hbbmcdx.h
* contrib/hbbtree/hb_btree.h
* contrib/hbbtree/hb_btree.c
* LONG -> HB_LONG, long (for dates and extend / item API contexts)
(except for external (OS) API specific usage)
* src/vm/maindll.c
* LONG -> void *
+ Added 'const' to char * parameter.
* contrib/hbct/numline.c
* contrib/hbct/ctpad.c
* LONG -> HB_LONG, HB_ISIZ
* Formatting.
* contrib/xhb/hbxml.h
* LONG -> HB_ISIZ
* contrib/xhb/freadlin.c
* LONG, int -> HB_ISIZ
|
||
|
|
6d2c565fc1 |
2010-02-07 14:30 UTC+0100 Viktor Szakats (harbour.01 syenar.hu)
* src/pp/ppcore.c
* src/pp/hbpp.c
* src/vm/macro.c
* src/vm/evalhb.c
* src/vm/runner.c
* src/vm/estack.c
* src/vm/codebloc.c
* src/vm/dynsym.c
* src/vm/garbage.c
* src/vm/itemapi.c
* src/vm/hvm.c
* src/vm/pvalue.c
* src/vm/maindllp.c
* src/vm/arrays.c
* src/vm/fm.c
* src/vm/extrap.c
* src/vm/proc.c
* src/vm/thread.c
* src/vm/memvars.c
* src/vm/vm.c
* src/vm/eval.c
* src/vm/dynlibhb.c
* src/vm/classes.c
* src/common/hbffind.c
* src/common/expropt1.c
* src/common/expropt2.c
* src/nortl/nortl.c
* src/rtl/gtdos/gtdos.c
* src/rtl/fscopy.c
* src/rtl/gtwin/gtwin.c
* src/rtl/gtxwc/gtxwc.h
* src/rtl/gtxwc/gtxwc.c
* src/rtl/gtcrs/gtcrs.c
* src/rtl/philesx.c
* src/rtl/do.c
* src/rtl/gtstd/gtstd.c
* src/rtl/gttrm/gttrm.c
* src/rtl/xhelp.c
* src/rtl/transfrm.c
* src/rtl/fserr.c
* src/rtl/gtcgi/gtcgi.c
* src/rtl/errapi.c
* src/rtl/copyfile.c
* src/rtl/errintlo.c
* src/rtl/gtapi.c
* src/rtl/filesys.c
* src/rtl/console.c
* src/rtl/spfiles.c
* src/rtl/gtos2/gtos2.c
* src/rtl/philes.c
* src/rtl/hbgtcore.c
* src/rtl/itemseri.c
* src/rtl/gtsln/mousesln.c
* src/rtl/gtsln/gtsln.c
* src/rtl/gtsln/kbsln.c
* src/rtl/disksphb.c
* src/rtl/gtpca/gtpca.c
* src/rtl/trace.c
* src/rtl/gt_tpl/gt_tpl.c
* src/rtl/filebuf.c
* src/rdd/dbfntx/dbfntx1.c
* src/rdd/dbsql.c
* src/rdd/hbdbsort.c
* src/rdd/workarea.c
* src/rdd/wacore.c
* src/rdd/sdf1.c
* src/rdd/dbfnsx/dbfnsx1.c
* src/rdd/dbcmd.c
* src/rdd/dbfcdx/dbfcdx1.c
* src/rdd/delim1.c
* src/rdd/dbf1.c
* src/rdd/hsx/hsx.c
* src/rdd/dbcmd53.c
* src/rdd/usrrdd/usrrdd.c
* src/rdd/wafunc.c
* src/rdd/dbffpt/dbffpt1.c
* src/rdd/hbsix/sxord.c
* src/rdd/hbsix/sxtable.c
* src/rdd/hbsix/sxcompr.c
* src/compiler/hbmain.c
* src/compiler/hbfix.c
* src/compiler/hbdead.c
* src/compiler/genobj32.c
* src/compiler/genc.c
* src/compiler/hbopt.c
* src/compiler/gencc.c
* src/compiler/harbour.yyc
* src/compiler/harbour.y
* include/hbpp.h
* include/hbrdddbf.h
* include/hbvmpub.h
* include/hbrddnsx.h
* include/hbstack.h
* include/hbgtcore.h
* include/hbapifs.h
* include/hbxvm.h
* include/hbdefs.h
* include/hbinit.h
* include/hbtypes.h
* include/hbrddsdf.h
* include/hbapi.h
* include/hbapiitm.h
* include/hbrddntx.h
* include/hbvm.h
* include/hbcomp.h
* include/hbapirdd.h
* include/hbcompdf.h
* include/hbrdddel.h
* include/hbexpra.c
* include/hbexprop.h
* include/hbdbsort.h
* include/hbapigt.h
* include/hbrddcdx.h
* include/hbapicls.h
* include/hbapierr.h
* include/hbrddfpt.h
* include/hbexprb.c
* contrib/hbct/bitnum.c
* contrib/hbct/screen2.c
* contrib/hbct/strdiff.c
* contrib/hbct/token2.c
* contrib/hbct/charonly.c
* contrib/hbct/atadjust.c
* contrib/hbct/ctmath.c
* contrib/hbct/ctwin.c
* contrib/hbct/charsort.c
* contrib/hbct/charmix.c
* contrib/hbct/charevod.c
* contrib/hbct/wordrepl.c
* contrib/hbct/charrepl.c
* contrib/hbct/strswap.c
* contrib/hbct/trig.c
* contrib/hbct/charswap.c
* contrib/hbct/charop.c
* contrib/hbct/charone.c
* contrib/hbct/num1.c
* contrib/hbct/pos1.c
* contrib/hbct/ascpos.c
* contrib/hbct/ctstr.c
* contrib/hbct/screen1.c
* contrib/hbct/token1.c
* contrib/hbct/charmirr.c
* contrib/hbct/ctc.c
* contrib/hbct/ctwfunc.c
* contrib/hbct/relation.c
* contrib/hbct/atnum.c
* contrib/hbct/count.c
* contrib/hbct/ctcrypt.c
* contrib/hbct/posdiff.c
* contrib/hbct/finan.c
* contrib/hbct/range.c
* contrib/hbct/addascii.c
* contrib/hbct/ctmath2.c
* contrib/hbct/tab.c
* contrib/hbct/replace.c
* contrib/hbct/asciisum.c
* contrib/hbct/pos2.c
* contrib/hbct/numat.c
* contrib/hbct/atrepl.c
* contrib/hbct/wordtoch.c
* contrib/hbct/ctpad.c
* contrib/hbct/print.c
* contrib/hbct/justify.c
* contrib/hbct/remove.c
* USHORT -> HB_USHORT (except where BYTE was used in OS-specific context)
|
||
|
|
d320459c18 |
2010-02-07 02:02 UTC+0100 Viktor Szakats (harbour.01 syenar.hu)
* src/pp/ppcore.c
* src/vm/macro.c
* src/vm/runner.c
* src/vm/codebloc.c
* src/vm/garbage.c
* src/vm/hvm.c
* src/vm/maindllp.c
* src/vm/fm.c
* src/vm/extrap.c
* src/vm/memvars.c
* src/common/expropt1.c
* src/common/expropt2.c
* src/common/hbarch.c
* src/common/hbmem.c
* src/nortl/nortl.c
* src/rtl/gtdos/gtdos.c
* src/rtl/gtwin/gtwin.c
* src/rtl/gtxwc/gtxwc.h
* src/rtl/gtxwc/gtxwc.c
* src/rtl/gtcrs/gtcrs.c
* src/rtl/gtstd/gtstd.c
* src/rtl/gttrm/gttrm.c
* src/rtl/gtcgi/gtcgi.c
* src/rtl/gtapi.c
* src/rtl/gtos2/gtos2.c
* src/rtl/hbgtcore.c
* src/rtl/gtsln/gtsln.c
* src/rtl/gtsln/kbsln.c
* src/rtl/gtsln/gtsln.h
* src/rtl/gtpca/gtpca.c
* src/rtl/gt_tpl/gt_tpl.c
* src/rtl/gtwvt/gtwvt.h
* src/rtl/gtwvt/gtwvt.c
* src/rdd/dbfntx/dbfntx1.c
* src/rdd/dbsql.c
* src/rdd/hbdbsort.c
* src/rdd/workarea.c
* src/rdd/sdf1.c
* src/rdd/dbfnsx/dbfnsx1.c
* src/rdd/dbfcdx/dbfcdx1.c
* src/rdd/delim1.c
* src/rdd/dbf1.c
* src/rdd/hsx/hsx.c
* src/rdd/usrrdd/usrrdd.c
* src/rdd/dbffpt/dbffpt1.c
* src/rdd/hbsix/sxsem.c
* src/rdd/hbsix/sxcompr.c
* src/compiler/ppcomp.c
* src/compiler/hbmain.c
* src/compiler/hbfix.c
* src/compiler/hbdbginf.c
* src/compiler/hbpcode.c
* src/compiler/genhrb.c
* src/compiler/hbdead.c
* src/compiler/genobj32.c
* src/compiler/genc.c
* src/compiler/hbopt.c
* src/compiler/gencc.c
* src/compiler/hbcmplib.c
* src/compiler/hblbl.c
* src/compiler/harbour.yyc
* src/compiler/harbour.y
* src/compiler/harbour.yyh
* tests/bldtest/bldtest.c
* tests/tstgtapi.c
* include/hbpp.h
* include/hbrdddbf.h
* include/hbvmpub.h
* include/hbrddnsx.h
* include/hbgtcore.h
* include/hbxvm.h
* include/hbdefs.h
* include/hbmacro.h
* include/hbtypes.h
* include/hbrddsdf.h
* include/hbapi.h
* include/hbrddntx.h
* include/hbvm.h
* include/hbcomp.h
* include/hbapirdd.h
* include/hbcompdf.h
* include/hbrdddel.h
* include/hbexpra.c
* include/hbexprop.h
* include/hbdbf.h
* include/hbdbsort.h
* include/hbapigt.h
* include/hbrddcdx.h
* include/hbrddfpt.h
* include/hbexprb.c
* contrib/gtalleg/gtalleg.c
* contrib/hbct/ctwin.c
* contrib/hbct/ascpos.c
* contrib/hbct/screen1.c
* contrib/hbct/ctcrypt.c
* contrib/xhb/hbxml.c
* contrib/xhb/xhbis.c
* contrib/xhb/fparse.c
* contrib/xhb/xhbat.c
* contrib/xhb/xhbcopyf.c
* contrib/xhb/cstructc.c
* contrib/hbqt/gtqtc/gtqtc.cpp
* contrib/hbqt/gtqtc/gtqtc.h
* contrib/xpp/philesx.c
* contrib/hbnf/ftshadow.c
* contrib/hbnf/ftattr.c
* contrib/hbnetio/netiocli.c
* contrib/hbnetio/netiosrv.c
* contrib/rddsql/sddmy/mysqldd.c
* contrib/rddsql/sddpg/pgsqldd.c
* contrib/rddsql/sddfb/fbirddd.c
* contrib/rddsql/sddodbc/odbcdd.c
* contrib/rddsql/hbrddsql.h
* contrib/rddsql/sqlbase.c
* contrib/rddsql/sqlmix.c
* contrib/gtwvg/gtwvg.c
* contrib/gtwvg/wvggui.c
* contrib/gtwvg/wvgcore.c
* contrib/gtwvg/wvgwing.c
* contrib/rddads/adsx.c
* contrib/rddads/rddads.h
* contrib/rddads/ads1.c
* contrib/hbtip/utils.c
* contrib/hbwin/win_regc.c
* contrib/hbwin/win_prn2.c
* contrib/hbbmcdx/bmdbfcdx.c
* contrib/hbbmcdx/hbbmcdx.h
* contrib/hbbtree/hb_btree.c
* BYTE -> HB_BYTE except where BYTE was used in OS-specific context.
* Some formatting.
; I didn't realign structure definitions in hbrdd*.h yet.
* contrib/hbwin/win_regc.c
* Minor type cleanup.
* src/rtl/gt_tpl/gt_tpl.c
* BYTE -> int for color.
* examples/hbapollo/apollo.c
% Deleted MAX_STR_LEN.
|
||
|
|
0058f70389 |
2010-01-15 00:45 UTC+0100 Viktor Szakats (harbour.01 syenar.hu)
* contrib/hbbmcdx/bmdbfcdx.c
* contrib/hbbmcdx/hbbmcdx.h
* include/hbapirdd.h
* include/hbdbsort.h
* include/hbrddcdx.h
* include/hbrdddbf.h
* include/hbrdddel.h
* include/hbrddfpt.h
* include/hbrddnsx.h
* include/hbrddntx.h
* include/hbrddsdf.h
* src/rdd/dbcmd.c
* src/rdd/dbcmd53.c
* src/rdd/dbdetach.c
* src/rdd/dbf1.c
* src/rdd/dbfcdx/dbfcdx1.c
* src/rdd/dbffpt/dbffpt1.c
* src/rdd/dbfnsx/dbfnsx1.c
* src/rdd/dbfntx/dbfntx1.c
* src/rdd/dbsql.c
* src/rdd/delim1.c
* src/rdd/hbdbsort.c
* src/rdd/hbsix/sxcompr.c
* src/rdd/hbsix/sxcrypt.c
* src/rdd/hbsix/sxfname.c
* src/rdd/hbsix/sxord.c
* src/rdd/hbsix/sxsem.c
* src/rdd/hbsix/sxtable.c
* src/rdd/hbsix/sxutil.c
* src/rdd/hsx/hsx.c
* src/rdd/nulsys/nulsys.c
* src/rdd/sdf1.c
* src/rdd/usrrdd/usrrdd.c
* src/rdd/wacore.c
* src/rdd/wafunc.c
* src/rdd/workarea.c
* BOOL -> HB_BOOL
* TRUE -> HB_TRUE
* FALSE -> HB_FALSE
|
||
|
|
da88410742 |
2009-11-18 18:48 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/include/hbapirdd.h
! redefined RDD method table to use HB_ERRCODE instead of USHORT
|
||
|
|
1638204a1c |
2009-09-15 16:52 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/include/hbapifs.h
* harbour/source/rtl/filebuf.c
+ added hb_fileRename()
* harbour/contrib/hbnetio/netio.h
* harbour/contrib/hbnetio/netiocli.c
* harbour/contrib/hbnetio/netiosrv.c
+ implemented Rename method in NETIO
* harbour/include/hbapirdd.h
* harbour/source/rdd/workarea.c
+ added new non workarea method: RENAME()
* harbour/source/rdd/Makefile
* harbour/include/hbextern.ch
* harbour/source/rdd/dbcmd.c
+ harbour/source/rdd/dbrename.c
+ added new .prg function:
dbRename( <cTable> [,<cIndex>], <cNewName>, ;
[<cRDD>], [<nConnect>] ) -> <lOK>
+ added hb_dbRename() - synonym of dbRename()
* harbour/source/rdd/dbf1.c
+ added support for dbRename() in DBF* RDDs
* harbour/include/hbrdddbf.h
* harbour/include/hbrddcdx.h
* harbour/include/hbrddfpt.h
* harbour/include/hbrddntx.h
* harbour/source/rdd/dbffpt/dbffpt1.c
* harbour/source/rdd/dbfntx/dbfntx1.c
* harbour/source/rdd/dbfnsx/dbfnsx1.c
* harbour/source/rdd/dbfcdx/dbfcdx1.c
* harbour/source/rdd/sdf1.c
* harbour/source/rdd/delim1.c
* harbour/include/hbusrrdd.ch
* harbour/source/rdd/usrrdd/usrrdd.c
* harbour/contrib/rddads/adsx.c
* harbour/contrib/rddads/ads1.c
* harbour/contrib/rddsql/sqlbase.c
* harbour/contrib/rddsql/sqlmix.c
* harbour/contrib/hbbmcdx/bmdbfcdx.c
* harbour/contrib/hbbmcdx/hbbmcdx.h
+ updated to compile with new RDD method: RENAME
TODO: add support for this method to ADS* RDDs
|
||
|
|
d951f45436 |
2009-06-30 10:17 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/include/hbapirdd.h
* harbour/source/rdd/workarea.c
* harbour/source/rdd/wafunc.c
* harbour/source/rdd/dbcmd.c
* harbour/source/rdd/hsx/hsx.c
* harbour/source/rdd/usrrdd/usrrdd.c
* modified RDD method declaration (DBENTRYP_*) to eliminate casting.
3-rd party RDD code have to be updated.
* modified some RDD structures to force more strict alignment.
Warning!!! AREA structured modified - all 3-rd party RDDs which
redefines AREA members instead of using AREA structure
directly have to be updated.
* harbour/include/hbrdddbf.h
* harbour/include/hbrddnsx.h
* harbour/include/hbrdddel.h
* harbour/include/hbrddsdf.h
* harbour/include/hbrddcdx.h
* harbour/include/hbrddntx.h
* harbour/source/rdd/delim1.c
* harbour/source/rdd/sdf1.c
* harbour/source/rdd/dbf1.c
* harbour/source/rdd/hbdbsort.c
* harbour/source/rdd/dbfcdx/dbfcdx1.c
* harbour/source/rdd/dbfnsx/dbfnsx1.c
* harbour/source/rdd/dbfntx/dbfntx1.c
* harbour/source/rdd/dbffpt/dbffpt1.c
* harbour/contrib/rddads/rddads.h
* harbour/contrib/rddads/ads1.c
* harbour/contrib/rddads/adsx.c
* harbour/contrib/rddads/adsfunc.c
* harbour/contrib/rddsql/hbrddsql.h
* harbour/contrib/rddsql/sqlbase.c
* harbour/contrib/rddsql/sqlmix.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/hbbmcdx/bmdbfcdx.c
* harbour/contrib/hbbmcdx/hbbmcdx.h
* updated for new method declaration
* modified RDD AREA structures definition to use supper AREA structures
directly as 1-st member instead of redefining individual AREA members.
It resolves the synchronization problem so now modification in super
AREA structures does not force modifications in source code of
descendant RDDs. It also eliminates possible typos in manual structure
synchronization.
|
||
|
|
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.
|
||
|
|
20c62d1431 |
2009-06-16 16:09 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/include/hbapirdd.h
* harbour/source/rdd/wafunc.c
+ added HB_ERRCODE hb_rddEvalWA( PHB_ITEM pBlock )
* harbour/source/rdd/dbcmd.c
+ added HB_WAEVAL( <pBlock> ) function which evaluates given
<pBlock> in each used worakrea. The workarea iteration is
interrupted if <pBlock> returns .F.
* harbour/source/rdd/wafunc.c
* restore workarea number in hb_rddCloseAllParentRelations()
* harbour/source/rdd/workarea.c
* added small protection against releasing WA by user codeblock in
EVALBLOCK() method
* harbour/source/rdd/wacore.c
* added small protection against releasing WA by user code during
area iteration
|
||
|
|
19cc018359 |
2009-06-14 21:50 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/include/hbapirdd.h
* harbour/include/hbusrrdd.ch
* harbour/contrib/rddsql/sddodbc/odbcdd.c
* harbour/contrib/rddads/ads1.c
* harbour/source/rdd/workarea.c
* harbour/source/rdd/sdf1.c
* harbour/source/rdd/delim1.c
* harbour/source/rdd/dbf1.c
* changed HB_FT_DAYTIME to HB_FT_TIMESTAMP
|
||
|
|
987fff2601 |
2009-02-16 17:44 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/include/dbinfo.ch
+ added DBI_ISTEMPORARY
* harbour/include/hbapirdd.h
* harbour/source/rdd/wafunc.c
+ added hb_rddCreateTableTemp() C function to create temporary
table which are automatically deleted on close. All indexes and
memo files for such tables are also in temporary files and
automatically deleted on close. Please remember that Harbour uses
OS functions to create temporary files so it's installation dependent
how much disk space is available for them. Some RDDs may also do
not create temporary files but keep everything in memory if they
decide it's more efficient.
* harbour/source/rdd/dbcmd.c
+ added .prg function to create temporary files:
dbCreateTemp( <cAlias>, <aStruct>, <cRDD>, ;
<cCodePage>, <nConnection> ) -> <lSuccess>
Not all RDDs have to support it. It's verified by support for
DBI_ISTEMPORARY dbInfo() action.
* harbour/include/hbrdddbf.h
* harbour/include/hbrddnsx.h
* harbour/include/hbrddcdx.h
* harbour/include/hbrddntx.h
* harbour/source/rdd/dbf1.c
* harbour/source/rdd/dbffpt/dbffpt1.c
* harbour/source/rdd/dbfntx/dbfntx1.c
* harbour/source/rdd/dbfnsx/dbfnsx1.c
* harbour/source/rdd/dbfcdx/dbfcdx1.c
+ added support for temporary tables in native RDDs.
Most of above modifications were done by 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.
|
||
|
|
185f03cbfd |
2009-02-03 15:27 UTC+0100 Viktor Szakats (harbour.01 syenar hu)
* include/hbapirdd.h
* source/rdd/dbcmd.c
* source/rdd/dbcmd53.c
* source/rdd/dbcmdx.c
* source/rdd/dbdetach.c
* source/rdd/dbf1.c
* source/rdd/dbsql.c
* source/rdd/delim1.c
* source/rdd/hbdbsort.c
* source/rdd/sdf1.c
* source/rdd/wacore.c
* source/rdd/wafunc.c
* source/rdd/workarea.c
* source/rdd/dbfcdx/dbfcdx1.c
* source/rdd/dbffpt/dbffpt1.c
* source/rdd/dbfnsx/dbfnsx1.c
* source/rdd/dbfntx/dbfntx1.c
* source/rdd/hbsix/sxcrypt.c
* source/rdd/hbsix/sxord.c
* source/rdd/hbsix/sxtable.c
* source/rdd/hsx/hsx.c
* source/rdd/nulsys/nulsys.c
* source/rdd/usrrdd/rdds/arrayrdd.prg
* source/rdd/usrrdd/rdds/fcomma.prg
* source/rdd/usrrdd/rdds/hscdx.prg
* source/rdd/usrrdd/rdds/logrdd.prg
* source/rdd/usrrdd/rdds/rlcdx.prg
* source/rdd/usrrdd/usrrdd.c
* SUCCESS -> HB_SUCCESS
* FAILURE -> HB_FAILURE
* ERRCODE -> HB_ERRCODE
|
||
|
|
7cc11cf5e2 |
2008-09-19 22:27 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/source/vm/set.c
! fixed casting
* harbour/contrib/xhb/xhbcopyf.c
* replaced TABs with SPACEs
* harbour/include/hbapirdd.h
* harbour/source/rdd/workarea.c
* harbour/source/rdd/wacore.c
* harbour/source/rdd/wafunc.c
+ added support for detaching and attaching workareas
* harbour/source/vm/hvm.c
% minor cleanup in thread return code
* harbour/include/hbthread.h
* harbour/source/vm/thread.c
* unlock HVM stack during thread join operation
* added workaround for DosWaitThread() which seems to fail if thread
terminated before
; added TOFIX note for OS2 and join code
|
||
|
|
4c4120985a |
2008-08-21 10:28 UTC+0200 Viktor Szakats (harbour.01 syenar hu)
* include/dbinfo.ch
* include/dbstruct.ch
* include/hbgtinfo.ch
* include/hblang.ch
* include/setcurs.ch
! Added "also used from C code" comments.
* utils/hbmake/ffile1.prg
! Minor cleanup.
* include/hbgfxdef.ch
* include/hbgtinfo.ch
* Marked old GTI_*, GFX_* macros with HB_LEGACY_LEVEL.
(Old macro HB_GT_NO_XHB no longer works)
* include/hbsetup.ch
+ Added HB_LEGACY_LEVEL macro. Currently turned on.
Will be turned off later, and completely removed
as a final step. Times are not defined for these
yet. Please prepare to modify your code to not
use old legacy stuff.
NOTE: C code using legacy Clipper (.api) headers are
unaffected.
* include/hbapirdd.h
* Marked HARBOUR_* macros with HB_LEGACY_LEVEL
* include/hbsetup.h
* Marked OS_UNIX_COMPATIBLE, OS_PATH_DELIMITER
macros with HB_LEGACY_LEVEL.
* include/hbapifs.h
* source/rtl/filesys.c
* Marked hb_fileNameConv() as HB_LEGACY_LEVEL.
; 3rd party and app developers should switch to
hb_fsNameConv().
* source/rtl/box.c
* source/rtl/console.c
* source/rtl/filesys.c
* source/rtl/gtapi.c
* source/rtl/hbgtcore.c
* contrib/hbclipsm/gauge.c
* contrib/hbclipsm/status.c
* contrib/hbct/ctwin.c
* source/rtl/set.c
* utils/hbmake/hbmlang.c
* Updated core/contrib sources to use non-legacy names:
HB_CLRSTR_LEN, HB_EVALINFO, PHB_EVALINFO, HB_FHANDLE
; TODO: FHANDLE -> HB_FHANDLE is incomplete yet.
* include/hbdefs.h
* Minor formatting.
* include/hbmath.h
! #include <hbmath.ch> -> #include "hbmath.ch"
* contrib/hbmysql/mysql.c
+ function SQLFETCHR() updated to allow fetching binary (BLOB)
fields. [Thanks to Mitja Podgornik]
* include/hbapifs.h
* include/hbapigt.h
* include/hbapiitm.h
* include/hbdefs.h
* include/item.api
* include/filesys.api
* include/gt.api
* FHANDLE -> HB_FHANDLE
* EVALINFO -> HB_EVALINFO
* PEVALINFO -> PHB_EVALINFO
* EVALINFO_PTR -> marked as legacy
* CLR_STRLEN -> HB_CLRSTR_LEN
; Old names are still working if HB_LEGACY_LEVEL
is #defined, and by default now it is.
; It's highly recommended to change all 3rd party and
app C code to use the new #defines/types/functions.
; NOTE1: There are some more names which are still
in the legacy "namespace", and gradually
I'd like to clean some of these as well. The most
important would be the type names, as these
are currently colliding with multiple external
packages, like windows.h, and it also makes it
impossible to compile hbfimage on certain systems.
; NOTE2: I'd also like to move the *_PTR (like HB_ITEM_PTR)
names to legacy status as we don't really use
them except in a few VM files, and we have PHB_*
as a wide-spread (and shorter) replacement.
; NOTE3: We may also use HB_LEGACY_LEVEL to obolete other
legacy or unsafe functions, with better new
alternatives.
; NOTE4: Here's a more or less complete list of names
that _may_ cause such problems:
; Type related stuff
- TRUE, FALSE
- BOOL, BYTE, SCHAR, UINT, USHORT
- INT_MAX, INT_MIN
- INT16, INT16_MAX, INT16_MIN
- INT24_MAX, INT24_MIN
- INT32, INT32_MAX, INT32_MIN
- INT64, INT64_MAX, INT64_MIN
- LONG, LONG_MAX, LONG_MIN
- LONGLONG, LONGLONG_MAX, LONGLONG_MIN
- SHORT, SHRT_MAX, SHRT_MIN
- UCHAR, UCHAR_MAX
- UINT16, UINT16_MAX
- UINT24_MAX
- UINT32, UINT32_MAX
- UINT64, UINT64_MAX
- ULONG, ULONG_MAX
- ULONGLONG, ULONGLONG_MAX
- assert()
; Some hacks currently used:
- HB_DONT_DEFINE_BASIC_TYPES
- HB_DONT_DEFINE_BOOL
- HB_OS_WIN_32_USED ->
(include <windows.h> locally where needed)
; Compiler related stuff:
- VS_*, VU_*, VT_*, FUN_*
- *COMDECLARED, *COMCLASS, *COMSYMBOL
- VAR, PVAR
- _FUNC, PFUNCTION
- _INLINE, PINLINE
- _FUNCALL, PFUNCALL
- _EXTERN, PEXTERN
- AUTOOPEN, PAUTOOPEN
- FUNCTIONS
- INLINES
- FUNCALLS
- SYMBOLS
; Clipper compatibility #defines,
better be moved behind a compatibility layer:
- F_ERROR, FS_ERROR
- IS*()
- E_*, EF_*
- FL_*, FLX_*, FO_*, FXO_*
- _B_*
- FC_*, FS_*, FD_*
- INKEY_*, K_*
- ES_*, EG_*
- SC_*
- DBS_*
; + All RDD related stuff, including "dbinfo.ch" constants.
|
||
|
|
01630ab48c |
2008-08-17 09:48 UTC+0200 Viktor Szakats (harbour.01 syenar hu)
* include/hbapirdd.h
* include/hbsetup.h
+ Added the most commonly used old #defines for compatibility:
- HARBOUR_MAX_RDD_DRIVERNAME_LENGTH
- HARBOUR_MAX_RDD_ALIAS_LENGTH
- OS_UNIX_COMPATIBLE
- OS_PATH_DELIMITER
Please try not to use these anymore, as they will be removed
in version 1.1.
|
||
|
|
3a41ed1d2b |
2008-08-17 08:59 UTC+0200 Viktor Szakats (harbour.01 syenar hu)
* doc/dirstruc.txt
* Updated to reflect current state. [Chen Kedem]
* contrib/examples/pp/hbppcore.c
* contrib/examples/pp/pp.c
* contrib/hbct/disk.c
* contrib/hbct/files.c
* contrib/hbnf/getenvrn.c
* contrib/hbw32/tprinter.c
* contrib/hbziparch/hbxdirec.c
* contrib/hbziparch/hbziparc.c
* contrib/rddads/ads1.c
* contrib/rddads/adsfunc.c
* doc/en/terminal.txt
* include/hb_io.h
* include/hbapifs.h
* include/hbapirdd.h
* include/hbdefs.h
* include/hbsetup.h
* include/hbwince.h
* source/common/hbfsapi.c
* source/compiler/gencobj.c
* source/compiler/hbcomp.c
* source/compiler/hbusage.c
* source/debug/dbgentry.c
* source/main/harbour.c
* source/pp/hbpp.c
* source/pp/ppcore.c
* source/rdd/dbcmd.c
* source/rdd/dbf1.c
* source/rdd/delim1.c
* source/rdd/sdf1.c
* source/rdd/usrrdd/usrrdd.c
* source/rdd/wacore.c
* source/rdd/wafunc.c
* source/rdd/workarea.c
* source/rtl/console.c
* source/rtl/copyfile.c
* source/rtl/defpath.c
* source/rtl/direct.c
* source/rtl/disksphb.c
* source/rtl/file.c
* source/rtl/filesys.c
* source/rtl/fssize.c
* source/rtl/fstemp.c
* source/rtl/gtos2/gtos2.c
* source/rtl/gtpca/gtpca.c
* source/rtl/gtstd/gtstd.c
* source/rtl/gttrm/gttrm.c
* source/rtl/hbffind.c
* source/rtl/hbinet.c
* source/rtl/memofile.c
* source/rtl/philes.c
* source/rtl/seconds.c
* source/rtl/set.c
* source/vm/hvm.c
* source/vm/main.c
* Changed some macros to be in the HB_ namespace, to be
possibly shorter, more unified and clearer.
OS_UNIX_COMPATIBLE -> HB_OS_UNIX_COMPATIBLE
OS_PATH_LIST_SEPARATOR -> HB_OS_PATH_LIST_SEP_CHR
OS_PATH_DELIMITER -> HB_OS_PATH_DELIM_CHR
OS_PATH_DELIMITER_STRING -> HB_OS_PATH_DELIM_STR
OS_PATH_DELIMITER_LIST -> HB_OS_PATH_DELIM_LIST
OS_FILE_MASK -> HB_OS_ALLFILE_MASK
OS_DRIVE_DELIMITER -> HB_OS_DRIVE_DELIM_CHR
OS_HAS_DRIVE_LETTER -> HB_OS_HAS_DRIVE_LETTER
OS_OPT_DELIMITER_LIST -> HB_OS_OPT_DELIM_LIST
OS_EOL_LEN -> HB_OS_EOL_LEN
HARBOUR_GCC_OS2 -> HB_OS_OS2_GCC
HARBOUR_START_PROCEDURE -> HB_START_PROCEDURE
HARBOUR_MAIN_STD -> HB_MAIN_STD
HARBOUR_MAIN_WIN -> HB_MAIN_WIN
HARBOUR_MAX_RDD_DRIVERNAME_LENGTH -> HB_RDD_MAX_DRIVERNAME_LEN
HARBOUR_MAX_RDD_ALIAS_LENGTH -> HB_RDD_MAX_ALIAS_LEN
HARBOUR_MAX_RDD_AREA_NUM -> HB_RDD_MAX_AREA_NUM
; INCOMPATIBLE change, please update your sources, a simple
case-sensitive search and replace on .c/.cpp/.h/.hpp files
will be enough for most sources.
|
||
|
|
2c051a4220 |
2008-05-28 11:48 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/include/hbrdddbf.h
* harbour/include/hbapirdd.h
* harbour/source/rdd/workarea.c
* harbour/source/rdd/dbcmd.c
* harbour/source/rdd/dbf1.c
* harbour/source/rdd/dbfcdx/dbfcdx1.c
* harbour/source/rdd/dbffpt/dbffpt1.c
* harbour/source/rdd/usrrdd/usrrdd.c
* harbour/contrib/rddads/ads1.c
* harbour/contrib/hbbmcdx/bmdbfcdx1.c
+ added ULONG ulConnection parameter to DROP() and EXISTS()
RDD node methods
+ added 4-th parameter with ulConncetion index to [HB_]DROP() and
[HB_]EXISTS() functions
|
||
|
|
af5038b272 |
2007-09-28 14:08 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/include/hbapi.h
* harbour/source/vm/itemapi.c
* harbour/source/vm/garbage.c
+ added extended item references - it's universal reference which
can be used by HVM for many different things without introducing
new item types
* harbour/include/hbexprb.c
* respect -ks compiler also with <op>=, --, ++ operators
* harbour/include/hbvm.h
* harbour/source/vm/hvm.c
* harbour/source/vm/classes.c
+ added extended references for SETGET methods used as object
item references
* use extended references to respect overloaded [] operator in
object item references
+ added support for passing indexes to string item characters
( @cValue[n] ) by reference using extended references - extension
enabled by -ks compiler switch and //flags:s RT switch.
+ added hb_vmPushItemRef()
* harbour/source/rdd/dbf1.c
* harbour/source/rdd/usrrdd/usrrdd.c
* use hb_vmPushItemRef()
* harbour/contrib/xhb/xhbcomp.prg
* harbour/contrib/xhb/xhbmsgs.c
* overload +, -, *, %, ^, ++, -- in string and numeric scalar
classes to emulated xHarbour behavior when 1 byte string is
used as numeric value.
Note: <nun> + <char1> in XHB lib gives numeric value when in
xHarbour character. But because <nun> <anyOtherOper> <char1>
in xHarbour gives numeric value then I guess that it's
xHarbour bug and I should not replicate it, f.e.:
proc main()
? 1+"A", 131-"A", 33 * 2, 132 / chr(2), 133 % "C"
return
* overload +, - in hash scalar class to emulated xHarbour behavior
for <hash> + <hash> and <hash> - <hash>
Seems that now we can remove HB_COMPAT_XHB flag from HVM and keep
Harbour compatibility only with -ks compile time switch and XHB
library. Please make some tests with Harbour compiled without
HB_COMPAT_XHB and xHarbour code using REQUEST XHB_LIB. It's possible
that I missed sth but some basic test shows that our emulation is
better then original and addresses places where xHarbour does not
work at all or gives strange results, f.e.:
#ifndef __XHARBOUR__
request XHB_LIB
#endif
proc main()
local h:={"ABC"=>123.45}
? h:abc
h:abc+=1000 ; ? h:abc
h["ABC"]+=1000; ? h:abc
p(@h:abc) ; ? h:abc
p(@h["ABC"]) ; ? h:abc
return
proc p(x)
x+=1000
return
or:
#ifndef __XHARBOUR__
request XHB_LIB
#endif
#include "hbclass.ch"
proc main()
local o:=myClass():new()
o:setget:="ABC"; ? o:setget
o:setget[2]:=42; ? o:setget
o:setget[2]+=42; ? o:setget
? o:setget[2]+=42; ? o:setget
?
o:var:="ABC"; ? o:var
o:var[2]:=42; ? o:var
o:var[2]+=42; ? o:var
? o:var[2]+=42; ? o:var
return
CREATE CLASS myClass
VAR var
METHOD setget SETGET
END CLASS
METHOD setget( xNewVal ) CLASS myClass
IF pcount() > 0
::var := xNewVal
ENDIF
RETURN ::var
* harbour/include/hbapirdd.h
* harbour/source/rdd/dbcmd.c
* harbour/source/rdd/workarea.c
* harbour/source/rdd/dbf1.c
* harbour/source/rdd/dbffpt/dbffpt1.c
* harbour/source/rdd/dbfcdx/dbfcdx1.c
* harbour/source/rdd/dbfdbt/dbfdbt1.c
* harbour/source/rdd/usrrdd/usrrdd.c
* harbour/contrib/rdd_ads/ads1.c
* changed second parameter in RELTEXT() method to PHB_ITEM
Now RELTEXT() works like FILTERTEXT() and the size of
expression is not limited. It's a modification I wanted
to make for a long time and I think that now is a good
moment to make it together with HB_FT_* modifications
- rmoved not longer necessary HARBOUR_MAX_RDD_RELTEXT_LENGTH
* harbour/source/rtl/gttrm/gttrm.c
* small cleanup
|
||
|
|
3ea86f8269 |
2007-09-25 03:20 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/include/hbset.h
* harbour/source/rtl/set.c
* changed recently added hb_set*() functions to hb_setGet*()
Please do not use these functions yet - it's possible that
they will be removed soon.
+ added hb_setGetL(), hb_setGetCPtr(), hb_setGetNI(), hb_setGetNL()
* harbour/contrib/libct/dattime2.c
* harbour/contrib/samples/date.c
* use hb_setGetCentury() instead of hb_setGetL( hb_set_century )
we do not have hb_set_century SET switch so hb_setGetL() cannot
be used
* harbour/harbour.spec
* harbour/bin/hb-func.sh
* harbour/bin/pack_src.sh
* harbour/contrib/Makefile
+ harbour/contrib/xhb
+ harbour/contrib/xhb/hboutdbg.c
+ harbour/contrib/xhb/cstruct.ch
+ harbour/contrib/xhb/hblog.prg
+ harbour/contrib/xhb/hblog.ch
+ harbour/contrib/xhb/hblognet.prg
+ harbour/contrib/xhb/hbxml.c
+ harbour/contrib/xhb/hbxml.h
+ harbour/contrib/xhb/hbxml.ch
+ harbour/contrib/xhb/hblogdef.ch
+ harbour/contrib/xhb/hbctypes.ch
+ harbour/contrib/xhb/wintypes.ch
+ harbour/contrib/xhb/txml.prg
+ harbour/contrib/xhb/hbsyslog.c
+ harbour/contrib/xhb/cstructc.c
+ harbour/contrib/xhb/Makefile
+ harbour/contrib/xhb/cstruct.prg
+ harbour/contrib/xhb/xhbfunc.c
+ added XHB library with xharbour compatible functions borrowed from
xHarbour. Now it contains HBLOG, HBXML, HBCSTRUCT, HASH, INET*()
functions and classes.
* harbour/source/rtl/itemseri.c
* harbour/source/rtl/strmatch.c
* harbour/source/rtl/hbinet.c
* harbour/source/vm/hashfunc.c
* moved xHarbour compatible functions to XHB library
* harbour/source/vm/classes.c
+ added support for ERROR HANDLER message in scalar classes
* harbour/contrib/tip/mail.prg
* harbour/contrib/tip/ftpcln.prg
+ added #include "hbcompat.ch"
* harbour/include/hbdbferr.h
+ added new RT errors: EDBF_CREATE_TEMP, EDBF_WRITE_TEMP, EDBF_READ_TEMP
* harbour/include/dbinfo.ch
+ added DBI_ENCRYPT, DBI_DECRYPT, DBI_MEMOPACK, DBI_DIRTYREAD
+ added DBOI_INDEXTYPE, DBOI_USECURRENT
+ added RDDI_LOCKRETRY, RDDI_DIRTYREAD
* harbour/include/dbinfo.ch
* harbour/include/hbrdddbf.h
* harbour/include/hbrddfpt.h
* harbour/include/hbrddcdx.h
* harbour/include/hbrddntx.h
* harbour/source/rdd/dbf1.c
* harbour/source/rdd/dbffpt/dbffpt1.c
* harbour/source/rdd/dbfntx/dbfntx1.c
* harbour/source/rdd/dbfcdx/dbfcdx1.c
+ added support for MEMOPACK, table ENCRYPT/DECRYPT, index DIRTYREAD
* harbour/include/hbapirdd.h
* harbour/include/dbstruct.ch
* harbour/include/hbusrrdd.ch
* harbour/contrib/rdd_ads/ads1.c
* harbour/contrib/rdd_ads/ace.h
* harbour/source/rdd/dbfdbt/dbfdbt1.c
* harbour/source/rdd/dbffpt/dbffpt1.c
* harbour/source/rdd/dbcmd.c
* harbour/source/rdd/wafunc.c
* harbour/source/rdd/workarea.c
* harbour/source/rdd/dbf1.c
* harbour/source/rdd/sdf1.c
* harbour/source/rdd/delim1.c
* changed HB_IT_* as field type to HB_FT_*
+ added field flags HB_FF_*
+ added support for new field types to core code
* harbour/source/rdd/dbf1.c
+ added support for AUTOINC (+), ROWVERSION (^), TIME (T), DAYTIME (@)
and MODTIME (=) fields
* harbour/contrib/rdd_ads/ads1.c
* harbour/contrib/rdd_ads/ace.h
+ added support for ROWVERSION (^), and MODTIME (=) fields
! harbour/source/rdd/dbcmd.c
* fixed bug in dbSkipper() reported by Viktor
+ harbour/include/hbsix.ch
* harbour/source/rdd/hbsix/Makefile
* harbour/source/rdd/hbsix/sxdate.c
* harbour/source/rdd/hbsix/sxcompr.c
* harbour/source/rdd/hbsix/sxcrypt.c
+ harbour/source/rdd/hbsix/sxsem.c
+ harbour/source/rdd/hbsix/sxord.c
+ harbour/source/rdd/hbsix/sxredir.c
+ harbour/source/rdd/hbsix/sxfname.c
+ harbour/source/rdd/hbsix/sxtable.c
+ harbour/source/rdd/hbsix/sxutil.c
+ harbour/source/rdd/hbsix/sxcompat.prg
+ harbour/source/rdd/hbsix/sxtrig.prg
+ harbour/source/rdd/hbsix/sxini.prg
+ added SIx3 compatible functions:
RDD_Count(), RDD_Name(), RDD_Info(), SetRDD(),
sxChar(), sxNum(), sxDate(), sxLog(),
Sx_DToP(), Sx_PToD(),
Sx_BLOB2File(), Sx_File2BLOB(),
Sx_Compress(), Sx_Decompress(),
Sx_FCompress(), Sx_FDecompress(),
Sx_AutoOpen(), Sx_AutoShare(),
Sx_MemoExt(), Sx_MemoBlk(), Sx_SetMemoBlock(), Sx_MemoPack(),
Sx_SetTrigger(), Sx_SetTrig(), Sx_DefTrigger(),
Sx_INIheader(), _sx_INIinit(), _sxOpenInit(),
Sx_SetPass(),
Sx_Encrypt(), Sx_Decrypt(), Sx_DBFdecrypt(), Sx_DBFencrypt(),
sx_MakeSem(), sx_KillSem(), sx_IsSem(),
Sx_ClrScope(), Sx_SetScope(),
Sx_Freeze(), Sx_Warm(), Sx_Chill(), Sx_Thermometer(),
Sx_IsReindex(), Sx_Step(), Sx_KeysIncluded(),
Sx_I_IndexName(), Sx_I_TagName(),
Sx_IndexCount(), Sx_IndexName(), Sx_IndexType(), Sx_IndexFilter(),
Sx_ROXLock(), Sx_ROXUnLock(), Sx_IsMyROX(), Sx_IsROXLock(),
Sx_KeyAdd(), Sx_KeyDrop(), Sx_KeyData(),
Sx_KeySkip(), Sx_KeyCount(), Sx_KeyNo(), Sx_KeyGoto(),
Sx_WildSeek(), Sx_WildMatch(),
Sx_IsFLocked(), Sx_IsReadOnly(), Sx_IsShared(),
Sx_IsLocked(), Sx_IsDBT(),
Sx_IDtype(), Sx_TableType(), Sx_TableName(),
Sx_SetTurbo(), Sx_TurboArea(), Sx_SetDirty(), Sx_DirtyArea(),
Sx_RLock(), Sx_UnLock(), Sx_GetLocks(), Sx_LockRetry(),
Sx_SeekLast(), Sx_FindRec(),
Sx_SkipUnique(), Sx_TagUnique(),
Sx_TagCount(), Sx_TagOrder(), Sx_TagNo(), Sx_TagName(),
Sx_TagInfo(), Sx_Tags(),
Sx_SetTag(), Sx_SetTagOrder(), Sx_SetTagNo(),
Sx_KillTag(),
Sx_FileOrder(), Sx_SetFileOrd(), Sx_ClearOrder(),
Sx_VSigLen(), Sx_VFGet(),
Sx_dbCreate(), Sx_StrxCheck(), Sx_Rollback(), Sx_SortOption(),
_sxCondSet(),
Sx_FNameParser(), Sx_SlimFast(),
Sx_Version(), Sx_Error(),
+ added SIx3 compatible commands:
SET DIRTYREAD ON|OFF
USE ... [TRIGGER <cTrigger>] [PASSWORD <cPassword>]
SORT ... USECURRENT
WILDSEEK <str>
WILDSEEKNEXT <str>
CLEAR ORDER <order>
SET TAGORDER TO [<order>]
SET ORDER TO TAG <(tag)> [OF <(bag)>]
SET TAG TO [<tag> [OF <(bag)>]]
REINDEX OPTION <eval> [STEP <step>]
DELETE TAG <(tag1)> [OF <(bag1)>] [, <(tagN)> [OF <(bagN)>]]
DELETE TAG ALL [OF <(bag)>]
CLEAR SCOPE
SET SCOPETOP TO [<value>]
SET SCOPEBOTTOM TO [<value>]
SET SCOPE TO [<value>]
SET TURBOREAD ON|OFF
MEMOPACK [BLOCK <size>] [OPTION <opt> [STEP <step>]]
SET MEMOBLOCK TO <value>
SUBINDEX ON <key> TO <(file)> ;
[OPTION <eval> [STEP <every>]] [FILTERON] [EMPTY]
SUBINDEX ON <key> TAG <(tag)> [OF <(bag)>] [TO <(bag)>] ;
[OPTION <eval> [STEP <every>]] [FILTERON] [EMPTY]
INDEX ON <key> [TAG <(tag)>] TO <(bag)> ;
[OPTION <eval> [STEP <every>]] [FILTERON] [EMPTY] [SUBINDEX]
INDEX ON <key> TAG <(tag)> [OF <(bag)>] [TO <(bag)>] ;
[OPTION <eval> [STEP <every>]] [FILTERON] [EMPTY] [SUBINDEX]
Unlike Ads*() functions the Sx_*() ones can be used with any RDD
and will work if RDD supports necessary functionality.
The global settings in SIx3 are RDD dependent in Harbour, f.e.
in SIx3 Sx_MemoExt() change MEMO file extensions in all SIX* RDDs
but in Harbour only in default RDD driver.
In Harbour default trigger function "Sx_DefTrigger" is not
enabled by default. If user needs such functionality then he
has to enable it himself using
rddInfo( RDDI_TRIGGER, "SX_DEFTRIGGER", [<cRDD>] )
f.e. this code:
init procedure sx_inittrig()
local aRDDs := { "DBF", "DBFNTX", "DBFCDX", "SIXCDX", ;
"RMDBFNTX", "RMDBFCDX" }
local aRDDList := RddList(), cRdd
for each cRdd in aRDDs
if ascan( aRDDList, { |x| x == cRdd } ) != 0
rddInfo( RDDI_TRIGGER, "SX_DEFTRIGGER", cRDD )
endif
next
return
sets SX_DEFTRIGGER as default trigger in DBF* based RDDs.
I still do not allow to encrypt tables with memo fields to not
replicate SIx3 bugs which may cause data corruption.
|
||
|
|
685393a361 |
2007-06-23 11:10 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/source/rtl/gtchrmap.c
* harbour/source/rtl/gttrm/Makefile
* harbour/source/rtl/gttrm/gttrm.c
+ set Id keyword property
* harbour/source/common/expropt1.c
! fixed typo in HB_TRACE() parameters
* harbour/include/hbapicdp.h
* harbour/include/hbapirdd.h
* harbour/source/rtl/strcase.c
* harbour/source/rtl/is.c
* harbour/source/rtl/gtxwc/gtxwc.h
* harbour/source/rtl/gtxwc/gtxwc.c
* harbour/source/rtl/gtstd/gtstd.c
* harbour/source/rtl/gtsln/gtsln.c
* harbour/source/rtl/gtsln/gtsln.h
* harbour/source/rtl/gtpca/gtpca.c
* harbour/source/rtl/gtcgi/gtcgi.c
* harbour/source/rdd/dbfcdx/dbfcdx1.c
* harbour/source/vm/hvm.c
! fixed compilation with HB_CDP_SUPPORT_OFF - I do not plan to
create such builds but now these macro allow to easy locate
CDP dependent code
* harbour/include/hbextern.ch
* harbour/source/rtl/cdpapi.c
+ added two prg functions for translations from/to UTF-8:
HB_STRTOUTF8( <cStr> [, <cCPID> ] ) -> <cUTF8Str>
HB_UTF8TOSTR( <cUTF8Str> [, <cCPID> ] ) -> <cStr>
<cCPID> is Harbour codepage id, f.e.: "EN", "ES", "ESWIN",
"PLISO", "PLMAZ", "PL852", "PLWIN", ...
When not given then default HVM codepage (set by HB_SETCODEPAGE())
is used.
|
||
|
|
96526823f3 |
2007-05-06 20:30 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/source/rdd/wacore.c
* harbour/source/vm/classes.c
* harbour/include/hbapirdd.h
* harbour/source/compiler/hbmain.c
* updated HB_TRACE messages and some minor cleanups
* harbour/source/rdd/dbcmd.c
! fixed initialisation of DBRELINFO dbSetRelation() - thanks to Antonio
for locating the problem
* harbour/source/rtl/idle.c
* increase timeout in nanosleep() from 1 microsecond to 1 millisecond
- removed some wrong comment
|
||
|
|
271095b949 |
2007-05-03 16:10 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/common.mak
* harbour/include/hbapirdd.h
- harbour/include/hbrddwrk.h
* harbour/source/rdd/Makefile
+ harbour/source/rdd/wacore.c
+ harbour/source/rdd/wafunc.c
* harbour/source/rdd/workarea.c
* cleaned RDD code:
* the default work area implementation from which each RDD inherits
and RDD management is now in workarea.c file - this part will be
common for all threads in future MT version
* the code to mange workareas and aliases moved to wacore.c - this
code uses some static variables which will be moved to HVM stack
in MT version
* helper RDD functions thread independent moved to wafunc.c
* harbour/source/rdd/dbcmd.c
* removed RDD/WorkArea management code - only independent HB_FUNCs
left. IMHO it will be good to divide this file into few ones.
* changed dbCreate() and dbUseArea() to return logical value
* harbour/config/global.cf
- removed nulsys from linked library list - it should not be here
because it can confuse some linkers and wrong library will be
created
* harbour/contrib/rdd_ads/ads1.c
* harbour/source/rdd/dbf1.c
* harbour/source/rdd/delim1.c
* harbour/source/rdd/sdf1.c
* harbour/source/rdd/dbfcdx/dbfcdx1.c
* harbour/source/rdd/dbfdbt/dbfdbt1.c
* harbour/source/rdd/dbffpt/dbffpt1.c
* harbour/source/rdd/dbfntx/dbfntx1.c
* harbour/source/rdd/nulsys/nulsys.c
* updated for recent modifications in RDD API
* harbour/include/hbextern.ch
- removed __RDDSETDEFAULT() - this function was necessary with old
rdd register code and we not not need it for few years. It's not
Clipper function so I do not see any reason to keep it but if you
want we can add wrapper to standard RDDSETDEFAULT()
* harbour/source/rdd/hbsix/sxcompr.c
+ added workaround for SIX3 bug which I intentionally replicated in
[x]Harbour but it may cause data corruption so IMHO it will be better
to fix it.
* harbour/source/rtl/errorsys.prg
* added default action for EG_LOCK - it's Clipper compatible behavior
but done in differ way. Due to some differences in linker we are
using we cannot exactly replicate Clipper behavior because it will
not work on some platforms as expected so I decided to add it here.
I think it's even more Clear then the trick with source/sys/ntxerr.prg
done by Clipper. Many people do not even knows about it.
* harbour/source/rtl/gtcrs/chrmap.c
* changed environment variable name from HB_CHRMAP to HB_CHARMAP to
be compatible with description in default map file
|
||
|
|
2758cb6082 |
2006-07-25 22:50 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/include/hbapirdd.h
* harbour/source/rdd/dbcmd.c
* harbour/source/vm/hvm.c
* do not generate RT errors "Alias does not exist" in constructions
like: ("NOT_EXISTING_ALIAS")->(...)
Clipper compatible modifications. I do not like it but current
previous behavior made problems for people who have code like:
if ("NOT_EXISTING_ALIAS")->(used())
...
else
? "Table not open..."
endif
! fixed some other RT errors to be Clipper compatible
|
||
|
|
d495e5ad00 |
2006-05-19 21:05 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/bin/hb-func.sh
* added support -go[0-3] and other -g* switches to xhb* scripts
* harbour/include/hbapi.h
+ added ISSYMBOL() macro
* formatting
* harbour/include/hbapirdd.h
* changed definition of SUPERTABLE for optional dynamic overloading
this modification will not effect existing code
* harbour/include/hbrddfpt.h
* harbour/source/rdd/dbffpt/dbffpt1.c
* added support for NIL value in SIX3 FPT files
* harbour/include/hbcomp.h
* harbour/source/compiler/harbour.c
* harbour/source/compiler/genc.c
* harbour/source/compiler/gencli.c
* harbour/source/compiler/genhrb.c
* harbour/source/compiler/genjava.c
! message symbols are not function symbols - cleaned the HB_FS_MESSAGE
usage and fix the problem with registering static function in global
symbol table
* harbour/source/compiler/gencc.c
! fixed typo in compilation for platforms 64 bit LONG
* harbour/include/hbvmpub.h
* harbour/source/compiler/cmdcheck.c
* harbour/source/vm/asort.c
* harbour/source/vm/evalhb.c
* formatting
* harbour/source/rdd/dbcmd.c
* formatting and some minor clean-up
* harbour/source/rdd/workarea.c
* added default SYSNAME method
! fixed possible memory leak when APPEND failed in TRANSREC method
* harbour/source/rdd/hsx/hsx.c
! fixed using HS_ADD()/HS_REPLACE() without STRING/BLOCK expression
* harbour/source/rtl/cdpapi.c
* cleaned GCC4 warning
* harbour/source/rtl/do.c
* changed to keep parameter references in DO() function. Now it works
like IIF()/EVAL()
* harbour/source/vm/classes.c
* removed some definitions repared from hbapi.h
+ added support to passing function references as HB_IT_SYMBOL
* harbour/source/vm/dynlibhb.c
! fixed GPF in HB_LIBDO called with wrong parameter
* harbour/source/vm/hvm.c
! fixed hb_rddGetFieldValue() to not operate on unallocated stack area
it could cause unpredictable results when RDD had to access HVM, f.e.
for evaluation some pending relations. The whole code should be
carefully checked and to not operate on hb_stackTopItem() if other
functions are called to make the HVM fully reentrant.
+ added commented out support for passing HB_IT_SYMBOL as function
pointer
* formatting
* harbour/source/vm/itemapi.c
* return "S" for HB_IT_SYMBOL by hb_itemType()
* formatting
|
||
|
|
a290c984e7 |
2006-02-04 17:05 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/harbour.spec
* harbour/make_bsd.sh
* harbour/make_drw.sh
* harbour/make_gnu.sh
* harbour/make_rpm.sh
* harbour/make_tgz.sh
* harbour/bin/hb-func.sh
* harbour/bin/pack_src.sh
* harbour/config/c.cf
* harbour/config/global.cf
* harbour/config/rules.cf
* harbour/config/darwin/gcc.cf
* harbour/config/darwin/global.cf
* harbour/config/dos/djgpp.cf
* harbour/config/dos/global.cf
* harbour/config/dos/install.cf
* harbour/config/dos/owatcom.cf
* harbour/config/hpux/gcc.cf
* harbour/config/hpux/global.cf
* harbour/config/linux/gcc.cf
* harbour/config/linux/global.cf
* harbour/config/linux/owatcom.cf
* harbour/config/sunos/gcc.cf
* harbour/config/w32/watcom.cf
* include ADSRDD by default in RPMs
* updated for new RPM which does not accept some old tags
* set -fPIC on 64bit platforms
+ added /etc/harbour/hb-charmap.def
* updated for new GT system and drivers
* harbour/contrib/dot/pp.prg
* harbour/contrib/dot/pp_harb.ch
* use _APMAIN as startup function
* cleaned direct access to item internals
* harbour/contrib/libct/Makefile
+ harbour/contrib/libct/ctwfunc.c
+ harbour/contrib/libct/ctwin.c
+ harbour/contrib/libct/ctwin.h
* added CT3 like Window System - it's a GT driver which inherits
from the existing one and adds CTW functionality
* harbour/contrib/libct/screen1.c
* updated for GTAPI modifications
* harbour/contrib/libnf/Makefile
* harbour/contrib/libnf/chdir.c
* harbour/contrib/libnf/mkdir.c
* harbour/contrib/libnf/rmdir.c
* use hb_fs*() API functions instead of calling DOS interrupts
Now NF dir functions works on all platforms - it will be nice
to update other functions too.
* harbour/contrib/libnf/dispc.c
* harbour/contrib/libnf/ftattr.c
* updated for GT API modifications, some of this code still depends
on EGA/VGA video buffer so will work only if user will force in GT
using it - it will be nice to rewrite them
* harbour/contrib/odbc/odbc.c
* harbour/contrib/ole/ole2.c
* casting and cleaning direct access to item internals
* harbour/contrib/rdd_ads/ads1.c
* harbour/contrib/rdd_ads/adsfunc.c
* harbour/contrib/rdd_ads/adsmgmnt.c
* synced with xHarbour
* harbour/include/Makefile
* added new header files
+ harbour/include/hbgtinfo.ch
+ added GTI_* defintions for hb_gtInfo() function.
This function works in similar way to dbInfo() in RDD.
The GTI_* definitions are taken from xHarbour "as is" and
they should be cleaned - not all functionality are supported
in Harbour and some others should be implemented in differ
way then in xHarbour.
+ harbour/include/hbgtcore.h
* harbour/include/hbapigt.h
* new GTAPI
hbgtcore.h file should not be included by user code
it's only for internal use in GT drivers
* HB_inkey_enum changed to int - this is bit field not enumerated type.
Many of C/C++ compilers forbid bit operations on enum types and
forcing it by casting which finally exceeds the enum range is defined
as bug because it may badly interacts with some compiler optimizations
* harbour/include/hbapi.h
* harbour/include/hbapicdp.h
* harbour/include/hbapierr.h
* harbour/include/hbapifs.h
* harbour/include/hbapiitm.h
* harbour/include/hbapilng.h
* harbour/include/hbapirdd.h
* harbour/include/hbdate.h
* harbour/include/hbdefs.h
* harbour/include/hbinit.h
* harbour/include/hbpcode.h
* harbour/include/hbrdddbf.h
* harbour/include/hbset.h
* harbour/include/hbstack.h
* harbour/include/hbvm.h
* harbour/include/hbvmopt.h
* harbour/include/hbvmpub.h
* separated internal and external API. Now the definitions for
internal HVM structures and functions are excluded by default
they could be enabled if user include hbvmopt.h before other
header files. Such operation should be done _ONLY_ by core
code - if 3-rd party developers make sth like that then it's
for their own risk and such code may stop to work with next
Harbour versions. Without hbvmopt.h the internal structures
like HB_ITEM, HB_DYNS, ... are mapped to 'void' so there is
no way to access their members so we can modify them in the
future without afford for 3-rd party code.
There is one small exception 'type' should be the first member
for HB_ITEM structure because I used a small ugly hack in
HB_IS_*() macros with castin PHB_ITEM to HB_TYPE* - it works
without speed overhead but if you think that it will be
better/cleaner to not use such tricks then it's enough to
change HB_ITEM_TYPE() definitions in hbvmpub.h - see note.
* cleared the usage of HB_EXPORT - to avoid problems with some C/C++
compilers we agreed that the only one common way of using HB_EXPORT
is adding it ad begining of declaration - please keep this convention
in the future.
+ added new functions:
hb_extIsObject(), hb_codeblockId(), hb_idleSleep(),
hb_fsGetOsHandle(),
hb_dynsymFindSymbol(), hb_dynsymGetSymbol(),
hb_dynsymSymbol(), hb_dynsymName(),
hb_dynsymMemvarHandle(), hb_dynsymAreaHandle(), hb_dynsymSetAreaHandle()
* changed hb_arrayClone() declaration to:
PHB_ITEM hb_arrayClone( PHB_ITEM pArray )
* changed hb_arrayFromParams() declaration to:
PHB_ITEM hb_arrayFromParams( int iLevel )
The previous version needed a pointer to stack relocatable area
so any stack resizing could cause GPF.
* harbour/include/inkey.ch
* added definitions for extended mouse keys/events and some key
combinations
* harbour/source/codepage/uc1250.c
* harbour/source/codepage/uc1251.c
* harbour/source/codepage/uc1253.c
* harbour/source/codepage/uc1257.c
* harbour/source/codepage/uc737.c
* harbour/source/codepage/uc850.c
* harbour/source/codepage/uc852.c
* harbour/source/codepage/uc866.c
* harbour/source/codepage/uc88591b.c
* harbour/source/codepage/uc8859_1.c
* harbour/source/codepage/uc8859_2.c
* harbour/source/codepage/uc8859_5.c
* harbour/source/codepage/uckoi8.c
* harbour/source/codepage/uckoi8u.c
* harbour/source/codepage/ucmaz.c
* updated unicode values for characters in rabge 1-31 to keep
DOS compatibility
* harbour/source/common/expropt1.c
* harbour/source/common/hbarch.c
* harbour/source/common/hbdate.c
* harbour/source/common/hbstr.c
* harbour/source/common/hbver.c
* keep HB_EXPORT at the beginning of function declaration
* harbour/include/hbpcode.h
* harbour/include/hbcomp.h
* harbour/source/compiler/harbour.c
* harbour/source/compiler/harbour.y
* harbour/source/compiler/hbfix.c
+ harbour/source/compiler/hbdead.c
* harbour/source/compiler/hbpcode.c
+ harbour/source/compiler/hbstripl.c
% rewritten jump optimization
! fixed some minor problems
* do not optimize jumps and local variable access by shorter
PCODE version and HB_P_NOOP when jump optimization is
disabled, this is a note I left in source code in few places:
/*
* optimizing jumps here by shorting them and setting HB_P_NOOPs
* only slow down the compilation process for three reasons:
* 1. When it's dummy jump to next instruction we need two passes
* in hb_compOptimizeJumps() to fully remove it
* 2. hb_compOptimizeJumps() also make jump shortcutting in each pass
* 3. When Jump Optimization is disabled (-kJ) then it cause slowness
* at runtime because we will have more HVM loops: first for the
* shorter jump and next for the HB_P_NOOP PCODE(s)
* [druzuz]
*/
+ added support for multi passes in jump/dead code elimination
(hb_compOptimizeJumps())
By default is set upto three passes.
Now hb_compOptimizeJumps() keeps all compiler internal data clean
on exist and can be called any times and does not change other
compiler's functions behaviors
+ added dummy jumps elimination
+ added optimization for:
IF .T.
IF .F.
WHILE .T.
WHILE .F.
etc.
* restored empty BEGIN/RECOVER sequence block elimination
if Jump Optimization is enabled then it marks the block
with HB_P_NOOPS else it cut the generated PCODE
+ added dead code eliminator (new functions hb_compCodeTraceMarkDead()/
hb_compPCodeTrace() - it works only when Jump Optimization is
not disabled)
As a result of the above we have smaller and faster PCODE.
I do not think that we will have meta code support in the reasonable
time and because I need some valid compiler data/structures like
updated table of all jumps for real C code (not PCODE in .c files)
generation then I decide to make some modifications and the above
is in practice a side effect of this work.
* harbour/source/rdd/dbcmd.c
* harbour/source/rdd/dbf1.c
* harbour/source/rdd/rddord.prg
* harbour/source/rdd/workarea.c
* harbour/source/rdd/dbfcdx/dbfcdx1.c
* harbour/source/rdd/dbffpt/dbffpt1.c
* harbour/source/rdd/dbfntx/dbfntx1.c
* harbour/source/rdd/nulsys/nulsys.c
* synced with my modifications in xHarbour
* updated for API modifications
* harbour/source/rtl/Makefile
+ added gtsys.c, gtfunc.c, hbgtcore.c
* harbour/source/rtl/accept.c
* harbour/source/rtl/alert.prg
* harbour/source/rtl/cdpapi.c
* harbour/source/rtl/console.c
* harbour/source/rtl/dates.c
* harbour/source/rtl/do.c
* harbour/source/rtl/errorapi.c
* harbour/source/rtl/errorsys.prg
* harbour/source/rtl/file.c
* harbour/source/rtl/fserror.c
* harbour/source/rtl/fstemp.c
* harbour/source/rtl/hbffind.c
* harbour/source/rtl/idle.c
* harbour/source/rtl/math.c
* harbour/source/rtl/oldclear.c
* harbour/source/rtl/strmatch.c
* harbour/source/rtl/strpeek.c
* harbour/source/rtl/valtype.c
* harbour/source/rtl/xsavescr.c
* updated for API modifications
* cleaned some compiler warnings
* harbour/source/rtl/filesys.c
+ added hb_fsGetOsHandle()
* updated for API modifications
* harbour/source/rtl/gt.c
* harbour/source/rtl/gtapi.c
* harbour/source/rtl/gtapiu.c
+ harbour/source/rtl/gtfunc.c
+ harbour/source/rtl/gtsys.c
+ harbour/source/rtl/hbgtcore.c
* harbour/source/rtl/inkey.c
* harbour/source/rtl/maxrow.c
* harbour/source/rtl/mouseapi.c
* harbour/source/rtl/setcolor.c
* harbour/source/rtl/setposbs.c
* harbour/source/rtl/shadow.c
* new GT API code
* harbour/source/rtl/saverest.c
* changed default behavior in SEVESCREEN/RESTSCREEN with parameters
out of screen range to be Clipper compatible. Added last logical
parameter to keep previous behavior for programs which begins to
use it.
* harbour/source/rtl/seconds.c
* include missing header file to fix C++ compilation
* make hb_secondsCPU global function
* harbour/source/rtl/set.c
* make HB_SET_TYPEAHEAD Clipper compatible
* harbour/source/rtl/gtcgi/Makefile
* harbour/source/rtl/gtcgi/gtcgi.c
- harbour/source/rtl/gtcgi/mousecgi.c
* rewritten for new GT API
some detail behaviors has been changed but I think the current
implementation is better for CGI programs output - please check
and fix me if necessary
* harbour/source/rtl/gtcrs/Makefile
- harbour/source/rtl/gtcrs/charmap.prg
+ harbour/source/rtl/gtcrs/chrmap.c
- harbour/source/rtl/gtcrs/debug.map
- harbour/source/rtl/gtcrs/eterm.map
* harbour/source/rtl/gtcrs/gtcrs.c
+ harbour/source/rtl/gtcrs/gtcrs.h
+ harbour/source/rtl/gtcrs/hb-charmap.def
- harbour/source/rtl/gtcrs/kbdcrs.c
- harbour/source/rtl/gtcrs/keymap.prg
- harbour/source/rtl/gtcrs/linux.map
- harbour/source/rtl/gtcrs/mousecrs.c
* new GTCRS based on my xHarbour and Flagship curses code
Please not that at runtime it looks for a file
/etc/harbour/hb-charmap.def where user can fully tune output
for his terminal. This file is included with proper path in
binaries created by make_rpm.sh and make_tgz.sh
Ryszard I've removed some of your extensions which are no longer
necessary and some other (keyboard sequence redefinition) should
be done in a little bit differ way. I would like to talk about it
when you test current code.
Added support for extended mouse keys (middle button and wheel).
* harbour/source/rtl/gtdos/Makefile
* harbour/source/rtl/gtdos/gtdos.c
- harbour/source/rtl/gtdos/mousedos.c
* rewritten for new GT API
Fixed some small problems, finished mouse code which for DJGPP
is fully Clipper compatible with real mouse SAVE/RESTORE code.
For other compilers it should be updated depending on memory
model and used DPMI driver (if any).
* harbour/source/rtl/gtos2/Makefile
* harbour/source/rtl/gtos2/gtos2.c
- harbour/source/rtl/gtos2/mouseos2.c
* rewritten for new GT API
Fixed some problems and finished the mouse code.
Please test it - I made all modifications without OS2 and
I was not able to make any test. I'm interesting in information
if it works and the speed difference - f.e. results from
tests/vidtest.prg run with previous and current version.
* harbour/source/rtl/gtpca/Makefile
* harbour/source/rtl/gtpca/gtpca.c
- harbour/source/rtl/gtpca/kbdos2.gcc
- harbour/source/rtl/gtpca/mousepca.c
* rewritten for new GT API
and finished so now it's full functional GT driver
I'm interesting in keyboard sequences used by PC-ANSI drivers
in DOS so it will be possible to implement also support for
extended keys input.
* harbour/source/rtl/gtsln/Makefile
* harbour/source/rtl/gtsln/gtsln.c
+ harbour/source/rtl/gtsln/gtsln.h
* harbour/source/rtl/gtsln/kbsln.c
* harbour/source/rtl/gtsln/keytrans.c
* harbour/source/rtl/gtsln/mousesln.c
* rewritten for new GT API basing on current xHarbour code
added support for slang 1.4x patched for UNICODE (Debian
patches used by most of current Linux distributions) and
slang 2.x - It's unicode ready, tries to detect terminal mode
(utf-8/iso) at startup and switch the internal logic to
iso/unicode mode. When compiled with slang 1.4x or 2.x
and terminal is in UTF-8 it can display all characters like
in DOS if only used font have them or good fall-back table is
loaded (f.e. the one created by QRCZAK)
Added support for extended mouse keys (middle button and wheel).
* harbour/source/rtl/gtstd/Makefile
* harbour/source/rtl/gtstd/gtstd.c
- harbour/source/rtl/gtstd/mousestd.c
* rewritten for new GT API
Now it can work as full screen GT driver redrawing the previous
screen contents from internal GT core buffers. I run with this
GT some of my programs and they work quite well ;-) of course
without colors.
* harbour/source/rtl/gtwin/Makefile
* harbour/source/rtl/gtwin/gtwin.c
- harbour/source/rtl/gtwin/mousewin.c
* updated for new GT API
+ harbour/source/rtl/gtxwc/Makefile
+ harbour/source/rtl/gtxwc/gtxwc.c
+ harbour/source/rtl/gtxwc/gtxwc.h
* new XWindow Console GT driver based on my and Giancarlo Niccolai
code form xHarbour - this GT can work in XWindow environment only
and create its own window for console output. It delays the
initialization to the moment when user try to display anything on
the screen so even without X Window system programs which uses this
GT can work as long as use only outstd/outerr output.
* harbour/source/vm/arrays.c
* updated for API modifications
+ added hb_arrayId(),
* changed hb_arrayClone() declaration to:
HB_EXPORT PHB_ITEM hb_arrayClone( PHB_ITEM pSrcArray )
* changed hb_arrayFromParams() declaration to:
PHB_ITEM hb_arrayFromParams( int iLevel )
* harbour/source/vm/arrayshb.c
* updated for API modifications
+ added new parameter iLevel to function HB_APARAMS()
* harbour/source/vm/classes.c
* harbour/source/vm/cmdarg.c
* harbour/source/vm/dynlibhb.c
* harbour/source/vm/estack.c
* harbour/source/vm/fm.c
* harbour/source/vm/garbage.c
* harbour/source/vm/maindll.c
* harbour/source/vm/maindllh.c
* harbour/source/vm/maindllp.c
* harbour/source/vm/mainstd.c
* harbour/source/vm/mainwin.c
* harbour/source/vm/memvars.c
* harbour/source/vm/pcount.c
* harbour/source/vm/proc.c
* updated for API modifications
* harbour/source/vm/codebloc.c
* updated for API modifications
+ added hb_codeblockId()
* harbour/source/vm/dynsym.c
* updated for API modifications
+ added new functions:
hb_dynsymFindSymbol(), hb_dynsymGetSymbol(),
hb_dynsymSymbol(), hb_dynsymName(),
hb_dynsymMemvarHandle(), hb_dynsymAreaHandle(), hb_dynsymSetAreaHandle()
* harbour/source/vm/eval.c
* updated for API modifications
* call hb_vmPushState()/hb_vmPopState() in hb_itemDo()/hb_itemDoC()
functions - it's necessary to make HVM reentrant safe.
* harbour/source/vm/extend.c
* updated for API modifications
+ added hb_extIsObject() similar to existing hb_extIsArray()
* harbour/source/vm/hvm.c
* updated for API modifications
+ added new functions: hb_vmPushState(), hb_vmPopState()
which save/restore HVM state (the top stack value which can be
processed and return item and maybe sth else in the future) making
HVM ready for reentrant.
* harbour/source/vm/itemapi.c
* updated for API modifications
+ added new function:
HB_EXPORT PHB_SYMB hb_itemGetSymbol( PHB_ITEM pItem );
! fixed bug in hb_itemPutNInt()
* harbour/tests/Makefile
* harbour/utils/hbdoc/Makefile
* harbour/utils/hbextern/Makefile
* harbour/utils/hbmake/Makefile
* harbour/utils/hbrun/Makefile
* harbour/utils/hbtest/Makefile
- removed badly added: dbfntx, dbfcdx, dbffpt, hbsix libraries.
what broke GNU make compilation for some compilers
This libraries should be included automatically when RDD lib
is included by *.cf files
Summary:
The whole patch (cvs diff -uN) is ~1.5MB length and I cannot describe
everything in details - sorry but it was too much modifications in
one commit so now just some of general notes.
The header files included as is does not have any information about
internal HVM structures and some functions. In practice only HB_SYMB
is public and it has to be public for .c files generated from .prg
so I force the fixed size of this structure (alignment independent)
by redefining some members to union with void * - it's a little bit
ugly trick but it effectively eliminates the problem of linking
binaries compiled with differ alignment C compiler switches.
The structures like HB_ITEM, HB_CODEBLOCK, HB_STACK, HB_DYNS are not
longer defined and pointers to the defined as void * - like in Clipper
the ITEM structure. It caused that I had to add some new functions
to make some operation still possible to implement. If I missed sth
and any of you will have a problem with your code then please inform
me about it and after a small discussion on Harbour developers list
we can decide if other functions should be added.
The internal API is still accessible. It's enough to include "hbvmopt.h"
file before other header files to enable it. Now only files in
source/vm directory include it.
The 3-rd party code which does not include hbvmopt.h (or tries to
set some internals macros) should be safe for future HVM modifications
and will work also with new binaries so 3-rd party library developers
should remember about it. If they won't then it's only their and
their clients problem not Harbour developers.
With this modifications I also create new GT model which is similar
to the one used by RDD with multi inheritance. It can be quite easy
extended to simultaneously load more then one GT subsystem (sth like
work areas in RDD) but I left it for the future when someone may
need it. hbapigt.h file now contains only information about public
functions and does not have any code which depends on current
internal implementation - it should be backword compatible as long
as somone did not try to use internal GT functions.
The internal GT system use hbgtcore.h file which should not be
included by 3-rd party code as long as someone will not make new
GT driver. The internal GT code is new so I expect that it will
be changed yet in the nearest future (I'm waiting for other developers
feedback) and in such case any 3-rd party GTs will have to be updated.
How it works:
The base GT driver (GTNUL) is fully functional GT driver which
makes all operations on memory buffer. After each screen write
Flush() method is called which check for dispcount() and if
it's 0 then call Refresh() method to update modified area by
Redraw() method. This method is dummy in GTNUL and external
output with this GT can be reached by outstd()/outerr() which
are now redirected to GT methods. A simple GT driver may overload
only Refresh() method to give full screen output.
Application can use only this GT driver and it seems to be very
good choice for GUI and background daemon/service programs.
This GT is loaded at startup then all other GTs can be loaded
later and inherit from the previously loaded GT drivers.
The new GT driver can overload as much method as wants/needs.
Now all GT operations are implemented as GT method so GT driver
can easy change their default behavior, f.e. it may fully overload
color parsing methods and use differ or extended to Clipper color
definitions.
I rewrote all existing GTs to work with new GT model.
OS2 users - please test GTOS2 which I was not able to test and
see the note in Redraw() method. If possible please make some
speed tests.
In fact now there is much more internal operations then it was
before but because they are done on memory only then current
code is much faster in this GT drivers which so far makes all
operations on real video area. I made some tests with GTNUL
and tests/vidtest.prg and the total overhead is minimal. Now
dipbegin()/dispend() in practice does not cost anything so it
gives additional speed improvement in application which extensively
use it.
More then one GT driver can be linked with final binaries and
chose on application startup by //GT<NAME> switch and/or environment
variable HB_GT=<name>
In the RTL is new GT function GTSYS() which works in similar way
to RDDSYS() in RDD subsystem and for linking default GT driver
for given platform. When RTL is compiled the default GT driver
is set to HB_GT_DEFAULT envvar and if not exist to HB_GT_LIB
envvar and if it also does not exist to hard coded platfom GTs
(see source/rtl/gtsys.c and source/rtl/Makefile for rules)
Adding to source code:
ANNOUNCE GTSYS
disable linking the default GT driver and:
REQUEST HB_GT_<name>
for linking given (<name>) GT driver, f.e.: REQUEST HB_GT_WIN
If you are working in SH environment (Linux and other *nixes users,
DJGPP bash, MinGW shell then it's possible to use -gt<name> switch
in hblnk / hbmk scripts to force linking GT drivers (it could be
repeated with different <name>) and the first one becomes the default
one. F.e.:
xhbmk -m -n -w -es2 -gtcrs -gtsln -gtstd -gtpca vidtest.prg
Usually the GT driver are loaded at HVM startup but it's possible
to load it later. I created new GT driver CTW which gives full
CT3 like Window system. The CT3 extended driver change the behavior
of some function in Clipper extended driver, f.e WRITECON() or
SETPOS() with parameters out of screen range. So I implemented it
CTW as RT GTs which is loaded when some of CTWIN function is used
(f.e. WOPEN()/WBOARD()) and inherits from any existing GT driver.
This is full CT3 WIN implementation with all detail behaviors I
found (with some CT3 bug fixes). It does not have any CT3 limitations
and can be used for any virtual screen/window size though I hardcoded
CT3 limitation for backword compatibility. If somone will want to
remove it then it will be enough to delete few lines from ctwin.c
file. I'm not CTWIN Clipper user so maybe I missed some side effects
in this driver and was not able to well test it so if you will find
any incompatibilities then please inform me.
THe default GT buffer uses 32bit character cell internally but
in savescreen/restscreen it uses VGA compatible two bytes character
cell. Some GT drivers may want to use differ character cell.
Now GTCRS and GTSLN use 32bit character cell by default. They
need additional information about character set (box/normal) to
properly display box characters. It is possible to force in this
GT drivers using Clipper compatible character cell by calling:
hb_gtInfo( GTI_COMPATBUFFER, <lCompat> ) -> <lPreviousSeting>
but in may cause that box drawing characters will be lost in
some countries after RESTSCREEN(). It will depend on used code
page.
HB_GTINFO() is new function which works in similar way to DBINFO()
in RDD. It allows to retrieve/change some of GT driver settings.
GTI_* actions are defined in hbgtinfo.ch - it has all GTI_*
definitions used in xHarbour. Now in Harbour only few of them
are implemented.
The new three .prg functions:
HB_SETKEYCP( <cTermCP> [,<cHostCP>] )
HB_SETDISPCP( <cTermCP> [,<cHostCP>] [,<lBoxChar>] )
HB_SETTERMCP( <cTermCP> [,<cHostCP>] [,<lBoxChar>] )
have been added. They set automatic input (HB_SETKEYCP)
and output (HB_SETDISPCP) (or both: HB_SETTERMCP) character
translation. They are also important for some GTs which
informing them about used internal code page for unicode
translation (GTXWC, GTSLN) and/or chosing proper character
set (standard/alternate) for letters and other (f.e. box
drawing characters) (GTCRS, GTSLN),
<cTermCP> is encoding used on external (terminal) side
<cHostCP> is encoding used internally, if not given then
current code page set HB_SETCODEPAGE() is used.
some of GTs which uses unicode output may
ignore <cTermCP>
<lBoxChar> is optional parameter which interacts with dispbox()
output disabling switching to alternate character
set in some GTs. It effectively causes that if internal
(host) code page contains some letters on the box char
positions then they will be shown also by box drawing
functions like dispbox() instead of CP437 characters.
In some cases it could be useful. By default lBoxChar
is not set and GTs which can switch between standard
and alternate character set (GTCRS, GTSLN) will try to
use alternate character set for box drawing functions.
Victor: I removed some of your functions. They can be very easy
implemented with hb_gt_GetChar()/hb_gt_PutChar() but I do not want to
make them part of documented external API because some GT drivers may
want to use absolutely differ color definitions and they will stop to
work so I do not want to make this functions documented external API.
Ryszard: Setting alternative debug keys does not longer work.
I like such possibilities but it should be implemented in differ
way to f.e. using HB_GTINFO interface to allow low level GT driver
extensions, f.e. in *nixes using CTRL+[A-Z] and SIGINT, SIGQUIT,
SIGTSTP signals for real asynchronous setting of debug/cancel flag
without keyboard polling from main HVM loop. I would like to discus
about such more general solution.
*** Please updated non GNU make files ***
|
||
|
|
04daca8372 |
2005-11-13 12:05 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/contrib/ole/ole2.c
* harbour/contrib/ole/oleauto.prg
! fixed casting
* harbour/contrib/rdd_ads/Makefile
* harbour/contrib/rdd_ads/ace.h
* harbour/contrib/rdd_ads/ads.ch
- harbour/contrib/rdd_ads/ads0.prg
* harbour/contrib/rdd_ads/ads1.c
* harbour/contrib/rdd_ads/adsfunc.c
* harbour/contrib/rdd_ads/adsmgmnt.c
* harbour/contrib/rdd_ads/rddads.h
* harbour/include/hbapirdd.h
* harbour/include/hbrddcdx.h
* harbour/include/hbrdddbf.h
* harbour/include/hbrdddbt.h
* harbour/include/hbrddfpt.h
* harbour/include/hbrddntx.h
* harbour/source/rdd/dbcmd.c
* harbour/source/rdd/dbf1.c
* harbour/source/rdd/dbsort.prg
* harbour/source/rdd/dbstrux.prg
* harbour/source/rdd/dbtotal.prg
* harbour/source/rdd/hbdbsort.c
* harbour/source/rdd/dbfcdx/dbfcdx1.c
* harbour/source/rdd/dbffpt/dbffpt1.c
* harbour/source/rdd/dbfntx/dbfntx1.c
* synced with xHarbour
* harbour/include/hbcomp.h
* harbour/source/compiler/harbour.c
* harbour/source/compiler/hbgenerr.c
* harbour/source/compiler/hbpcode.c
* emit warning and error messages to stderr instead of stdout
Now it's enabled only for *nix platforms.
* harbour/source/vm/extend.c
* allow hb_param() to return parameters accessed by HB_IT_BYREF
|
||
|
|
6d28a19d98 |
2005-10-24 13:23 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/include/hbapi.h
* harbour/include/hbapiitm.h
* harbour/include/hbapirdd.h
* harbour/include/hbdefs.h
* harbour/include/hbtypes.h
* harbour/source/rtl/empty.c
* harbour/source/vm/arrays.c
* harbour/source/vm/extend.c
* harbour/source/vm/hvm.c
* harbour/source/vm/itemapi.c
* harbour/source/vm/maindllp.c
+ added HB_TYPE to as HB_ITEM type marker.
* set HB_TYPE as UINT32
* updated to the above modifications
* cleaned some ~HB_IT_BYREF which has no effect in current VM
|
||
|
|
188575920d |
2005-10-24 02:50 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/contrib/dot/pp.prg
* harbour/contrib/dot/pp_harb.ch
* harbour/include/hbapi.h
* harbour/include/hbapirdd.h
* harbour/include/hbdefs.h
* harbour/include/hbextern.ch
* harbour/include/hbinit.h
* harbour/include/hbstack.h
* harbour/include/hbsxfunc.h
* harbour/include/hbvm.h
+ harbour/include/hbvmopt.h
* harbour/include/hbvmpub.h
* harbour/source/codepage/cdp_tpl.c
* harbour/source/codepage/cdppl852.c
* harbour/source/codepage/cdppliso.c
* harbour/source/codepage/cdpplmaz.c
* harbour/source/codepage/cdpplwin.c
* harbour/source/compiler/genc.c
* harbour/source/compiler/harbour.c
* harbour/source/lang/msgca.c
* harbour/source/lang/msgpl852.c
* harbour/source/lang/msgpliso.c
* harbour/source/lang/msgplmaz.c
* harbour/source/lang/msgplwin.c
* harbour/source/rdd/Makefile
* harbour/source/rdd/dbcmd.c
- harbour/source/rdd/dbf0.prg
* harbour/source/rdd/dbf1.c
- harbour/source/rdd/delim0.prg
* harbour/source/rdd/delim1.c
* harbour/source/rdd/rddsys.prg
- harbour/source/rdd/sdf0.prg
* harbour/source/rdd/sdf1.c
* harbour/source/rdd/dbfcdx/Makefile
- harbour/source/rdd/dbfcdx/dbfcdx0.prg
* harbour/source/rdd/dbfcdx/dbfcdx1.c
- harbour/source/rdd/dbfcdx/sixcdx0.prg
* harbour/source/rdd/dbfdbt/Makefile
- harbour/source/rdd/dbfdbt/dbfdbt0.prg
* harbour/source/rdd/dbfdbt/dbfdbt1.c
* harbour/source/rdd/dbffpt/Makefile
- harbour/source/rdd/dbffpt/dbffpt0.prg
* harbour/source/rdd/dbffpt/dbffpt1.c
* harbour/source/rdd/dbfntx/Makefile
* harbour/source/rdd/dbfntx/dbfntx0.prg
* harbour/source/rdd/dbfntx/dbfntx1.c
* harbour/source/rdd/hbsix/Makefile
* harbour/source/rdd/hbsix/sxcompr.c
* harbour/source/rdd/hbsix/sxcrypt.c
* harbour/source/rdd/hbsix/sxdate.c
* harbour/source/rdd/hsx/hsx.c
* harbour/source/rdd/nulsys/nulsys.prg
* harbour/source/rtl/browdbx.prg
* harbour/source/rtl/cdpapi.c
* harbour/source/vm/arrays.c
* harbour/source/vm/arrayshb.c
* harbour/source/vm/asort.c
* harbour/source/vm/break.c
* harbour/source/vm/classes.c
* harbour/source/vm/cmdarg.c
* harbour/source/vm/codebloc.c
* harbour/source/vm/debug.c
* harbour/source/vm/dynlibhb.c
* harbour/source/vm/dynsym.c
* harbour/source/vm/estack.c
* harbour/source/vm/eval.c
* harbour/source/vm/evalhb.c
* harbour/source/vm/extend.c
* harbour/source/vm/fm.c
* harbour/source/vm/garbage.c
* harbour/source/vm/hvm.c
* harbour/source/vm/initsymb.c
* harbour/source/vm/itemapi.c
* harbour/source/vm/macro.c
* harbour/source/vm/maindllp.c
* harbour/source/vm/memvars.c
* harbour/source/vm/memvclip.c
* harbour/source/vm/pcount.c
* harbour/source/vm/proc.c
* harbour/source/vm/pvalue.c
* harbour/source/vm/runner.c
* remove default API and stack macros. Now API/stack macros can be
enabled by including hb_vmopt.h file.
This file should be included _ONLY_ by core code because binary
object/libraries generated after can work only with _EXACTLY_ the
same HVM compiled the same C alignment switches
* cleaned some HB_EXTERN_C declaration - Anotonio you should be able
to build FWH now
* cleaned startup initialization code -
please update lang and codepage files - I only updated
source/codepage/cdppl*.c and source/lang/msgpl*.c files
Or other files should be updated or they will not work MSC
* synced with recent xHarbour modification in RDD init code
|
||
|
|
691b3a9890 |
2005-09-23 15:45 UTC+0100 Ryszard Glab <rglab@imid.med.pl>
* changes to synhronize RDD code with xHarbour (state of 23.09.2005)
Many, many thanks to Przemek Czerpak for his work.
|
||
|
|
e4ac791059 |
2004-12-28 10:30 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/harbour.spec
* harbour/hbgtmk.sh
* harbour/make_rpm.sh
* harbour/bin/pack_src.sh
* updated for recent changes in make process
* harbour/contrib/Makefile
* added odbc lib for Linux compilation
* harbour/contrib/btree/Makefile
* changed lib name from hb_btree to hbtree
* harbour/contrib/btree/hb_btree.api
* harbour/contrib/btree/hb_btree.c
* fixed GCC compilation in HB_TR_DEBUG mode
* harbour/contrib/hbzlib/hbzip.h
* harbour/contrib/hbzlib/include/hbzip.h
* harbour/include/hbapi.h
* harbour/include/hbapicdp.h
* harbour/include/hbapierr.h
* harbour/include/hbapifs.h
* harbour/include/hbapigt.h
* harbour/include/hbapiitm.h
* harbour/include/hbapilng.h
* harbour/include/hbapirdd.h
* harbour/include/hbcomp.h
* harbour/include/hbdate.h
* harbour/include/hbdbsort.h
* harbour/include/hberrors.h
* harbour/include/hbexprb.c
* harbour/include/hbexprop.h
* harbour/include/hbhash.h
* harbour/include/hbinit.h
* harbour/include/hbmacro.h
* harbour/include/hbpp.h
* harbour/include/hbrdddel.h
* harbour/include/hbrddntx.h
* harbour/include/hbrddsdf.h
* harbour/include/hbrddwrk.h
* harbour/include/hbset.h
* harbour/include/hbstack.h
* harbour/include/hbtrace.h
* harbour/include/hbvm.h
* harbour/include/hbvmpub.h
* changed #if defined (HB_EXTERN_C) to HB_EXTERN_BEGIN / HB_EXTERN_END
macros for easier manipulation with different ABI
* added HB_IS_BADITEM() macro for debugging
* synced CDP with xHarbour - added basic Unicode support
* synced RDD with xHarbour
* harbour/source/codepage/Makefile
* harbour/source/codepage/cdp_tpl.c
* harbour/source/codepage/cdpeldos.c
* harbour/source/codepage/cdpelwin.c
* harbour/source/codepage/cdpesdos.c
* harbour/source/codepage/cdpeswin.c
* harbour/source/codepage/cdpgedos.c
* harbour/source/codepage/cdpgewin.c
* harbour/source/codepage/cdphu852.c
* harbour/source/codepage/cdphuwin.c
* harbour/source/codepage/cdppl852.c
* harbour/source/codepage/cdppliso.c
* harbour/source/codepage/cdpplmaz.c
* harbour/source/codepage/cdpplwin.c
* harbour/source/codepage/cdppt850.c
* harbour/source/codepage/cdpptiso.c
* harbour/source/codepage/cdpru866.c
* harbour/source/codepage/cdprukoi.c
* harbour/source/codepage/cdpruwin.c
* harbour/source/codepage/cdpsl437.c
* harbour/source/codepage/cdpsl852.c
* harbour/source/codepage/cdpsliso.c
* harbour/source/codepage/cdpslwin.c
* harbour/source/codepage/cdpsrwin.c
+ harbour/source/codepage/uc1250.c
+ harbour/source/codepage/uc1251.c
+ harbour/source/codepage/uc1253.c
+ harbour/source/codepage/uc1257.c
+ harbour/source/codepage/uc737.c
+ harbour/source/codepage/uc850.c
+ harbour/source/codepage/uc852.c
+ harbour/source/codepage/uc866.c
+ harbour/source/codepage/uc88591b.c
+ harbour/source/codepage/uc8859_1.c
+ harbour/source/codepage/uc8859_2.c
+ harbour/source/codepage/uckoi8.c
+ harbour/source/codepage/uckoi8u.c
+ harbour/source/codepage/ucmaz.c
* harbour/source/rtl/cdpapi.c
* synced HB CDP API with xHarbour - added basic Unicode support
* harbour/source/common/expropt2.c
* harbour/source/common/hbstr.c
* removed unnecessary initialization to avoid BCC warnings
* harbour/source/compiler/harbour.c
* formatting
hb_compCodeBlockStop() looks like work in progress or is has
some old unused code - Ryszard, can you look at it?
* harbour/source/macro/macro.y
* removed hack for GCC and old Bison versions
* harbour/source/pp/ppcore.c
* removed unnecessary initialization to avoid BCC warnings
* harbour/source/pp/pptable.c
+ added some sets for RDD synchronization with xHarbour
* harbour/source/rdd/dbcmd.c
+ added __RDDGETTEMPALIAS
* harbour/source/rdd/dbf1.c
* harbour/source/rdd/dbfuncs.prg
* harbour/source/rdd/dbnubs.c
* harbour/source/rdd/dbstrux.prg
* harbour/source/rdd/hbdbsort.c
* harbour/source/rdd/rddord.prg
* harbour/source/rdd/workarea.c
* harbour/source/rdd/dbfcdx/dbfcdx1.c
* harbour/source/rdd/dbfdbt/dbfdbt1.c
* harbour/source/rdd/dbffpt/dbffpt1.c
* harbour/source/rdd/dbfntx/dbfntx1.c
* synchronized with xHarbour - still dbcmd.c has to be synced yet
! fixed all known bugs
Alexander, please look at DBFNTX - I hope all is correct.
* harbour/source/vm/codebloc.c
* formatting
* harbour/source/vm/fm.c
+ added HB_PARANOID_MEM_CHECK to force reallocations in hb_xrealloc
and fill allocated and freed memory with HB_MEMFILER (0xff by default)
It's for debugging only.
* harbour/source/vm/hvm.c
! fixed hb_vmTopNumber() declaration for BCC
* use hb_gcCollectAll() at HVM exit instead of hb_gcReleaseAll() to
report allocated and not freed items - It could caused that some
programs begin to report memory leaks.
* harbour/source/vm/itemapi.c
* check for HB_IS_BADITEM inside hb_itemClear() when compiled with
HB_PARANOID_MEM_CHECK for debugging
* harbour/source/vm/memvars.c
* formatting
! fixed pItem initialization in hb_memvarDetachLocal()
BTW - is this really necessary? I copy it form hb_itemUnRef()
but in fact it cannot detect all possible item reference cycles
if they appear - can they appear?
|
||
|
|
a0f252023b | 2003-12-03 14:24 UTC-0800 Luis Krause Mantilla | ||
|
|
e2353dac99 | 2003-11-05 22:50 UTC+0300 Alexander Kresin <alex@belacy.belgorod.su> | ||
|
|
c1df5deba6 | 2003-02-10 23:20 UTC+1 jf Lefebvre (mafact) <jfl@mafact.com> | ||
|
|
eadf174bde | 2002-11-18 14:55 UTC+0300 Alexander Kresin <alex@belacy.belgorod.su> | ||
|
|
3108d6ebe5 | 2002-10-24 16:05 UTC+0300 Alexander Kresin <alex@belacy.belgorod.su> | ||
|
|
052615e4c8 | 2002-10-14 0:10 UTC-0800 Brian Hays <bhays@abacuslaw.com> | ||
|
|
0c92e34e3b |
2002-09-28 01:55 UTC-0300 Horacio Roldan <harbour_ar@yahoo.com.ar>
* include/hbapirdd.h
* include/hbrdddbf.h
* include/hbrddcdx.h
* include/hbrddntx.h
* source/rdd/dbcmd.c
* source/rdd/workarea.c
+ Changed fieldname max length handling,
it is now a workarea property. (set by the RDD)
|
||
|
|
a108fb3534 |
2002-08-07 17:58 UTC-0300 Horacio Roldan <harbour_ar@yahoo.com.ar>
* include/hbapirdd.h
* source/rdd/dbcmd.c
* source/rdd/workarea.c
! fixed gpf in dbCloseArea, now relations are
closed if child area is closed, reported by Brian Hays
|
||
|
|
6ad98f1cf3 |
2002-04-27 19:15 UTC-0300 Horacio Roldan <harbour_ar@yahoo.com.ar>
* include/hbapirdd.h
* source/rdd/dbcmd.c
+ added functions ordKeyAdd and ordKeyDel (need support from each RDD)
! fixed compatibility issue: ordListAdd(nil) is valid in Clipper
|
||
|
|
370dac25c0 | 2001-11-11 23:35 UTC-0800 Brian Hays <bhays@abacuslaw.com> | ||
|
|
b677c6824e | 2001-05-14 02:09 UTC-0800 Brian Hays <bhays@abacuslaw.com> | ||
|
|
cc0d80a066 | See ChangeLog entry 2001-04-27 15:00 UTC-0400 David G. Holm <dholm@jsd-llc.com> |