* include/hbgtinfo.ch
* src/rtl/hbgtcore.c
* src/rtl/gtdos/gtdos.c
* src/rtl/gtwin/gtwin.c
* src/rtl/gtxwc/gtxwc.c
* src/rtl/gtcrs/gtcrs.c
* src/rtl/gtstd/gtstd.c
* src/rtl/gttrm/gttrm.c
* src/rtl/gtos2/gtos2.c
* src/rtl/gtsln/gtsln.c
* src/rtl/gtpca/gtpca.c
* src/rtl/gtwvt/gtwvt.c
* contrib/hbct/ctwin.c
* contrib/gtwvg/gtwvg.c
* contrib/gtwvg/wvggui.c
* contrib/gtalleg/gtalleg.c
* contrib/hbrun/hbrun.prg
* tests/wvt_fs.prg
* examples/gtwvw/gtwvw.c
* Renamed HB_GTI_FULLSCREEN to HB_GTI_ISSCREENPOS
HB_GTI_FULLSCREEN is now deprecated and will be deleted in future
version of Harbour, use the new name instead.
* Renamed HB_GTI_FULLSCREEN to HB_GTI_ISFULLSCREEN
in context of GT window being fullscreen on physical display
recently added in 2011-02-26 20:07 UTC+0100 Viktor Szakats
; If someone has further name suggestions, pls tell.
* src/rtl/hbgtcore.c
* Setting defaults for HB_GTI_ISFULLSCREEN and HB_GTI_ALTENTER.
* include/hbgtinfo.ch
* src/rtl/gtwvt/gtwvt.h
* src/rtl/gtwvt/gtwvt.c
+ tests/wvt_fs.prg
+ Added ability to switch GTWVT screen into fullscreen. See example
for usage. Patch by Aleksander Czajczynski. Many thanks!
Pls test.
* contrib/hbqt/qtcore/hbqt_pointer.cpp
! Fixed bug introed in 2011-02-24 18:03 UTC-0800 Pritpal Bedi
where char array declaration used runtime size value.
Replaced with hb_strdup(). In previous commit I've also fixed
an strcpy() usage. strcpy() is strictly forbidden in Harbour
codebase. Hopefully it fixes MSVC build failure.
* src/rtl/fscopy.c
! Use hb_fsReadLarge()/hb_fsWriteLarge().
+ Added TODO to use hb_fileExtOpen().
! Deleted FXO_DEFAULTS after carefully checking there is no
more "extra" feature of hb_fsExtOpen() enabled in this specific
scenario.
* config/postinst.hbs
* config/global.mk
* config/bin.mk
* config/darwin/gcc.mk
* config/darwin/icc.mk
* config/darwin/clang.mk
* config/linux/gcc.mk
* config/dyn.mk
* config/os2/gcc.mk
* Trying to cleanup the harbour dynlib name situation.
Here's the plan (which is similar to what's used in contrib area):
win, wce: harbour-21[-subtype][.dll/.lib]
dos, os2: harbour[.dll|.???]
darwin:
libharbour.2.1.0.dylib
libharbour.2.1.dylib -> (symlink) [compatibility level]
libharbour.dylib -> (symlink)
*nix:
# libharbour.s?.2.1.0
# libharbour.s?.2.1 -> (symlink) [soname]
# libharbour.s? -> (symlink)
; It's possible it's broken now. Pls test linux/gcc and darwin.
'install' was not tested.
; TODO: Clean variable usage, there is some redundancy, plus
some places where current solution is not generic, f.e.
using HB_VER_*, HB_DYNLIB_BASE vs. HB_DYNLIB_NAME, etc.
* harbour/src/rtl/fscopy.c
* Reverted 2011-02-22 12:27 UTC+0200 Mindaugas Kavaliauskas
which made behavior inconsistent with rest of similar
functions like FERASE(), FRENAME(), which also don't throw
RTE if bad parameter is passed, but return FERROR()
and failure instead.
Also restored _SET_DEFAULT handling to not create a special case
compared to __COPYFILE() behavior, ia. some features like
FXO_SHARELOCK are still enabled while FXO_DEFAULT is not).
Pls rewrite it using hb_fsOpen()/hb_fsCreate() if that behavior
bothers you.
* harbour/src/rtl/fscopy.c
* added runtime error for HB_FCOPY() bad param types only
* made a function HB_FCOPY() a pure file system function
does not dependent on _SET_DEFAULT setting
; File open mode is not altered a avoid any influence on OS/2
behaviour if source and destination files are the same (see
ChangeLog entry at 2009-11-24 16:57). I guess, hb_fsExpOpen()
still can be changed to hb_fsOpen() with FO_EXCLUSIVE,
FO_CREAT, and FO_TRUNC but I'm unable to test it, so, I leave
current code.
* src/rtl/fscopy.c
* Reverted my recent changes.
; Pls read past ChangeLog entries as to why this function
is implementet the way it is make changes which don't break
f.e. OS/2. Not throwing an RTE from this function is
intentional.
* Added parantheses to recent patch to hb_fsCopy().
* src/rtl/fscopy.c
! HB_FCOPY(): RTE when either of the parameters is not string.
- Deleted FXO_DEFAULTS from open flags, so HB_FCOPY() and hb_fsCopy()
don't depend on _SET_DEFAULT setting anymore.
* harbour/contrib/hbwin/axcore.c
* return NIL instead of runtime error if failed to obtain
connection point
; Please test
* harbour/src/rtl/fscopy.c
* added error check for read operation
* src/rtl/filesys.c
+ fs_win_set_drive(): Setting SEM_FAILCRITICALERRORS before
SetCurrentDirectory() call to avoid screen msg in some error
scenarios. Thanks to vbdasc (final patch has two modifications,
so pls retest it).
+ hb_fsChDir(): Applied similar logic as above.
* Using FALSE instead of 0 in both function above.
* contrib/hbssl/evppkey.c
* Comment.
* contrib/hbrun/hbrun.prg
+ Added GTWVT on win builds.
* src/rtl/gtcrs/gtcrs.c
! Typo in comment.
* src/rtl/errapi.c
! Deleted old TOFIX most pbly not relevant anymore.
* tests/testid.prg
! Deleted old TOFIX and formatting.
* src/rtl/hbrandom.c
! Typo in comment. [Tamas]
+ Enabled using DBL_EPSILON in hb_random_num() on Windows
platform, except bcc, which - according to the comment
from original author - has some problems with this value.
* package/harb_win.rc
* contrib/hbrun/hbrun.rc
* Modified manifest inclusion to be friendly with all Windows
compilers (ie. not break them with their own headers and
predefined macro definitions).
* 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.
* 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
* 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.
* 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.
* 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.
* 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
* 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]
* 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.
- src/dynlib/mt
* src/dynlib/Makefile
* src/vm/maindllp/dllpcode.c
* package/winuni/mpkg_win_uni.bat
* package/winuni/mpkg_win_uni.nsi
* utils/hbmk2/hbmk2.prg
* config/postinst.hbs
* config/global.mk
* config/bin.mk
* Changed to have only one harbour dll, and this one with MT support.
This means the old MT mode dll named harbourmt/harbourm is no more
and the old ST mode dll vanished also. This will result in much
cleaner layout of Harbour binary tree, smaller distribution size,
and unambigous dll tree when linking an app with dll multiple
components (f.e. contribs).
If someone wants to build an ST mode harbour dll, she can use the
internal build-time option: _HB_BUILD_DYN_ST=yes
; Please test.
; TODO: Do a final cleanup on internal variable names to not have "ST" in them.
* harbour/src/rtl/tbrowse.prg
! set default minimal number of visible rows to ::rowpos() when
::configure() method is called - clipper compatibility fix.
* src/common/hbverdsp.c
+ Instead of adding "(UNICODE)" marker in build info for UNICODE
builds, now it will add "(WINANSI)" for non-UNICODE builds.
* contrib/hbnetio/utils/hbnetio/netiosrv.prg
* Using more hb_StrFormat()
* contrib/hbnetio/utils/hbnetio/netiocon.prg
* Tweak to one cmd help.
* utils/hbrun/hbrun.prg
* Formatting.