* harbour/contrib/hbct/screen2.c
! fixed possible vary bad bug (memory buffer overflow) in SCREENSTR()
* harbour/source/rtl/hbffind.c
! fixed possible GPF in some *nixes
* harbour/source/vm/classes.c
! do not execute the same destructor inherited from different parent
classes more then once
* harbour/source/rtl/transfrm.c
! fixed bug with '9' used as stop condition of function pattern
this character cannot be stripped, f.e.:
? transform( "abc", "@_99*" )
! fixed bug with '*' or '$' used with @), f.e.:
? transform( -12345, "@) $999999" )
! fixed replacing '.' with ',' when @E is used without picture part, f.e.:
? transform( 123.45, "@E" )
! fixed ',' conversions
? transform( 12.34,"@E ab,cd.ef9,9.99,.--" )
! fixed bug with picture starting with ".", f.e.:
? transform( 0.3456, ".999" )
! fixed "@(" and "@)" conversions, f.e.:
? transform( -12345, "@) 1999*999" )
! fixed late oveflow detection in "@(" and "@)", f.e.:
? transtest( -12345, "@( 6798^999" )
! fixed "@E" conversion for dates to keep user delimiters set in
_SET_DATEFORMAT, f.e.:
set( _SET_DATEFORMAT, "mm:dd:yyyy" ); ? transform( date(), "@E" )
set( _SET_DATEFORMAT, "yyyy<mm>dd" ); ? transform( date(), "@E" )
Please note that Harbour is not strictly Clipper compatible here
because it respects _SET_DATEFORMAT set by user.
! fixed 64bit integer conversion by eliminating conversion to
'double' f.e.:
? transform( 1234567890123456789, "99999999999999999999" )
? transform( -1234567890123456789, "99999999999999999999" )
! some other fixes, see regression test transtst.prg
% speed improvement in numeric conversions
+ harbour/tests/transtst.prg
+ added regression test for transform function
* harbour/utils/hbtest/rt_trans.prg
* disabled transform() tests for "@E" and result smaller then 5 bytes
CA-Cl*pper do not check result size and always exchanges
bytes 1-2 with bytes 4-5 for @E conversion. It's buffer overflow
bug and I do not want to replicate it inside our transform
implementation. It also causes that the results for for strings
smaller then 5 bytes behaves randomly.
In fact precise tests can show that it's not random behavior
but CA-Cl*pper uses static buffer for result and when current one
is smaller then 5 bytes then first two bytes are replaced with
4-5 bytes from previous result which was length enough, f.e.:
? transform( "0123456789", "" )
? transform( "AB", "@E" )
? transform( "ab", "@E" )
Replicating exact CA-Cl*pper behavior it's trivial (it will be enough
to use static buffer two and not check the size of current result) but
IMHO it's bug.
* harbour/source/rtl/round.c
* added strictly Clipper compatible code covered by HB_C52_STRICT
and comment about possible difference in Harbour.
* harbour/include/hbgtinfo.ch
* harbour/source/rtl/hbgtcore.c
* harbour/source/rtl/gtxwc/gtxwc.c
* harbour/source/rtl/gtsln/gtsln.c
* harbour/source/rtl/gttrm/gttrm.c
* harbour/source/rtl/gtwvt/gtwvt.c
+ added HB_GTI_ISUNICODE - it returns logical value with information
about Unicode mode in active GT driver - it's necessary for proper
CP initialization in some GTDs which can work in both mode depending
on client side settings
* harbour/source/rtl/gttrm/gttrm.c
* improved UTF-8 detection
* added automatic PuTTY detection
* improved PuTTY and some xterm key handling
* added some missing RXVT keys
* common.mak
* harbour-ce-spec
* harbour-w32-spec
* harbour.spec
* make_tgz.sh
* utils/hbpptest/Makefile
+ utils/hbpptest/hbpptest.prg
- utils/hbpptest/pretest.prg
! Fixed hbpptest to have this name (instead of 'pretest') even
when built with the GNU make system.
* ChangeLog
! Typos.
* utils/hbpp/hbpplib.c
! Replaced RTE code 1001 with 1002.
(almost the same error condition, but better have
it different to avoid any support confusions).
* include/hbapierr.h
* source/rtl/errorapi.c
! Removed HB_ERR_SS_TOOLS non-core #define (formerly used by
/contrib/hbct from core header.
! Removed non-core related error API call hb_errRT_TOOLS()
(functionality was similar to hb_errRT_BASE())
* contrib/hbct/ctnet.c
! Fixed RTE calls to use unique IDs instead of 9999.
Subcode changed to 0 from 999.
* utils/hbpp/hbpplib.c
! Replaced RTE code 9999 with 1001.
* source/rtl/objfunc.prg
! Fixed ISNUMBER() -> hb_ISPOINTER() for pointers.
Thanks to Chen Kedem.
* utils/hbtest/rt_stra.prg
* utils/hbtest/rt_array.prg
! Fixed expected results to use the recently introduced new error codes.
Thanks to Chen Kedem.
* contrib/make_b32_all.bat
* contrib/make_vc_all.bat
* contrib/Makefile
+ contrib/rddado
* contrib/rddado/common.mak
* contrib/rddado/Makefile
+ contrib/gtwvg
* contrib/gtwvg/common.mak
* contrib/gtwvg/Makefile
+ contrib/rddads
* contrib/rddads/common.mak
* contrib/rddads/Makefile
- contrib/hbrddado
- contrib/hbgtwvg
- contrib/hbrddads
* utils/hbmake/hbmutils.prg
! Done some final renames in contrib to be consistent
with the core names where some new rules had to be
made for DJGPP compatibility.
Old name New name
-------- --------
hbgtwvg -> gtwvg
hbrddado -> rddado
hbrddads -> rddads
* harbour-ce-spec
* harbour-w32-spec
* bin/bld.bat
* harbour.spec
* common.mak
* source/pp/Makefile
* source/lang/Makefile
* source/macro/Makefile
* source/rtl/Makefile
* source/vm/mainstd/Makefile
* source/vm/Makefile
* source/vm/mainwin/Makefile
* source/main/Makefile
* source/debug/Makefile
* source/codepage/Makefile
* source/common/Makefile
* source/rdd/nulsys/Makefile
* source/rdd/Makefile
* source/rdd/hsx/Makefile
* source/rdd/usrrdd/Makefile
* source/compiler/Makefile
* contrib/hbct/tests/Makefile
* contrib/hbodbc/tests/bld_b32.bat
* contrib/hbole/tests/bld_b32.bat
* contrib/hbapollo/tests/bld.bat
* contrib/hbfbird/tests/bld_b32.bat
* contrib/hbfbird/tests/Makefile
* contrib/hbpgsql/tests/Makefile
* contrib/hbfimage/tests/bld_b32.bat
* contrib/hbgd/tests/bldtest.bat
* contrib/hbmisc/tests/Makefile
* contrib/hbgf/tests/bld_b32.bat
* contrib/hbbtree/tests/Makefile
* contrib/examples/guestbk/Makefile
* contrib/examples/pe/Makefile
* contrib/examples/dbu/Makefile
* contrib/examples/misc/Makefile
* contrib/examples/hscript/Makefile
* utils/hbdoc/Makefile
* utils/hbextern/Makefile
* utils/hbdot/Makefile
* utils/hbmake/Makefile
* utils/hbmake/hbmutils.prg
* utils/hbmake/hbmake.prg
* utils/hbpp/Makefile
* utils/hbpptest/Makefile
* utils/hbtest/Makefile
* utils/hbrun/Makefile
* tests/Makefile
* Core libs renamed to be prefixed with hb, while
having the first significant 5 chars unique.
Old name New name
-------- --------
codepage -> hbcpage
common -> hbcommon
compiler -> hbcplr
debug -> hbdebug
hbsix -> hbsix
hsx -> hbhsx
lang -> hblang
macro -> hbmacro
pp -> hbpp
rtl -> hbrtl
vm -> hbvm
rdd -> hbrdd
dbfcdx -> rddcdx
dbffpt -> rddfpt
dbfntx -> rddntx
nulsys -> hbnulrdd
usrrdd -> hbusrrdd
mainwin -> hbmainwin
mainstd -> hbmainstd
NOTE/TODO: We're currently not in sync with contribs,
regarding hb prefixing, since in contrib
rdds and gts (rightly) also have hb prefixes.
The only reason not to add them in core this
time, is to keep compatibility with DJGPP.
Maybe we should remove those prefixes from
contrib.
NOTE/TODO: Do tests in as many platforms and as many contrib
tests as possible. Feedback from hbmake users is
also welcome.
!!! Please update your local make files !!!
* include/hbgtinfo.ch
+ Added HB_ prefixed versions for all GTI_ macros.
Unprefixed GTI_ macros are to be considered xhb
compatible (or legacy) ones, and they can be
excluded by #defining HB_GT_NO_XHB if they seem to
collide with user code.
TODO: Switch to use HB_GTI_* inside Harbour code.
* source/rtl/gtwin/gtwin.c
* source/rtl/gtcrs/gtcrs.h
* source/rtl/gtsln/gtsln.h
* source/rtl/gttrm/gttrm.c
* source/rtl/gtwvt/gtwvt.h
+ #defining xhb compatible K_SH_* keyboard codes only if
they were not already defined.
* utils/hbdoc/genasc.prg
! Fixed problem generating filenames for .txt output.
Also added LFN branch to get rid of the 8.3 limitation.
* make_b32.bat
* make_vc.bat
* make_vcce.bat
+ Accepts "Install" and "Clean" consistently.
! Not directly modifying C_USR, instead use CFLAGS internally.
* contrib/make_b32_all.bat
* contrib/make_vc_all.bat
* contrib/make_b32.bat
* contrib/make_vc.bat
* contrib/mtpl_b32.bat
* contrib/mtpl_vc.bat
* contrib/mtpl_b32.mak
* contrib/mtpl_vc.mak
- contrib/mtpl_defs.mak
% Removed COPYCMD requirement.
! Not modifying any user level envvars anymore.
(so no need for COMPSPEC trick to call another copy of command com)
! Some other smaller fixes.
! Fixed rdd_ads in make_*_all.bats.
* Removed the simple common part for BC/VC to consistently
separate the BC/VC make file system. The only common
part now is common.mak in each contrib. (Marek I hope you don't
mind, I promise to update them in case of changes. We have quite
some reduancy between BC/VC anyway, so this won't hurt much overall,
but they are now nicely separated and maybe bit easier to oversee
for someone new to the project.
! Avoiding 'exit' command, as it stops all batch file
execution, and as a bad side-effect can force to exit
shells too.
- CFLAGS, CLIBFLAGS, HARBOURFLAGS not advertised anymore as
official public vars to set compiler flags.
C_USR, PRG_USR should be used, which are also GNU make system compatible.
! Fixed copyrights.
! Tabs converted to spaces.
+ contrib/mtpl_b32.bat
+ contrib/mtpl_vc.bat
+ Added generic non-GNU make batch files.
; Thanks to Marek.
* utils/hbmake/hbmutils.prg
! Some untested fixes to hbmake. If someone
uses this tool, pls send reports.
- contrib/mkall_b32.bat
* contrib/make_b32_all.bat
+ contrib/make_vc_all.bat
* Renamed.
+ VC version added.
* contrib/mtpl_b32.mak
* contrib/mtpl_vc.mak
! Minor fix by Marek.
* contrib/rdd_ads/doc/gendoc.bat
! Fix to run from its place.
* contrib/rdd_ads/adsmgmnt.c
! Fixed to compile with ADS 8.10.
#define ADS_VER=810 (or upper) to enable this.
* contrib/rdd_ads/rddads.h
! Fixed to compile using original ads.h headers.
(tested with 6.11, 7.00, 7.10, 8.00, 8.10)
* contrib/rdd_ads/ads1.c
* contrib/rdd_ads/adsfunc.c
! Suppressed this BCC32 warning using #pragma:
'Call to function 'AdsApplicationExit' with no prototype in function ...'
+ contrib/rdd_ads/unixutils.h
+ Added dummy header to fix compilation under
Linux, using the original ads.h headers.
Not tested. Supposed to replace the workaround
currently in local ads.h where '#include "unixutils.h"'
is commented out.
* contrib/rdd_ads/readme.txt
! Added SVN header.
* contrib/pgsql/Makefile
* contrib/pgsql/common.mak
+ Added pgrdd.prg to make files.
- contrib/pgsql/tstpgrdd.prg
+ contrib/pgsql/tests/tstpgrdd.prg
! Moved test to test dir.
* contrib/pgsql/pgrdd.prg
! Fixed warnings.
- contrib/pgsql/README
+ contrib/pgsql/readme.txt
* Rename.
* contrib/pgsql/common.mak
! Lib name change: libhbpg -> hbpg
+ contrib/pgsql/tests/bld_b32.bat
+ Added test app build helper.
* contrib/rdd_ads/make_b32.bat
* contrib/rdd_ads/make_vc.bat
* contrib/pgsql/make_b32.bat
* contrib/pgsql/make_vc.bat
* contrib/ole/make_b32.bat
* contrib/ole/make_vc.bat
* contrib/xhb/make_b32.bat
* contrib/xhb/make_vc.bat
* contrib/libmisc/make_b32.bat
* contrib/libmisc/make_vc.bat
* contrib/freeimage/make_b32.bat
* contrib/freeimage/make_vc.bat
* contrib/apollo/make_b32.bat
* contrib/apollo/make_vc.bat
* contrib/firebird/make_b32.bat
* contrib/firebird/make_vc.bat
* contrib/htmllib/make_b32.bat
* contrib/htmllib/make_vc.bat
* contrib/libct/make_b32.bat
* contrib/libct/make_vc.bat
* contrib/pdflib/make_b32.bat
* contrib/pdflib/make_vc.bat
* contrib/libgt/make_b32.bat
* contrib/libgt/make_vc.bat
* contrib/hgf/win32/make_b32.bat
* contrib/hgf/win32/make_vc.bat
* contrib/telepath/make_b32.bat
* contrib/telepath/make_vc.bat
* contrib/hbzlib/make_b32.bat
* contrib/hbzlib/make_vc.bat
* contrib/gd/make_b32.bat
* contrib/gd/make_vc.bat
* contrib/libnf/make_b32.bat
* contrib/libnf/make_vc.bat
* contrib/tip/make_b32.bat
* contrib/tip/make_vc.bat
* contrib/adordd/make_b32.bat
* contrib/adordd/make_vc.bat
* contrib/btree/make_b32.bat
* contrib/btree/make_vc.bat
* contrib/directx/make_b32.bat
* contrib/directx/make_vc.bat
* contrib/win32/make_b32.bat
* contrib/win32/make_vc.bat
* contrib/samples/make_b32.bat
* contrib/samples/make_vc.bat
* contrib/mysql/make_b32.bat
* contrib/mysql/make_vc.bat
* contrib/odbc/make_b32.bat
* contrib/odbc/make_vc.bat
* contrib/bmdbfcdx/make_b32.bat
* contrib/bmdbfcdx/make_vc.bat
% Using the batch file templates.
+ Some other additions and fixes related to make it easy
to specifiy 3rd party package locations.
These envvars can be used for our libs:
set APOLLO_DIR=C:\Apollo
set FIREBIRD_DIR=C:\Firebird
set FREEIMAGE_DIR=C:\FreeImage
set GD_DIR=C:\gd
set MYSQL_DIR=C:\mysql
set PDFLIB_DIR=C:\pdflib
set PGSQL_DIR=C:\pgsql
* contrib/xhb/hbcompat.ch
+ Added xhb SecondsSleep() translation.
* contrib/freeimage/make_b32.bat
* contrib/freeimage/make_vc.bat
* contrib/firebird/make_b32.bat
* contrib/firebird/make_vc.bat
! Some fixes.
* contrib/libct/cttime.prg
! SECTOTIME() fix. Borrowed from xhb.
* contrib/apollo/apollo.c
* contrib/apollo/make_b32.bat
* contrib/apollo/make_vc.bat
! Fixed and tested with latest downloadable package.
* contrib/win32/w32_tprn.prg
* contrib/win32/w32_prn.c
+ Minor fix (from xhb)
* source/rtl/errorint.c
! Defaulting all string parameters to "" when they are NULL
to avoid any potential problems later in the function.
* source/rtl/hbgtcore.c
% Passing NULL instead of "" in hb_errInternal() calls.
* source/vm/itemapi.c
! Internal error is lauched in case the parameters passed
to hb_itemPutCLConst() are violating string item rules.
Thanks for Mindaugas for the suggestion.
TOFIX: Since this violation will most probably happen in
contrib/win32 OLE code, we'll need to fix that
code too.
* utils/hbmake/hbmake.prg
! Fixed to not request wvtgui.lib.
* harbour/include/hbwince.h
* harbour/source/common/hbwince.c
* harbour/utils/hbver/hbverfix.c
* modified for clean compilation with POCC/XCC and ARM processors
* contrib/odbc/odbc.c
! MSVC casting warnings silenced.
* utils/hbmake/hbmake.prg
! Fixed "$" used on array named s_cInvalidExt.
! Fixed to not include ct/tip/ctmt/tipmt in Harbour.
; The reports and fixes were provided by Bill Robertson.
* harbour/source/rtl/filesys.c
* do not redefine LongToHandle() for __XCC__ and __POCC__ WinCE builds
* harbour/utils/hbver/hbverfix.c
! fixed typos in previous commit
+ harbour/include/hbassert.h
* harbour/include/hb_io.h
* harbour/source/rtl/gtstd/gtstd.c
* harbour/source/rtl/gtpca/gtpca.c
* harbour/source/rtl/fssize.c
* harbour/source/rtl/hbinet.c
* harbour/source/rtl/filesys.c
* harbour/source/compiler/hbfix.c
* harbour/source/compiler/hbpcode.c
* harbour/source/compiler/hbdead.c
* harbour/source/compiler/genc.c
* harbour/source/compiler/hbopt.c
* harbour/source/compiler/gencc.c
* harbour/source/compiler/hblbl.c
* harbour/source/compiler/hbstripl.c
* harbour/utils/hbver/hbverfix.c
* harbour/utils/hbpp/hbppcore.c
* removed dependences to unsupported by new MSVC header files
most of this modifications can be enabled also for standard Win32
builds
* harbour/source/common/hbwince.c
* do not create dummy LocalLock() and LocalUnlock() function in MSVC
WinCE builds
* harbour/source/rtl/gtwin/gtwin.c
+ added HB_WINCE_USE_POCKET_CONSOLE macro which enable
console support in WINCE builds (macro suggested by Marek Paliwoda)
* harbour/source/rtl/gtwvt/gtwvt.h
* harbour/source/rtl/gtwvt/gtwvt.c
* changed default window and font size on WinCE to values suggested
by Marek Paliwoda
Marek if you have a while please make test with MSVC WinCE/PocketPC
builds and current SVN code.
* harbour/include/hbapifs.h
* harbour/source/common/hbfsapi.c
+ added hb_fsMaxFilesError()
* harbour/source/pp/ppcore.c
* harbour/utils/hbpp/hbppcore.c
* use hb_fsMaxFilesError() to avoid direct accessing of errno
value - some compilers/platforms do not support errno
* harbour/include/hbdate.h
* harbour/source/rtl/seconds.c
+ added hb_dateMilliSeconds()
* harbour/source/rtl/hbgtcore.c
* harbour/source/rtl/idle.c
* harbour/source/rtl/inkey.c
* use hb_dateMilliSeconds() to avoid using clock_t clock()
some compilers/platforms do not support it
* harbour/include/hbwince.h
* harbour/source/common/hbwince.c
* disabled clock_t clock() emulation - it's not longer used
+ added some declarations for ANSI functions emulated by us
for WinCE and some defines - code sent by Marek Paliwoda
* harbour/include/hbwmain.c
* harbour/source/vm/mainwin.c
* always use unicode translations with WinMain() parameters for compilers
which do not set UNICODE macro for WinCE
* harbour/source/rtl/fserror.c
* do not include errno.h for HB_WIN32_IO - it's not necessary
* harbour/utils/hbver/hbverfix.c
* do not include errno.h for _MSC_VER and HB_WINCE builds
* harbour/contrib/libmisc/dates2.c
- commented DATETIME() function - this was not standard DATETIME()
value but raw ctime() function output and some compilers/platforms
do not support ctime()
* harbour/contrib/libnf/getenvrn.c
+ added HB_OS_WIN_32_USED
* harbour/contrib/mtpl.mak
* harbour/contrib/pdflib/pdflib.h
* replaced TABs with SPACEs
* harbour/include/hbsetup.ch
! reenabled HB_EXTENSION in default builds - disabling it makes
a lot of RDD code unusable and breaks default builds due to
insufficient dependences
* include/hbapi.h
+ Added xhb compatibility #define for hb_storclenAdopt()
(equivalent to Harbour's hb_storclen_buffer())
* contrib/xhb/hbcompat.ch
+ Added xhb IsDirectory() <-> hb_DirExists() translation.
Harbour version works using access(), while xhb version
does a filefind, so Harbour will return a more accurate
result more quickly, but it won't work with wildcards.
* source/rtl/persist.prg
% Using hb_StrShrink()
* common.mak
* utils/hbdoc/Makefile
* utils/hbdoc/ffile1.prg
* utils/hbdoc/genasc.prg
* utils/hbdoc/genchm.prg
* utils/hbdoc/genhtm.prg
* utils/hbdoc/genng.prg
* utils/hbdoc/genos2.prg
* utils/hbdoc/genpdf1.prg
* utils/hbdoc/genrtf.prg
* utils/hbdoc/gentrf.prg
* utils/hbdoc/hbdoc.prg
* utils/hbdoc/html.prg
* utils/hbdoc/ng.prg
* utils/hbdoc/os2.prg
* utils/hbdoc/rtf.prg
+ utils/hbdoc/teeasc.prg
+ Synced with xhb.
; Someone who uses this tool, pls test.
* common.mak
* utils/hbmake/Makefile
* utils/hbmake/ft_funcs.prg
* utils/hbmake/hbmake.prg
* utils/hbmake/hbmutils.prg
* utils/hbmake/pickarry.prg
* utils/hbmake/radios.prg
+ utils/hbmake/readline.c
+ utils/hbmake/tmake.prg
+ Synced with xhb.
; Someone who uses this tool, pls test.
* common.mak
* source/rtl/Makefile
+ source/rtl/getsys53.prg
* source/rtl/getsys.prg
+ source/rtl/secondfs.c
* source/rtl/seconds.c
+ source/rtl/mouse53.c
* source/rtl/mouseapi.c
+ Some C53 and FlagShip functions moved to separate source file.
* include/hbextern.ch
* common.mak
* source/rtl/Makefile
+ source/rtl/hbstrsh.c
* utils/hbtest/rt_stra.prg
+ Added hb_StrShrink(<cString>[,<nShrinkBy>]) -> cStringShrinked
<nShrinkBy> has a default value of 1. Returns empty string
on error, returns full string if <nShrinkBy> is zero or negative.
This function call is meant to be use instead of code like this:
cString := Left( cString, Len( cString ) - 1 ) ->
cString := hb_StrShrink( cString, 1 )
TODO: Maybe to support passing it by reference and make it even
faster.
+ Added regression tests for this function.
* include/std.ch
! SET STRICTREAD command definition fixed.
* include/hbextern.ch
! Fixed placement of MENUMODAL, to compile when HB_COMPAT_C53
is turned off.
* contrib/libmisc/Makefile
! Fixed test dir name. (broken since yesterday)
* contrib/pdflib/common.mak
+ Added another file.
+ contrib/pdflib/Makefile
+ Added GNU make file for pdflib.
* utils/hbdoc/ft_funcs.prg
* utils/hbmake/ft_funcs.prg
* utils/hbmake/hbmake.prg
! Made them compile with HB_COMPAT_C53 turned off.
There is a loss of functionality in this case.
(MAKEDIR(), DIRCHANGE() and @ CHECKBOX are used here)
* source/rtl/menuto.prg
* source/rtl/tgetlist.prg
! Fixed to compile when HB_COMPAT_C53 is turned off.
* include/hbextern.ch
* source/rtl/defpath.c
* source/rtl/adir.prg
* __DEFPATH() is now always included, not just when HB_C52_UNDOC
is defined, since we use this function from core, and __*()
functions are okey to be included without this guard.
DEFPATH() is still marked as HB_C52_UNDOC.
! ADIR() now uses __DEFPATH() instead of DEFPATH() to compile
with HB_C52_UNDOC turned off.
; TOFIX: There are still a few functions we use from core, which
are guarded with HB_C52_UNDOC: NATIONMSG(), ISNEGATIVE()
* source/vm/memvars.c
* Changed HB_EXTENSION to HB_C52_STRICT. Reason: This
is a Harbour internal (undocumented) function, where extension
is possible. CA-Cl*pper internal (undocumented) function __MRESTORE()
is mapped to this function, which is still okey. We could
create a fully CA-Cl*pper compatible, non-extended __MRESTORE()
without any trouble, if this is an issue.
* include/std.ch
* Removed HB_EXTENSION guard from around SET commands
implementing Harbour _SET_* extensions. The reason:
_SET_* extensions are not marked as extensions (and
it would be nearly impossibly to do so), so it's more
consistent to behave the same way for their command
counterparts.
* utils/hbpp/hbpplib.c
! Removed HB_EXTENSION guard from around __PP*() functions
which are Harbour undocumented ones, so they don't need to
be guarded. We're also in sync with hbextern.ch now.
* utils/hbtest/rt_stra.prg
! Removed HB_EXTENSION guard from around hb_ValToStr() calls,
because this function is no longer marked as HB_EXTENSION.
* contrib/hgf/os2pm/tmenu.prg
* contrib/hgf/os2pm/tmenuitm.prg
* contrib/hgf/gtk/shared.ch
* contrib/hgf/gtk/dispatch.c
* contrib/hgf/gtk/creamenu.c
* contrib/hgf/gtk/msginfo.c
* contrib/hgf/gtk/creabutt.c
* contrib/hgf/gtk/general.c
* contrib/hgf/gtk/creawin.c
* contrib/hgf/gtk/harbgtk.h
* contrib/hgf/gtk/menuitem.prg
* contrib/hgf/win32/button.prg
* contrib/hgf/win32/edit.prg
* contrib/hgf/win32/form.prg
* contrib/hgf/win32/menu.prg
* contrib/hgf/win32/menuitem.prg
* contrib/hgf/win32/winctrl.prg
* contrib/hgf/tests/bld_b32.bat
* contrib/hgf/tests/form2.prg
* contrib/hgf/tests/form3.prg
* contrib/hgf/tests/form3.hbf
* contrib/hgf/tests/form3res.prg
* contrib/hgf/tests/formtext.prg
* contrib/hgf/tests/testctrl.prg
* contrib/hgf/tests/testform.prg
! Fixed bld_b32.bat to link properly.
! Changed HBMenuItem CLASS to HGFMenuItem() to not collide with
Harbour class HBMenuItem() (C53 compatibility class).
; The above reported by Petr Chornyj.
! Added CRLF at the end of each source file where there was none.
! Fixed version headers.
; TOFIX1: HBPersistent():LoadFromFile() has a bug where it doesn't
load the last line if it doesn't end with newline.
; TOFIX2: HBPersistent() uses At() "dirty" extension.
* contrib/odbc/test/odbcdemo.prg
- contrib/odbc/test/browodbc.prg
* contrib/odbc/test/odbccall.prg
* contrib/odbc/test/testodbc.prg
* contrib/odbc/common.mak
+ contrib/odbc/browodbc.prg
! Moved back browodbc.prg to /contrib/odbc (since it was not a test,
just missing from the non-GNU make files)
Reported by Petr Chornyj.
! Added browodbc.prg to non-GNU makefile.
! Added version headers.
* harbour/include/hbwince.h
* put functions declarations inside HB_EXTERN_BEGIN / HB_EXTERN_END
+ harbour/include/hbwmain.c
+ added WinMain() to main() wrapper
* harbour/include/hbexprb.c
* harbour/source/common/expropt1.c
! fixed typo reported by Chen
* harbour/source/pp/hbppgen.c
* harbour/source/main/harbour.c
* harbour/utils/hbpp/hbpp.c
* use hbwmain.c when main() is not supported by C compiler/platform
* harbour/source/rtl/gtwin/gtwin.c
* include wincon.h in all builds except LCC
* harbour/source/rtl/fserror.c
* harbour/source/rtl/fstemp.c
* harbour/source/rtl/filesys.c
* use HB_OS_WIN_32_USED as in other files (still on TOFIX list)
* harbour/source/rtl/seconds.c
+ added HB_OS_WIN_32_USED
* harbour/source/compiler/hbcomp.c
! fixed typo: stderr was used instead of stdout
* harbour/utils/hbmake/hbmlang.c
* pacify some other data lost conversion warnings by explicit casting
* harbour/source/compiler/harbour.y
* cleaned explicit comparison with TRUE value
* harbour/source/compiler/harbour.yyc
* rebuild with all recent cleanup in harbour.y
* harbour/contrib/bmdbfcdx/bmdbfcdx1.c
* replaced all direct access to hb_set structure with functions
Now it's possible to link bmdbfcdx with harbour.dll but because
it still access hb_cdp_page then only if linker supports auto
import conversions
* harbour/source/common/hbfsapi.c
* harbour/source/main/harbour.c
* harbour/source/pp/hbppgen.c
* harbour/utils/hbpp/hbpp.c
* added filename conversion (hb_fsNameConv()) to hb_fsFileExists()
function
* harbour/include/hbapifs.h
+ harbour/source/common/hbfopen.c
* harbour/source/common/Makefile
* harbour/common.mak
+ added hb_fopen() function - it's a wrapper to fopen() function but
calls internally hb_fsNameConv()
* harbour/source/pp/hbppgen.c
* harbour/source/pp/ppcore.c
* harbour/source/common/hbtrace.c
* harbour/source/compiler/hbmain.c
* harbour/source/compiler/genhrb.c
* harbour/source/compiler/gencobj.c
* harbour/source/compiler/genobj32.c
* harbour/source/compiler/genc.c
* harbour/source/rtl/gtchrmap.c
* harbour/source/vm/fm.c
* use hb_fopen() instead of fopen()
* utils/hbpp/pragma.c
* source/rtl/binnum.c
* source/rtl/direct.c
! Some VS2005 -O2 warnings.
One TOFIX added at the same time, since DIRECTORY()
has a problem returning file sizes greater than 2GB.
* harbour/bin/hb-mkslib.sh
* harbour/bin/pack_src.sh
* updated for recent Viktor's modifications
* harbour/source/rtl/oemansix.c
! added missing #include "hbpai.h"
* harbour/include/Makefile
+ harbour/include/hbwince.h
* harbour/include/hbrdddbf.h
* harbour/include/hbrdddbt.h
* harbour/include/hbdefs.h
* harbour/include/hbsetup.h
* harbour/include/hbrddcdx.h
* harbour/include/hbrddfpt.h
* harbour/contrib/xhb/hboutdbg.c
* harbour/contrib/xhb/hbsyslog.c
* harbour/contrib/xhb/xhbfunc.c
* harbour/contrib/libct/ctnet.c
* harbour/contrib/libct/files.c
* harbour/contrib/libct/disk.c
* harbour/contrib/libnf/getenvrn.c
* harbour/contrib/win32/tprinter.c
* harbour/contrib/win32/w32_ole.c
* harbour/contrib/win32/w32_prn.c
* harbour/contrib/odbc/odbc.c
* harbour/source/pp/ppgen.c
* harbour/source/rtl/diskspac.c
* harbour/source/rtl/gtclip.c
* harbour/source/rtl/fstemp.c
* harbour/source/rtl/gtchrmap.c
* harbour/source/rtl/oemansi.c
* harbour/source/rtl/disksphb.c
* harbour/source/rtl/fssize.c
* harbour/source/rtl/hbffind.c
* harbour/source/rtl/filesys.c
* harbour/source/rtl/net.c
* harbour/source/rtl/gtgui/gtdef.c
* harbour/source/rtl/gtwvt/gtwvt.c
* harbour/source/rtl/gtpca/gtpca.c
* harbour/source/rtl/gtstd/gtstd.c
* harbour/source/rtl/gtwin/gtwin.c
* harbour/source/vm/Makefile
* harbour/source/vm/mainwin.c
* harbour/source/vm/dynlibhb.c
+ harbour/source/vm/mainwin/Makefile
* harbour/source/common/Makefile
* harbour/source/common/hbgete.c
* harbour/source/common/hbver.c
+ harbour/source/common/hbwince.c
* harbour/utils/hbpp/hbpp.c
* harbour/utils/hbdot/hbdot.prg
* harbour/utils/hbver/hbverfix.c
+ added support for WinCE and PocketPC
+ harbour/make_xcemgw.sh
+ harbour/config/w32/cemgw.cf
* harbour/bin/hb-mkslib.sh
* harbour/bin/hb-func.sh
* harbour/bin/postinst.sh
+ added support for CeGCC-MinGW32 port - those of you who want to
create applications for WinCE on PockePC with ARM processors on
Linux or MS-Windows can download from SF cegcc-mingw32ce port.
User using RPM based Linux distribution for x86 CPUs can simply
download cegcc-mingw32ce-0.50-1.i586.rpm and install it.
The hb* scripts created by ./make_xcemgw.sh [tgz|gnu] are
automatically updated to work with CeGCC-MinGW32 so later you
can simply crate WinCE-ARM binaries using them as for native port.
I'm waiting for users feedback. Please remember that I'm not Windows
user and even this port was created without any Pocket machine.
With Marek Paliwoda help I only tested that final applications are
working using PocketPC emulator.
* harbour/utils/hbtest/rt_misc.prg
* harbour/utils/hbtest/make_c5x.bat
+ added alternative results for oGet:colorspec compatible with CL53
when HB_COMPAT_C53 macro is set
* harbour/include/std.ch
* cover ENDSEQUENCE translation with HB_C52_STRICT macro
+ added translations for END SWITCH, END WITH, END OBJECT
* harbour/source/compiler/complex.c
* harbour/source/compiler/harbour.y
* harbour/source/compiler/harbour.yyc
* harbour/source/compiler/harbour.yyh
+ added support for ENDSEQ[UENCE], ENDSW[ITCH] and ENDW[ITH]
* harbour/source/rtl/hbgtcore.c
! changed string to color number translation to be fully Clipper
compatible. Now I do not know any examples which we translate
differently - if someone will find any them then please inform me.
The only one intentional difference between Harbour and Clipper
is in color number to string translation and background highlighting
attribute "*", Clipper put it just before "/" as part of foreground
color (f.e.: 248 => "N*+/W") but Harbour as part background color
(f.e.: 248 => "N+/W*") - Clipper compatible behavior is enabled when
Harbour is compiled with HB_C52_STRICT macro
* harbour/utils/hbtest/rt_misc.prg
* control the position of background highlighting attribute (*) in
expected results depending on HB_C52_STRICT. Harbour passes correctly
all included color translation tests.
* source/rtl/hbgtcore.c
! Fixed handling of some strangely formatted colorstrings
mainly inside TGet(). The low-level functionality
modified is the colorstring to number conversion. The
only change is to continue (and not exit) on a non-std
char.
* utils/hbtest/rt_misc.prg
+ Added some color string parsing tests. Some of them fail.
* source/rtl/achoice.prg
* source/debug/debugger.prg
* utils/hbtest/hbtest.prg
* utils/hbtest/rt_array.prg
* Formatting.
* harbour/utils/hbdot/hbdot.prg
* some minor modifications for GT drivers which allow to change
the size of console window
* changed the order of requested GTs for CYGWIN builds