* tests/longstr.prg
* contrib/hbole/oleauto.prg
* contrib/hbole/ole2.c
* contrib/gtwvg/wvgutils.c
* contrib/gtwvg/wvgcore.c
* contrib/hbgd/gdbarcod.prg
* contrib/hbgd/gdbar.prg
* contrib/hbwin/win_tole.prg
* contrib/hbwin/win_ole.c
* contrib/hbvpdf/hbvpdf.prg
* contrib/examples/hbsqlit2/tests/hbsqlite.prg
* contrib/examples/hbsqlit2/TODO.txt
* contrib/examples/hbsqlit2/hbsqlit2.c
* source/debug/dbgwa.prg
* source/rtl/gtwin/gtwin.c
* source/rtl/tget.prg
* source/rtl/tgetint.prg
* source/compiler/gencobj.c
! Removed high chars from comments. This usually means
copyright holders' names. I apologize for touching
them, I also have one in mine, but it's better to
not use them in source code to avoid encoding problems.
* harbour/common.mak
* harbour/make_gcc.mak
! fixed hbtest-dll linking - the path to used harbour shared library
was hardcoded in final binaries
+ added hbrun-dll. Please update make_b32.mak and make_vc.mak
* make_vc.mak
+ Added /nxcompat linker flag for non-WinCE, non-DLL,
HB_VISUALC_VER >= 80 MSVC executables.
This should add extra safety.
* include/hbextern.ch
* source/rtl/rat.c
+ Added HB_RAT() which is similar to RAT(), but also accepts
<nStart> and <nEnd> optional paramaters, similarly to HB_AT().
; Please test.
* source/rtl/at.c
* Minor formatting.
* harbour/source/vm/memvars.c
! fixed 3 tracelog messages
* harbour/source/rtl/hbgtcore.c
* declare core method table as const
* harbour/source/compiler/gencc.c
! fixed accessing data out of buffer in string to hex conversion and
logical expression used to divide strings
* ChangeLog
! Fixed again the UNICODE problem (I've uploaded a wrong
version apparently).
+ Added my last entry which was lost due to above.
! Removed all ending whitespaces.
! Stripped all non-ASCII chars. Sorry to all who's names
were thus modified.
; NOTE: Please don't use any high chars in the future,
only 7-bit ASCII. Same goes for all Harbour source
comments BTW.
This way everyone can read what the other are typing
and it's much easier to fix files if someone
accidentally saves with the wrong codepage.
; TOFIX: We should also possibly fix all high chars in
.prg and .c code _strings_.
* ChangeLog
! Restored last non-UNICODE version, and readded
all entries and reapplied all changes since then.
; NOTE: Please never save any Harbour files in
UNICODE mode. Thank you.
* contrib/make_gcc_all.sh
* contrib/Makefile
- Removed hbdbgfx.
* source/pp/hbpp.c
* source/main/harbour.c
* Excluded hbwmain for __POCC__ WinCE.
; TOFIX: Warning: Not proper fix.
This way it won't link but at least it compiles.
* source/compiler/gencc.c
* Switched to hexadecimal format for high chars, because
octal was tried to be converted to Windows codepage, by
PellesC.
* config/w32/poccce.cf
- Removed -DSTRSAFE_NO_DEPRECATE switch.
* config/w32/pocc.cf
+ Added -MT switch.
* contrib/hbwin/win_prn2.c
* contrib/hbwin/win_dll.c
* source/rtl/hbhex.c
* source/rdd/hbsix/sxcompat.prg
* Minor formatting.
* harbour/make_gcc.mak
! declared non file helper rules as .PHONY ones.
! fixed bad typo in helper rules usage - strange that I haven't seen
it before.
* restored non indirect rules - now they should work as expected
also in parallel builds.
TODO: remove static libraries from HB_BUILD_TARGETS in common.mak
if everything is correct then they should be created to satisfy
hbrun and other tools dependencies. It's not necessary to explicitly
duplicate it.
* harbour/contrib/gtwvg/gtwvg.c
* harbour/contrib/gtwvg/gtwvg.h
* harbour/source/rtl/gtwvt/gtwvt.c
* harbour/source/rtl/gtwvt/gtwvt.h
+ BOOL bResizing
+ BOOL bAlreadySizing
To control unnecessary code execution while sizing operation is
being carried out. Now the flickering of console window should be
greatly minimized, IMO, please test.
! Fixed behavior of some function not to recreate font if one is already
created given other parameters are the same. SetMode() does nothing if
nRows, nCols are the same as with console prior to calling this function.
; NOTE: Please test extensively as this is one gray area of GTWVT we all
are in a quest to fix.
* harbour/make_gcc.mak
! corrected missing $(HARBOUR_EXE) dependence in .prg files rules
! replaced non indirect rules (::) which are strictly file base with
indirect ones to not confuse dependence logic when parallel
compilation is enabled
! marked harbour.c and cmdarg.c as dependent on pptable.c to fix
compilation order - these files needs hbverbld.h which is generated
together with pptable.c
! fixed HBTESTDLL_EXE dependencies - static library were used instead
of harbour share library. BTW probably it will be good to create also
HBRUNDLL_EXE
With above modification parallel compilation can be enabled for
make_gcc.sh (-j<N> GNU make option). It greatly improves compilation
speed. Probably also make_{bcc,vc}.mak should be fixed even if they
do not support parallel compilation.
* bin/hbmk.bat
+ Added C_USR support for OpenWatcom.
- Removed debug switches from OpenWatcom C compiler cmdline.
* bin/hbmk_os2.cmd
+ Added OpenWatcom support. Pls update it, f.e. I don't know
what is the name of the compiler executable.
! Fixed HB_COMPILER branching. Looks like nobody uses this
file if this problem didn't show up so far, so I'd like to
propose again to remove this file completely, as there is
not much point spending time on maintaining stuff which
nobody uses or needs, is there?
* bin/hbmk.bat
- config/dos/watcom.cf
- config/w32/watcom.cf
- Removed rather obsolete Watcom support. Pls use OpenWatcom.
Update you envvar HB_COMPILER from 'watcom' to 'owatcom'.
* make_b32.bat
* make_vc.bat
* contrib/mtpl_b32.bat
* contrib/mtpl_gcc.sh
* contrib/mtpl_vc.bat
* Sync with GNU make system:
HB_MAKE_FLAGS -> MK_USR
; TOFIX: Maybe it's a good time now to resolve the missing HB_
prefixes for C_USR, L_USR, A_USR, MK_USR.
If there are no objections / better ideas I'd like
to make these changes:
HB_USER_LIBS -> HB_USR_LIBS
PRG_USR -> HB_USR_PRG
C_USR -> HB_USR_C
L_USR -> HB_USR_LINK (or HB_USR_L ?)
A_USR -> HB_USR_LIB (or HB_USR_A ?)
MK_USR -> HB_USR_MAKE (or HB_USR_MAK ?)
As an option we may keep the old names for
compatibility to give some transition time.
* source/vm/set.c
! _SET_EVENTMASK RTE removed to be Clipper compatible.
! _SET_VIDEOMODE RTE removed to be Clipper compatible.
! _SET_MBLOCKSIZE default value set to 64 (was 0) to be Clipper compatible.
(pls correct me if this was intentionally wrong)
* utils/hbtest/rt_misc.prg
+ Added one C5.2 SET()s for two simple tests.
+ Added all C5.3 SET()s for two simple tests each.
; NOFIX: _SET_VIDEOMODE has the type wrong.
; NOTE: It wouldn't be a bad idea to add some more comprehensive
tests for SET()s.
* harbour/make_gcc.sh
* harbour/make_gnu.bat
* harbour/make_gnu.sh
* harbour/config/lib.cf
* harbour/config/bin.cf
+ added MK_USR to pass GNU MAKE flags
* harbour/source/vm/set.c
* minor cleanup and simplifications in hb_setSetItem().
* grouped SETs with the same item type in hb_setSetItem() function
together.
* source/rtl/gtwvt/gtwvt.c
* hb_gt_wvt_ResetWindowSize(): Not very good looking (or
overly efficient) solution added for the windows
resize/positioning problem in case the initally set size
cannot fit on the screen (Windows desktop).
* source/vm/set.c
+ Implemented rest of hb_setSetItem() values.
; TODO: Please review.
! Fixed HB_SET_FILECASE and HB_SET_DIRCASE to not allow
invalid numeric values to be set.
! Added missing 'break;' to hb_setSetItem2();
* source/rtl/gtwvt/gtwvt.c
! Fixed a few places where '+' operator was used
instead of '|'.
* Minor opt/formatting.
; TOFIX: The window positioning bug is still to be solved.
* source/rdd/usrrdd/rdds/arrayrdd.prg
* Changed AR_CREATE( nWA, aOpenInfo ) behaviour, now it not checks
if a table exists in memory but act as dbCreate() does.
+ Added hb_FileArrayRDD() function to check existence of a table
in memory.
* Changed EraseArrayRDD() -> hb_EraseArrayRDD()
* removed string lenght limit in case of a Memo field
* source/rtl/gtwvt/gtwvt.c
* Formatting.
* config/w32/owatcom.cf
* Added support for L_USR in link options.
* Removed debug switch -d2 from compiler command line.
For debug builds 'C_USR=-d2' and 'L_USR=debug all'
should be added.
; Untested.
* bin/hbmk.bat
+ Added support for 'owatcom' as HB_COMPILER.
; NOTE: If there are no objections I'll remove Harbour
support for 'watcom' HB_COMPILER, which was
used for old non-opensource version of this
compiler, but I guess it doesn't make too much
sense having them anymore.
* source/common/hbverdsp.c
* Minor change in /build output.
* include/hbver.ch
* source/rtl/version.c
* Changed ordering of parameter constants to make more sense.
* bin/hbmk.bat
* config/w32/owatcom.cf
* Removed 'debug all' linker option to make executable sizes
significantly smaller by default. If you need debug info,
use 'L_USR=debug all'.
; NOTE: I'd suggest doing the same for other platform supported
by owatcom. If there are no objections I can do this.
* source/rtl/gtwvt/gtwvt.c
* Typo, minor formatting.
* harbour/include/hbset.h
* harbour/source/vm/set.c
+ added hb_setSetItem2() C function for SETs which needs two parameters
+ added support for HB_SET_DECIMALS and HB_SET_EPOCH in hb_setSetItem()
Still 22 SETs are marked as TODO
+ added internal function hb_setSetFile() for HB_SET_ALTFILE,
HB_SET_EXTRAFILE, HB_SET_PRINTFILE - function body marked as TODO.
I'll implement it later.
* harbour/include/hbwmain.c
* pacified unused variable warning
* harbour/include/hbpp.h
* harbour/source/pp/ppcore.c
! do not report #if expression errors in #if PP directives when they are
in codedis activated by parent #if[def]/#elif/#else. It allows
to compiler code like:
#ifdef DEFINE
#if DEFINE >= 0x100
...
#endif
#endif
+ added logical expression reduction to not report #if expression errors
in code like:
#ifdef DEFINE && DEFINE >= 0x100
...
#endif
! fixed possible division by 0error in #if exporessions like #if 1 / 0
Now #if expression compiler error is generated
! restored some bit operators in #if directives wrongly disabled with
xHarbour stuff
* harbour/source/vm/hashfunc.c
% removed unnecessary hb_itemUnRef()
* common.mak
* source/vm/Makefile
* source/vm/vmmt/Makefile
* source/common/Makefile
* source/rtl/Makefile
- source/vm/fmhb.c
+ source/rtl/fmhb.c
- source/vm/hbmem.c
+ source/common/hbmem.c
* Moved hbfm (MEMORY() .prg function) from VM to RTL.
* Moved hbmem (hb_xmem*() C functions) from VM to COMMON.
- contrib/hbziparc/hbzipcpp.old
- Removed.
* harbour/tests/wcecon.prg
! added missing REQUEST DBFCDX
* harbour/contrib/rddsql/Makefile
! added missing include $(TOP)$(ROOT)config/lib.cf
* harbour/contrib/rddsql/hbsqldd.h
* harbour/contrib/rddsql/sqlbase.c
* harbour/contrib/rddsql/mysqldd.c
* added missing const to some char * parameters/members
; added note about using sizeof() in preprocesor conditional directives
* harbour/contrib/rddsql/sqlmix.c
! fixed printf() format
TOFIX for author:
mysqldd.c:258: warning: ‘pItemEof’ may be used uninitialized in this function
sqlbase.c:509: warning: comparison of unsigned expression < 0 is always false
Mindaugas can you look at it?
* contrib/examples/dbu/bld_b32.bat
* contrib/examples/dbu/bld_vc.bat
* utils/hbdoc/bld_b32.bat
* utils/hbdoc/bld_vc.bat
* utils/hbmake/bld_b32.bat
* utils/hbmake/bld_vc.bat
* Minor cleanups.
; NOTE: Win9x support for BCC files is now dropped.
* contrib/hbcurl/hbcurl.c
% Removed two Harbour level functions not really
adding to functionality but forcing linkage of these
(otherwise unused) curl interfaces.
CURL_SHARE_STRERROR()
CURL_MULTI_STRERROR()
INCOMPATIBLE (but I doubt even a single user would be affected)
* source/rtl/version.c
! Fix to prev.
* make_vc.mak
* -GA option only used for HB_VISUALC_VER >= 70.
Please update this if older versions also support it.
* include/hbver.ch
* source/common/hbver.c
* Some more fiddling with version number terminology and
hb_version() values:
HB_VERSION_MICRO -> HB_VERSION_RELEASE
HB_VERSION_BLD_DATE_STR -> HB_VERSION_BUILD_DATE_STR
HB_VERSION_BLD_DATE -> HB_VERSION_BUILD_DATE
HB_VERSION_BLD_TIME -> HB_VERSION_BUILD_TIME
HB_VERSION_CHANGELOG_REV -> HB_VERSION_CHANGELOG_ID
Third part of version number could also be: PATCH, MICRO, BUILD
SVN revision could also be: BUILD
BUILD is inherently connected with a physical binary, so
I dropped it, PATCH is limiting and negativ, MICRO is not
very common (otherwise good), so a finally opted for
RELEASE. REVISION kept as is.
; If there are no objections I'll HB_VER_REVISION macro to
HB_VER_RELEASE. This will be an INCOMPATIBLE change, but
I expect not too many ppl being affected.
* TODO
- Removed MT as a TODO. Thanks Przemek for the nice job.
* harbour/include/hbapi.h
* harbour/source/vm/hashes.c
* harbour/source/vm/hashfunc.c
* changed hb_hSort() to execute sorting when hash is marked as needed
resorting instead of marking hash for resorting
* harbour/source/vm/fm.c
* formatting
* harbour/contrib/hbdbgfx/dbgfxc.c
! fixed casting in ASCII build
+ added support for UNICODE builds
* harbour/contrib/gtwvg/gtwvg.c
* cover LWA_ALPHA usage by #if ( _WIN32_WINNT >= 0x0500 )
to keep at least compile time compatibility with older systems
* common.mak
* source/vm/Makefile
* source/vm/vmmt/Makefile
* source/vm/fm.c
+ source/vm/fmhb.c
+ source/vm/hbmem.c
+ Moved functions not depending on FM_STATISTICS setting,
to separate files.
; NOTE: MEMORY() function should IMO move to rtl, and
hb_xmem*() functions to common lib.
* harbour/include/hbapi.h
* harbour/source/vm/hashfunc.c
* harbour/source/vm/hashes.c
+ added support for binary key order
% enable binary internal key order by default for new hash arrays
+ added .prg function to enable/disable/retrive binary order in hash
items:
hb_hSetBinary( <hValue>, <lOnOff> ) => <hValue>
hb_hBinary( <hValue> [, <lBinary> ] ) => <lBinary>
+ added support for hash array resorting. It's activated automatically
on 1-st key access/assign after changing binary or casematch hash
array flag
+ added .prg function hb_hSort( <hValue> ) => <hValue> which marks
hash array for sorting
* harbour/source/rtl/itemseri.c
% improved performance of hash array deserialization
TODO: add support for hash array flags and hash default value
serialization
* contrib/hbnf/getenvrn.c
- Removed some obsolete comments.
* contrib/hbwhat/whtlv.c
! Fixed memory leak.
! Fixed to use hb_strncpy() instead of unsafe lstrcpy().
TOFIX: The destination address isn't properly allocated and the
size of it is unknown, so this modification is not enough.
; TOFIX: Unicode conversion, buffer allocation for item.pszText.
* make_gcc.mak
* contrib/mtpl_gcc.mak
+ Added '-march=i586' for Windows platform.
(Sync with other make systems.)
* ChangeLog
+ Some changes marked as TOMERGE 1.0.
* contrib/hbtip/base64x.c
! Fixed and ages old problem with BUILDUSERPASSSTRING()
function, which always returned an empty string thus
making "AUTH PLAIN" broken. I wonder how this went
unnoticed for this long.
This also fixes unsafe strcpy() usage.
[TOMERGE 1.0]
* include/hbextern.ch
* common.mak
* source/codepage/Makefile
* source/codepage/cpeswinm.c
- source/codepage/cpes850.c
+ source/codepage/cpes850c.c
* source/codepage/cpesiso.c
+ source/codepage/cpesisoc.c
* source/codepage/cpeswin.c
+ source/codepage/cpeswinc.c
* source/codepage/cpesisom.c
* Spanish language support cleaned:
Modern collation made the default, fixed
CP linkage in ESWIN collations, Clipper
compatibility versions renamed to have an
ending 'C'
Now the following collations are supported:
ES850C - Clipper compatibility CP: IBM850
ESWINC - Clipper compatibility CP: Windows-1252
ESISOC - Clipper compatibility CP: ISO-8859-1
ESWIN - Modern CP: Windows-1252
ESISO - Modern CP: ISO-8859-1
ESMWIN - Compatibility with previous Harbour versions and xhb.
(this collation has wrong linkage, so everyone is
encouraged to use ESWIN or ESISO instead.)
Intentionally not added to hbextern.ch.
; TODO: Add ES850.
; TODO: Check whether Clipper compatibility is indeed true.
* contrib/rddsql/mysqldd.c
! Excluded sizeof() in #ifdef to compile with MinGW.
* contrib/hbhpdf/make_gcc.sh
! Fixed missing quote char.
* contrib/mtpl_gcc.mak
! Fixed to create its own OBJ dir. Not the ultimate
solution, pls enhance if you think.
* source/codepage/cpeswinm.c
* source/codepage/cpeswin.c
! Fixed linked codepage to be Windows-1252 instead of
ISO-8859-1. For the ISO versions, pls see ESISO variants.
* source/codepage/cpes850.c
* source/codepage/cpesisom.c
* Comments.
* contrib/make_gcc_all.sh
! Fixed to not include externally dependent contribs,
when HB_CONTRIBLIBS is specified by user.