+ package/harb_win.rc
+ package/harb_win.mft
* contrib/hbrun/hbrun.hbp
+ Stirring the sh*t-bucket of nice Windows features!
Added extremely useful manifest file and versioninfo,
currently used with hbrun.
Let's see how different win/wce builds fall apart!
(note: if there will be too much problem, I'll just
delete it, as it most pbly isn't worth the extra
work required for maintaining these files)
* contrib/rddads/ads.ch
+ Added TOFIX regarding COMMIT cmd.
* contrib/hbtip/cgi.prg
! Fixed TOFIX where *nix specific temp dir was hard-wired into
multiplatform code. Pls test it.
* contrib/rddads/ads.ch
! Restored deleted ADS commands.
* contrib/hbtip/cgi.prg
* Updated from file sent to the list by Lorenzo.
I had to fix a problem which made it obvious that the
file was never even compiled in Harbour SVN tree, so
please review it. This change also makes this class
incompatible with previous version.
* doc/en/rdd.txt
* doc/en/terminal.txt
! Two typos. (sent to users's list by Alain Aupeix)
* harbour/include/hbthread.h
* harbour/src/vm/hvm.c
* harbour/src/vm/thread.c
* on main thread exit unlock all main thread PRG mutexes before other
thread terminates and EXIT functions are executed.
* wake-up all thread waiting on subscribe operation when main thread
is terminated.
* harbour/src/compiler/gencc.c
* added workaround for C compilers which cannot compile very long
strings. This hack is not enabled by default and can be enabled
by __HB_CSTRING_SIZE_MAX[=<maxsize>] macro (by default <maxsize>
is 4KB).
* contrib/hbqt/hbmk2_qt.hbs
* Whitespace.
* include/harbour.hbx
* src/rtl/hbdoc.prg
* tests/stripdoc.hbs
* Added __HBDOC_FILTEROUT( <cFile> ) -> <cFile> internal
function to strip all NG doc content from a file and
return the stripped file.
* contrib/hbide/idedocwriter.prg
+ Use core __HBDOC_TOSOURCE() to generate NG doc source.
(just build tested)
; TOFIX: idedocwriter.prg and ideharbourhelp.prg
still makes direct reference to NG doc physical
format. Pls change these to use __HBDOC_* functions.
* contrib/hbide/idemain.prg
* contrib/hbide/idemisc.prg
* contrib/hbide/idebrowse.prg
+ Added: slots to use once RDDAds is linked with hbIDE.
( As per __HBDYNLOAD__RDDADS__ ).
* contrib/hbide/ideharbourhelp.prg
+ Implemented: to honor .hbd files.
.hbd files are looked into Harbour's root path and if
found, are used by "Documentation Viewer" other
standard .txt files are processed in /doc OR /doc/en
folders anywhere under the root folder.
HBGD seems to be missing from .hbd compilation.
* harbour/include/hbapicls.h
* harbour/src/vm/classes.c
+ added new C function
HB_SIZE hb_clsGetVarIndex( HB_USHORT uiClass, PHB_DYNS pVarSym );
which can be used as hack to speedup accessing some object instance
variables
* contrib/hbide/idemain.prg
+ Minor to prev. Now possible to build hbide with RDDADS
if 'set HB_DYNLOAD_RDDADS=yes' is used prior to build.
It's not supported, endorsed or even planned for this release,
IOW don't send me reports if it doesn't work.
* contrib/hbide/hbide.hbp
* contrib/hbide/idemain.prg
- Disabled RDDADS dynamic load. It requires further work
and brainstorm, which in turn requires interested contributors.
Delayed to the future, after stable release.
* harbour/include/hbclass.ch
+ added some class(y) compatible commands for delegated messages
* harbour/include/hboo.ch
* harbour/src/vm/classes.c
* harbour/src/rtl/tclass.prg
* native support for delegated messages - work in progress
* harbour/src/rtl/hbsocket.c
! fixed error checking to eliminate possible error code overload
* harbour/ChangeLog
* marked old TODO as [DONE]
* src/rtl/hbfilehi.prg
! Silly cut&paste typo causing major problem in some cases
in HB_PATHNORMALIZE(). (in 2011-02-11 12:04 UTC+0100 Viktor Szakats)
Thanks Teo for reporting the darwin/gcc problem it caused.
* contrib/hbtip/utils.c
* contrib/hbtip/hbtip.hbx
+ Applied update from Lorenzo:
- removed text/plain logic in magic search since this breaks css and js mimes
- removed magic check for pkzip (today many formats like ooxml and odf are zips)
- added extension mime for css, js, ods, xlsx, zip
- added TIP_JSONSPECIALCHARS()
* Formatting, cleaned error calls, variables names and scopes (also in TIP_HTMLSPECIALCHARS())
* TIP_JSONSPECIALCHARS(), TIP_HTMLSPECIALCHARS(): Changed to not RTE
when empty string is passed. Empty string will return empty string.
* contrib/hbide/idemain.prg
* contrib/hbide/hbide.hbp
+ Loading rddads lib dynamically in HBIDE.
One will need rddads-21.dll built for this and places in the
same dir as hbide (that's where it's generated). You can
build rddads-21.dll using HB_BUILD_CONTRIB_DYN=yes.
; TOFIX: Get the dynamic lib name right for non-win platforms.
Pbly some core functions will be needed for that.
* doc/en/1stread.txt
* doc/en/array.txt
* doc/en/browse.txt
* doc/en/cmdline.txt
* doc/en/compiler.txt
* doc/en/datetime.txt
* doc/en/dbstrux.txt
* doc/en/file.txt
* doc/en/garbage.txt
* doc/en/gnulice.txt
* doc/en/harbext.txt
* doc/en/hashes.txt
* doc/en/hb_api.txt
* doc/en/hb_apier.txt
* doc/en/hb_apifs.txt
* doc/en/hb_apigt.txt
* doc/en/hb_apiit.txt
* doc/en/hb_apiln.txt
* doc/en/hb_compa.txt
* doc/en/hvm.txt
* doc/en/idle.txt
* doc/en/input.txt
* doc/en/license.txt
* doc/en/macro.txt
* doc/en/menu.txt
* doc/en/misc.txt
* doc/en/rdddb.txt
* doc/en/rddord.txt
* doc/en/readme.txt
* doc/en/set.txt
* doc/en/strotype.txt
* doc/en/terminal.txt
* doc/en/var.txt
! Formatted: to start contents at column 9 which was the
existing layout for majority of files in doc/en.
Some contribs are using column 8 as the base.
hbQT can be fixed at the generator level. hbCT needs
rework to base at column 9. To shift to column 9 is
simple than shift to column 8.
QUESTION: which way should we go?
* src/rtl/hbdoc.prg
+ Added logic to detect in which column the actual
content starts and read it accordingly.
It uses the first content line as a base, so if
that one is wrong, the content will be read wrongly
and such NG sources should be fixed manually.
* On output it will always start content in column 8 (base 1).
* contrib/hbmysql/mysql.c
! MYSQL_REAL_ESCAPE_STRING() fixed taking wrong params.
Reported by Bacco, thanks!
* contrib/hbrun/pullext.prg
* contrib/hbrun/hbrun.prg
* contrib/hbrun/plugins.prg
* contrib/hbrun/headers.prg
* Formatting.
* contrib/hbrun/hbrun.prg
* contrib/hbrun/hbrun.hbp
+ contrib/hbrun/plugins.prg
+ Added plugin support.
+ Added hbnetio management console to hbrun, as plugin.
Use: "netio.<command> <params>" format to access it.
Or enter netio command domain with ".netio" and use
regular netio commands. Exit netio command domain with
"." command.
* package/winuni/mpkg_win_uni.bat
* package/winuni/mpkg_win_uni.nsi
* contrib/hbplist
- Stdalone hbnetio management console is not built or
included in distro anymore. Use hbrun.
* contrib/hbrun/hbrun.prg
* contrib/hbrun/hbrun.hbp
+ contrib/hbrun/headers.prg
* Moved headers to separate file.
* contrib/hbrun/pullext.prg
* Minor.
* contrib/hbnetio/utils/hbnetio/netioeng.prg
* contrib/hbnetio/utils/hbnetio/netiocon.prg
* Renamed entry function for console plugin.
+ contrib/hbnetio/utils/hbnetio/netioeng.prg
* contrib/hbnetio/utils/hbnetio/hbnetio.hbp
* contrib/hbnetio/utils/hbnetio/hbnetioc.hbp
* contrib/hbnetio/utils/hbnetio/netiocon.prg
* contrib/hbnetio/utils/hbnetio/netiocmd.prg
+ netio management client-side command handling moved to
a separate module and rewritten to act as a command
handler plugin. This makes it possible to move the
whole logic inside console hosts, f.e. hbrun.
* config/global.mk
* src/dynlib/Makefile
+ src/dynlib/2nd
+ src/dynlib/2nd/Makefile
* Changed so that _HB_BUILD_DYN_ST=yes now creates a separate,
secondary dll in ST mode, called harbourst/harbours.
* contrib/hbxbp/hbpprocess.prg
! Reworked: how command line parameters are passed to the appln.
* contrib/hbide/idebrowse.prg
! Fixed: Goto() usage was broken in ideDBU ( result of strict
parameter checking introduced lately ).
* contrib/hbide/ideharbourhelp.prg
! Tried: yet another time to cover case sensitivity in
"Document Viewer".
* contrib/hbide/idetools.prg
! Tweaked: to pass application parameters for new protocol.
* src/rtl/browse.prg
! Reversed some of the changes in previous commit.
Still I am trying to understand how a record can be
edited without RLock() ( only for lAppend == TRUE, it is OK ).
* harbour/src/rtl/hbsocket.c
* added HB_HAS_GETHOSTBYADDR to control access to gethostbyname()
function
* added alternative implementation of hb_socketGetHostName()
function when gethostbyname() is not available
* contrib/hbqt/qtcore/hbqt_init.cpp
* contrib/hbqt/qtgui/hbqt_init.cpp
* contrib/hbqt/qtnetwork/hbqt_init.cpp
! Fixed: to return GC Collectible pointers instead of raw ones.
TODO: add 3 more classes which are required to handle
Qt events. These methods will not work until then.
* contrib/hbqt/qtgui/qth/QBitmap.qth
* contrib/hbqt/qtgui/qth/QColor.qth
* contrib/hbqt/qtgui/qth/QComboBox.qth
% Cleaned: constructor functions were left in <Proto> section,
a result of an earlier version. Thanks Francessco to point it out.
* contrib/hbqt/qtcore/hbqt_pointer.cpp
* contrib/hbqt/qtcore/hbqt.h
+ Added int hbqt_IsObjectType( int iParam, int iType ).
[Francesco Perillo - with some of my mods]
* src/rtl/base64d.c
! Fixed TOFIX to handle too large result. Now it will RTE.
Please check me.
* src/rtl/hbrandom.c
* Formatting.
* src/rtl/space.c
* Fixed commented call.
* harbour/src/rtl/base64d.c
! fixed destination buffer size calculation - it was too small
! fixed to work with platform/compilers where 'char' is unsigned type.
Please NEVER use 'char' type in math calculation without explicit
'signed' or 'unsigned' specifier. On some platforms (i,e. MIPS Linux
ports or in all OpenWatcom builds) 'char' is unsigned type. I once
cleaned whole code and fixed all wrong places. I do not want to
repeat it - sometimes is hard to locate problematic places.
! fixed index to ASCII decode table verification - '{' was accepted
as valid base64 char.
BTW this code works only on ASCII based machines. It's not the
one code with such limitation in Harbour SVN anyhow it would be
good to mark such limitation - maybe someone will want to port
Harbour to some IBM mainframe machines.
% removed redundant code
* src/rtl/base64d.c
! Fixed crash when empty or non-string parameter was passed to HB_BASE64DECODE().
+ tests/base64.prg
+ Added base64 test suite. [Tamas]
* utils/hbmk2/hbmk2.prg
! Fixed regression in 2011-02-10 23:45 UTC+0100 Viktor Szakats,
in making .hbmk dir hidden when converting from custom DirBuild()
to core hb_DirBuild(). Due to typo the dir was not made hidden.
! Fixed to make .hbmk hidden regardless of casing (f.e. on MS-DOS).
* src/rtl/hbfilehi.prg
! Fixed HB_PATHNORMALIZE() recent change to strip double pathseps.
It was slashing ending pathsep too, which caused hbmk2 env detection
to die and not find libs.
NOTE: HB_PATHNORMALIZE() got very inefficient after this addition,
so if I may chose to restore stable versions from hbmk2 code.
; There are at least two remaining bugs in recent changes.
* utils/hbmk2/hbmk2.prg
! Readded REQUEST HB_FSETATTR. It was used in conditional
code, so it was not linked on *nix builds, causing
failure to run postinst.hbs.
* src/rtl/hbrandom.c
* Minor formatting.
* src/rtl/base64d.c
! HB_BASE64DECODE(): Forgot to return sized buffer in recently
added C version of this function.
; Please review and/or stree-test this function.
* package/harbour.spec
* Deleted reference to harbourmt.
; QUESTION: Is this line right?
Provides: %{name} harbour lib%{name}.so
[ %{name} is also 'harbour', so 'harbour' is there twice ]