* hbwhat32/_winsys.c
* hbwhat32/_wincomm.c
! Warnings.
* source/rtl/net.c
! Fixed GPF in NETNAME() under DOS (in error condition only).
! Fixed GPF in NETNAME()/HB_USERNAME() on unsupported
platforms.
- contrib/hbmisc/dbftools.c
* contrib/hbmisc/common.mak
* contrib/hbmisc/Makefile
- Removed to avoid collision with similar file in hbct.
Notice the content was also similar, except that
in hbct it was updated and extended. There was also
FIELDTYPE() implemented which was colliding with
function with the same name in core.
* include/hbextern.ch
* source/rdd/dbcmd.c
* source/rdd/dbdrop.c
* source/rdd/dbexists.c
* source/rdd/fieldhb.c
+ Added HB_ prefixed versions of DBDROP(),
DBEXISTS(), FIELDDEC(), FIELDLEN(), FIELDTYPE()
* source/rdd/rddinfo.c
! Comment.
* tests/multifnc/Makefile
! Updated lib names.
* contrib/hbapollo/apollo.c
! Fixed MSVC errors.
* contrib/mtpl_b32.bat
* contrib/mtpl_vc.bat
! Removed one obsolete line.
+ Now defines _HB_MAKELOG.
* contrib/hbapollo/make_b32.bat
* contrib/hbapollo/make_vc.bat
* contrib/hbfimage/make_b32.bat
* contrib/hbgd/make_b32.bat
* contrib/hbhpdf/make_b32.bat
* contrib/hbmysql/make_b32.bat
* contrib/hbodbc/make_b32.bat
* contrib/hbodbc/make_vc.bat
* contrib/hbpgsql/make_b32.bat
* contrib/hbpgsql/make_vc.bat
* contrib/hbw32ddr/make_b32.bat
* contrib/hbw32ddr/make_vc.bat
* contrib/hbzlib/make_b32.bat
* contrib/rddads/make_b32.bat
+ Redirects .lib creation (implib, lib) output to log file.
* contrib/xhb/hbcompat.ch
+ Added some more converions for xhb code.
* contrib/rddads/ads1.c
+ Added two TODOs. (to adsDrop and adsExists)
* source/pp/hbppgen.c
! MSVC warning fixed.
* make_vc.mak
! Typo in prev commit.
* harbour/bin/hb-func.sh
* added HB_USR_LIBS set during build time to list of predefined libs
in hb* scripts
* harbour/source/rtl/hbgtcore.c
! fixed horizontal scrolling. Warning CTIII does not support
horizontal scrolling and ignores 6-th scroll parameters.
This behavior is intentionally not replicated in CTWIN
though it can be easy added if someone will need it but
covered with some macro to not change default builds.
It will be enough to overload SCROLL() method and set
iCol = 0 before calling SUPER_SCROLL().
* harbour/make_rpm.sh
* harbour/harbour.spec
* changed --without gpl to --without gpllib
* harbour/source/compiler/complex.c
* changed END terminal symbol used for END SEQUENCE to ENDSEQ
for better error reporting in wrong .prg code
* harbour/include/hbcomp.h
* harbour/include/hbcompdf.h
* harbour/source/compiler/hbmain.c
* harbour/source/compiler/complex.c
* harbour/source/compiler/harbour.y
* harbour/source/compiler/harbour.yyc
! moved function related variables and structures from HB_COMP to
PFUNCTION - it fixes many different problems which can appear in
some code, also the recent Mindaugas' example
! initialize statement value in error action to avoid valgrind/CodeGuard
warning reports when syntax error appear in some complex statements
* harbour/source/rtl/scrollbr.prg
* repalced TAB with SPACEs
* source/rtl/tbrowse.prg
+ HIDDEN -> PROTECTED
* contrib/rddads/rddads.h
* Comment.
* contrib/rddads/adsfunc.c
! ADSCOPYTABLECONTENTS() fixed to throw an RTE if
destination area is not ADS.
! ADSCOPYTABLECONTENTS() fixed to not change the
current workarea to the destination area
(even if destination area wasn't ADS).
* contrib/rddads/ads1.c
! Added some missing bits to VFP support.
Requires ACE 9.00 or upper.
* harbour/contrib/gtwvg/gtwvg.c
* harbour/source/rtl/gtwvt/gtwvt.c
! fixed memory corruption caused by missing ASCII-0 terminator
when window title is retrieve
* tests/db_brows.prg
! Removed note of hbmisc requirement.
* tests/Makefile
- tests/twirl.prg
+ contrib/hbmisc/tests/twirl.prg
! Test moved to local test dir.
* source/vm/cmdarg.c
! hb_cmdargIsInternal(): Removed '--' as internal option marker,
since it will disallow any application code to accept
such options. We will now stick with '//' prefix for
Clipper compatible internal options.
* contrib/hbzlib/tests/myzip.prg
* contrib/hbzlib/tests/myunzip.prg
* contrib/hbzlib/hbmzip.c
+ Added support for password on Harbour API level.
; NOTE: This password is not at the moment compatible
with .zip passwords added by standard .zip
utilities.
* harbour/source/debug/tbrwtext.prg
! declare HBDebugger as friend class of HBBrwText to avoid scope
errors when debugger code executes some protected messages.
It will be better to clean debugger code but I do not have
time for it now.
! use HBEditor() in edit mode to eliminate problems with cursor
positioning in source code window
* harbour/source/debug/debugger.prg
* added protection against RT error during macro evaluation of wrong
user expressions
* harbour/source/compiler/complex.c
! added casting to unsigned char to force syntax error when
some unknown tokens appear. Negative values bison recognizes
as end of input.
* harbour/contrib/rddads/adsmgmnt.c
! cleaned one warning
* source/rtl/scrollbr.prg
! Fixed :Update(). Submitted by Edmer.
! Fixed formula in :CalcThumbPos(). Reported by Edmer.
! Fixed assigment in :CalcThumbPos() to not interfere
with ::lOverride. Reported by Edmer.
; Please test.
* contrib/rddads/ads.ch
* contrib/rddads/rddads.h
* contrib/rddads/adsfunc.c
* contrib/rddads/ads1.c
* contrib/rddads/adsmgmnt.c
* Lots of minor code cleanups, formatting fixes, optimizations,
and several minor fixes.
! Lib version related fixes. (some features were not updated
for newer ACE versions).
+ Automatic version detection extended with 6.20 and 5.00.
6.00 is still missing, if someone has it, pls send it to
me. Even 6.11-8.00 versions disappeared from the vendor's
site lately.
+ Added support for all possible properties in
ADSDDGETDATABASEPROPERTY()
ADSDDSETDATABASEPROPERTY()
* ADSMGGETUSERNAMES() will now always return an array of
users with 6 elements in each item, all data which
is not available for the compiled version of the lib,
will be filled with empty strings. Previously the
number of elements depended on the compiled version.
; Besides the above, no functionality change should be
experienced.
; Please test.
* contrib/rddads/make_b32.bat
* contrib/rddads/make_vc.bat
! Changed to never look for ace32.dll in system32 dir
to generate the ace32.lib.
! Some other fixes to prev change where ADS_VER
was obsoleted.
* contrib/hbct/ctwfunc.c
* contrib/hbct/ctextern.ch
+ Added hbct_MaxRow()/hbct_MaxCol() emulating
the original overloaded MaxRow()/MaxCol()
functions of CT3 lib.
* source/rtl/maxrow.c
* Reverted previous change on request, thus introducing
a 3rd party lib specific function parameter extension.
Users of CT3 lib's overloaded MaxRow(.T.)/MaxCol(.T.)
functions are encouraged to change the app code
to rather use hbct_MaxRow()/hbct_MaxCol()
or hb_ScrMaxRow()/hbScrMaxCol(). These functions are
easy to implement in CA-Cl*pper too (simple wrappers
to Max*()).
* source/compiler/hbmain.c
* Reverted previous change on request. Some outputs
are not exactly CA-Cl*pper compatible this way, but
functionally it probably doesn't matter for most ppl.
* contrib/xhb/hbcompat.ch
! Corrected MaxRow()/MaxCol()/hb_ScrMaxRow()/hb_ScrMaxCol()
translations. (hopefully, someone using xhb please test)
- tests/ctwtest.prg
+ contrib/hbct/tests/ctwtest.prg
* Moved CT lib specific test to contrib local test
directory (containing lots of other CT tests
already). Building these is yet to be solved.
* contrib/hbct/tests/math.prg
* contrib/hbct/tests/trig.prg
* contrib/hbct/tests/num1.prg
! Added SVN header.
* include/hbgtinfo.ch
* Minor comment.
* contrib/rddads/make_gcc.sh
* Help text sync with *.bat.
* harbour/source/rtl/tbrowse.prg
! fixed positioning when cursor is moved by :rowpos assignment and
vertical move methods used together
* harbour/source/vm/estack.c
* updated hb_stackDispCall(), hb_UnhandledExceptionFilter(),
OS2TermHandler() to show functions where codeblock where
defined instead of EVAL() just like in call stack presented
by cancel operation
* updated hb_UnhandledExceptionFilter() to work in unicode mode
* harbour/source/vm/hvm.c
! fixed 1-st procedure presented in call stack during cancel operation
to use the same conditions as for all others
* contrib/rddads/make_b32.bat
* contrib/rddads/make_vc.bat
* contrib/rddads/ads.ch
* contrib/rddads/rddads.h
* contrib/rddads/ads1.c
* contrib/rddads/adsfunc.c
* contrib/rddads/adsmgmnt.c
+ Added ACE version autodetection.
You can override with: -DADS_LIB_VERSION=700 (and similar)
(ADS_REQUIRE_VERSION still accepted for compatibility)
! Fixed a few lib version related problems.
! hMgmtHandle global renamed to ads_g_hMgmtHandle.
* Formatting.
* contrib/rddads/rddads.h
+ QUESTION: added about ADS_MAX_KEY_LENGTH redefinition.
Is it needed?
* source/compiler/hbmain.c
* Changed output device (hb_compOutStd() -> hb_compOutErr())
for following texts:
"Compiling..."
"No code generated"
"Lines x, Functions/Procedures x"
This is to replicate CA-Cl*pper behaviour a bit more.
* include/hbextern.ch
* common.mak
* source/rtl/Makefile
* source/rtl/maxrow.c
+ source/rtl/scrrow.c
* contrib/xhb/hbcompat.ch
+ Added hb_ScrMaxRow(), hb_ScrMaxCol()
These will return the screen dimensions regardless
of the size of an active window (when using CT
windows for example). Functionality is the same
as MaxRow(.T.) and MaxCol(.T.) previously.
! MaxRow()/MaxCol() extended parameters removed.
+ Added MaxRow(.T.)/MaxCol(.T.) conversions for
xhb lib (hbcompat.ch) in both directions.
; XBase++ doesn't have any extended parameters
for Max*() function. Flagship has two of them,
both of them doing something different. CAVO doesn't
have these functions at all.
* contrib/xhb/hbcompat.ch
! GTI_* macros updated to HB_GTI_*.
* source/vm/memvclip.c
% Minor opt in __QQPUB().
* source/vm/extend.c
* 0 -> NULL
* source/vm/estack.c
- QUESTION removed.
* source/lang/msgbgmik.c
* source/rtl/console.c
* source/rtl/philes.c
* source/rtl/adir.prg
* source/rtl/getsys53.prg
* source/rtl/getsys.prg
* source/rtl/tget.prg
* source/rtl/ttopbar.prg
* source/rtl/pushbtn.prg
* source/rtl/mod.c
* source/rtl/memofile.c
* source/rtl/radiobtn.prg
* source/rtl/filesys.c
* source/rtl/tbrowse.prg
* source/vm/estack.c
* source/vm/itemapi.c
* source/vm/hvm.c
* source/vm/cmdarg.c
* source/vm/fm.c
* source/vm/eval.c
* source/common/hbver.c
* source/common/expropt2.c
* utils/hbtest/hbtest.prg
* utils/hbtest/rt_misc.prg
* utils/hbtest/rt_str.prg
! Comment fixes and minor formatting.
* harbour/bin/hb-func.sh
! do not add .exe suffix if user added it explicitly in W32/DOS builds
* harbour/source/vm/dynsym.c
* added internal error when size of dynamic table exceed maximal size
% small optimization in hb_dynsymFind() function
* harbour/source/pp/ppcore.c
* added support for generating #line directives in strictly Clipper
compatible way even if they are redundant. It can be enabled
by HB_PP_STRICT_LINEINFO_TOKEN compiler time macro, f.e. using
environment variables:
set C_USR=-DHB_PP_STRICT_LINEINFO_TOKEN %C_USR%
and making clean build.
* common.mak
* source/rdd/Makefile
* source/rdd/dbstrux.prg
* source/rdd/rddord.prg
+ source/rdd/rddordu.prg
+ source/rdd/dbstruxu.prg
+ Moved some UNDOC functions to separate files.
* Removed STRICT guard from _dtxCondSet().
* include/hbextern.ch
! Added missing _dtxCondSet().
* source/rtl/colorind.c
* source/rtl/direct.c
* Minor formatting.
* source/vm/asort.c
! Changed one direct item access to item API call.
* contrib/rddads/ads.ch
* contrib/rddads/adsfunc.c
* contrib/rddads/ads1.c
! Added support for ADS9 VFP file type and fields.
; Borrowed from xhb / Luiz Rafael Culik.
(changed to compile using original - older - ADS headers)
; Please review & test.
* source/vm/pcount.c
% Minor opt.
* contrib/hbtip/sendmail.prg
! SF bugtracker#1934698 fix applied. Thanks Chen.
- contrib/hbapollo/tests/bld.bat
* contrib/hbapollo/tests/bld_b32.bat
% Using central bld.bat instead of modified local copy.
+ contrib/gtwvg/tests/bld_b32.bat
+ Added BCC32 build batch file for GTWVG tests.
; NOTE: demowvg still doesn't seem to work.
* harbour/source/rtl/gtwin/gtwin.c
* added mouse wheel support to GTWIN
; TOFIX: the mouse events code in GTWIN needs cleanup
current code which uses s_mouseLast is wrong
and can cause that some events will be missing
and some others are wrongly reported. It should
be changed to sth similar to the code I added
to GTOS2
* source/common/hbver.c
+ OS(), hb_verPlatform(): Added detection of Windows Server 2008.
* source/rtl/tobject.prg
! XPP feature guarded with HB_COMPAT_XPP
* source/rtl/tget.prg
! Fixed to not extend ::left(), ::right(), ::backspace(),
::delete() with an internally used (but also externally
accessible) extra parameter. This is interface is now
made fully C5x compatible.
* tests/rto_tb.prg
! Fixed to override __eInstVar53() (instead of _eInstVar())
* include/hbextern.ch
* common.mak
* source/rdd/Makefile
+ source/rdd/dbcmdhb.c
+ Added non-internal versions of __dbPack() and __dbZap(),
named: hb_dbPack() and hb_dbZap(). If group needs it I
can add dbPack() and dbZap() too in separate files to
lessen the problem of name collision with app code.
* source/rtl/inkey.c
* Formatting.
+ HB_KEYPUT(): Now possible to pass an array with string elements.
(see feature in xhb/__KEYBOARD())
* HB_KEYPUT(): For string parameter it now uses hb_inkeySetText()
API, rather than a loop of hb_inkeyPut()s.
* contrib/xhb/xhbfunc.c
! xhb flavour of __KEYBOARD() sync fixed. (hb_inkeySetText() got
extended in xhb, so here we're using hb_inkeyPut() for single
numeric key codes).
; Now same code is used as in HB_KEYPUT().
* source/vm/memvars.c
* source/vm/hvm.c
* source/vm/arrayshb.c
+ Added HB_C52_STRICT branches for the remaining RTEs
which produced different results in hbtest.
! Fixed HB_C52_STRICT RTE for AFill().
; NOTE: It's not possible to build Harbour currently when
HB_C52_STRICT, so it's not easy to test these.
* include/hbclass.ch
! Typos.
* source/rtl/memoedit.prg
* source/rtl/achoice.prg
* source/rtl/treport.prg
* Formatting.
* source/rtl/tobject.prg
* Formatting.
% Minor opt.
* harbour/source/rtl/tbrowse.prg
* changed internal logic used for vertical movements. Now it should
be much closer to Clipper though it also replicates some wrong
Clipper behaviors due to removed protection against some concurrent
modifications in browsed object. I left two TOFIX notes and I'll
reimplement them later. Please test. Lorenzo it should resolve
the problem you reported.
* source/rtl/achoice.prg
! Fixed to abort (rather than crash), when user callback
function returns a non-numeric type. This is CA-Cl*pper
compatible behaviour.
* source/rtl/dbedit.prg
+ Documented CA-Cl*pper behaviour when it crashes if
a non-numeric (and non-NIL) var is returned from
the user callback function.
* include/memoedit.ch
* source/rtl/memoedit.prg
! XPP feature marked with HB_COMPAT_XPP.
! Fixed to not crash if user callback function
returns non-numeric type.
* contrib/xhb/xhb.ch
* contrib/xhb/xhbfunc.c
! xhb flavour of __KEYBOARD() synced with current xhb code.
* contrib/hbmisc/hb_f.c
! Swapped C file seek constants to Harbour ones.
* Minor cleanups and formatting.
* source/rtl/tbrowse.prg
! Committed patch to ::setPosition()
submitted by Prezemek on the devl list.
* source/rtl/tget.prg
* Minor changes. Copyright updated.
* source/rtl/tget.prg
+ Some protected object vars renamed to better show their roles.
! Fixed ::setFocus() to not mess with width related vars.
! Fixed ::PutMask() to not mess with display width.
! Fixed ::varPut() to only accept certain var types.
! Fixed ::picture() to more consistently reset picture related vars.
! Hack added to ::Reform() to try to set ::nDispLen like CA-Cl*pper.
! Fixed ::posInBuffer() to only work when in focus.
(I didn't test if this is XPP compatible, but it surely avoids
a possible RTE now.)
! Removed ::display() non-compatible 'lForce' parameter.
! Minor cleanups.
; NOTE: Now o[16] (aka ::nDispLen) is almost totally CA-Cl*pper
compatible.
* tests/rto_get.prg
+ Added some more tests.
* source/rtl/tget.prg
! Fixed o[13] and o[14] content (they were swapped) in C5.3 mode.
! Fixed ::varPut() to not have the extra Harbour parameter.
! Fixed ::picture to not mess with ::nDispLen when @S is used.
Now solved with new internal var ::nPicLen.
% ::ResetPar() internal method moved inside ::display()
! Fixed ::updateBuffer() to set ::xVarGet (o[19] in C5.3 mode
and o[11] in C5.2 mode when ::hasFocus) to ::original.
! Fixed ::display() behavior when not in focus.
! Fixed ::reset() to be more compatible by setting ::xVarGet.
! Fixed ::undo() for non-gettable variable types.
! Fixed ::killFocus() to never call ::assign().
! Fixed ::varPut() to never touch internal vars (old 'lReFormat' mode).
! Fixed ::varGet() to not touch ::xVarGet internal var.
! Fixed ::insert()/::overStrike() to call ::display() in
out of bound and rejected cases.
! Fixed ::insert()/::overStrike() to not set ::Rejected
when position is out of bound.
! Fixed internal ::PutMask() to never initiate a ::block
evaluation.
; NOTE: Since Get() object is a highly complicated beast,
bumps are expected. Pls test this code with your
applications and report any problems with reduced
code snippet. I'll include those tests in the
regression test suite.
Notice that after these changes, the number of
differences between C5.x and Harbour are further
reduced, especially regarding the "object as array"
kind of access and regarding block evaluation.
Currently, differences are mostly present in o[16]
in C5.3 mode, plus some odd cases testing
mostly invalid picture values, and a few other minor
differences here and there. Plus of course further
differences may happen to exist in cases not covered
by rto_get.prg.
* source/rtl/einstvar.prg
! Fixed to only include _eInstVar() if HB_C52_UNDOC is
#defined (it is by default).
* source/rtl/tbrowse.prg
+ Added missing XPP methods (three synomyms to
existing methods).
* tests/rto_get.prg
+ Added even more tests.
+ Added some additional info about errors.
! Fixed ::block SETGET tracing.
* harbour/source/pp/ppcore.c
! fixed some combinations of user functions in stream pragmas, f.e.:
#pragma __cstream|f1(%s)|f2()
or:
#pragma __cstream||f2(%s)
+ added support for:
#pragma __[c]streaminclude "fileName"|<code with %s result marker>
f.e.:
#pragma __streaminclude "foo1.html"|cHtml:=%s
__cstreaminclude decode C like escape sequences, __streaminclude
doesn't do that and takes file body in raw form. Maximum file size
is arbitrary set to 65520.
* harbour/source/debug/dbgbrwsr.prg
* respect oCol:colorBlock() used by debugger code in few places
* harbour/source/debug/dbgtobj.prg
* sort messages and show methods in lower letters just like Clipper
* harbour/source/debug/dbgtobj.prg
* harbour/source/debug/dbgthsh.prg
* harbour/source/debug/dbgtarr.prg
! added protection against RT error when user type wrong expression
in OBJECT, ARRAY and HASH inspectors
* harbour/include/hbclass.ch
* harbour/include/hbcomp.h
* harbour/source/compiler/hbmain.c
* harbour/source/compiler/harbour.yyc
* harbour/source/compiler/harbour.y
! fixed -w3 warnings when class name is different then function name
* allow to overwrite predefined classes definitions
it's a dirty hack but current implementation of predefined
function and class declarations has to be rewritten from scratch
in the future so I make it intentionally - at least it resolves
some memory leaks like: harbour -n -w3 tbcolumn.prg
* harbour/config/rules.cf
* harbour/make_b32.mak
* harbour/make_gcc.mak
* harbour/make_vc.mak
* harbour/make_vcce.mak
* harbour/contrib/mtpl_b32.mak
* harbour/contrib/mtpl_gcc.mak
* harbour/contrib/mtpl_vc.mak
* changed default Harbour compiler switch -w2 to -w3
* harbour/contrib/xhb/xhbcomp.prg
* replaced repeated declarations by small hack
* harbour/utils/hbmake/tmake.prg
! fixed reported by -w3 repeated aDir declaration
* harbour/source/rtl/tbrowse.prg
* calculate frozen area size for 5-th element of array returned
by xbase++ compatible method :viewArea(). Viktor please check me.
If you can also describe what exactly TOFIX in :firstScrCol()
and :viewArea() means then maybe I can help - I do not have
xbase++ so I do not know what should be fixed.
* harbour/include/hbapicls.h
* harbour/source/vm/classes.c
+ added new function hb_dbgObjSendMessage() which allows to
call messages with given given execution context for proper
scope checking
* harbour/source/debug/dbgentry.c
+ added HB_DBG_SENDMSG() for calling messages with given execution
context
* harbour/source/debug/dbgtobj.prg
* removed all __obj*() function calls
* use HB_DBG_SENDMSG() to access/assign object variables
! fixed default value in GET operation called from object
inspector to always show current object variable value
! fixed set for object variables which hold value: "Method"
they were recognized as method
Now object variables can be inspected by debugger.
If object has multiple private messages with the same name
inherited from parent classes then their context will be
dynamically changed depending on position in currently
debugged code.
* source/rtl/tbrowse.prg
! Added some new lines to XPP methods.
* contrib/hbtip/thtml.prg
* contrib/hbtip/popcln.prg
* contrib/hbtip/sendmail.prg
* contrib/hbtip/cgi.prg
* contrib/hbtip/url.prg
* contrib/hbtip/mail.prg
* contrib/hbtip/ftpcln.prg
! Fixed ambigous "=" and "!=" to "==" or ":="
or "!( == )" contructs.
Someone pls verify if these fixes are right in
the broader context.
* common.mak
* include/hbextern.ch
* source/rtl/Makefile
* source/rtl/checkbox.prg
* source/rtl/einstvar.prg
+ source/rtl/einstv52.prg
* source/rtl/listbox.prg
* source/rtl/pushbtn.prg
* source/rtl/radiobtn.prg
* source/rtl/radiogrp.prg
* source/rtl/tbcolumn.prg
* source/rtl/tbrowse.prg
* source/rtl/tget.prg
* source/rtl/tmenuitm.prg
* source/rtl/tpopup.prg
* source/rtl/ttopbar.prg
! _eInstVar() made compatible with C5.2 in C5.2 mode.
* Renamed _eInstVar52() -> __eInstVar52()
(Harbour internal function namespace)
* Renamed _eInstVar53() -> __eInstVar53()
(Harbour internal function namespace)
* __eInstVar52() moved to a separate file.
* Harbour now uses __eInstVar53() internally.
- make_os2_gcc.cmd
+ make_gnu_os2.cmd
* Renamed to align the filename with the rest of the
GNU make command files. Content unchanged.
TODO: TGET test case for my vtgetlst problem.
TODO: TGET fix for the above.