* harbour/contrib/hbw32/dllcall.c
* minor cleanup in return values
* harbour/contrib/hbole/ole2.c
* cleaned casting in UNICODE conversions
* harbour/source/common/expropt2.c
* replicate CA-Cl*pper compile time optimization bugs:
"" $ <literString> => .T.
AT( "", <literString> ) => 1
CHR( 256 ) => ""
only when Harbour extensions (-kh) are not enabled, f.e.
in strict Clipper compatibility mode (-kc)
* harbour/utils/hbtest/rt_hvma.prg
* harbour/utils/hbtest/rt_str.prg
* updated to test Clipper and Harbour compile time modes in
the above situations
* harbour/common.mak
* harbour/source/rtl/Makefile
- harbour/source/rtl/strings.c
* harbour/source/common/hbstr.c
* moved hb_strEmpty() from RTL to COMMON library
* harbour/include/hbexprb.c
* harbour/include/hbexprop.h
* harbour/source/common/expropt2.c
+ added compile time optimization for EMPTY() function
; removed 'TODO: empty optimization' note
* harbour/source/rtl/itemseri.c
% compress trailing spaces during string item serialization
* harbour/include/hbapi.h
* harbour/source/vm/hashes.c
+ added hb_hashAddNew() - works like hb_hashAdd() but it adds item
only if new key is used
* harbour/source/vm/hvm.c
* use hb_hashAddNew() instead of hb_hashAdd() for HB_P_HASHGEN
I cannot revert the order of hash item during compilation because
it will also change the order of user expression evaluation.
* harbour/include/dbedit.ch
* harbour/source/rtl/dbedit.prg
+ added support for undocumented Clipper DE_APPEND mode - code
covered by HB_C52_UNDOC
% ignore K_MOUSEMOVE events to avoid flickering just like CA-Cl*pper
does
+ added support for cell positioning with mouse left key - CL53
compatible behavior covered by HB_COMPAT_C53 macro
* changed static function name dbEditCallUser() to CallUser() for
strict Clipper compatibility - some user function code may check
PROCNAME()
* some minor optimizations and fixes
* harbour/contrib/hbmzip/hbmzip.c
* indenting
* harbour/source/vm/hvm.c
* formatting
* harbour/include/hbwince.h
* harbour/source/common/hbwince.c
+ added SetFileAttributesA() for WinCE builds
* harbour/source/rtl/filesys.c
* replaced UNICODE translations for SetFileAttributes()
with direct call to SetFileAttributesA()
* harbour/include/hbapifs.h
* harbour/source/rtl/spfiles.c
* harbour/source/rtl/fstemp.c
* harbour/source/rtl/hbffind.c
* harbour/source/rtl/direct.c
* harbour/source/rtl/filesys.c
* changed internal representation for file attributes from USHORT
to ULONG
+ added support for POSIX permission attributes in .c code
; added some comments about used attribute translations which
should be cleand
* harbour/source/rtl/set.c
! do not add .prn extension to printer/extra filenames if file name
is one of well known device name: PRN, LPT[1-3], COM[1-9]
This code is enabled only for OS2 builds where it's necessary
but maybe MS-Windows/DOS users should think about adding it to
their builds too because sometimes also DOS/Win does not recognize
correctly device name when it has extension.
* harbour/include/hbdate.h
* harbour/source/common/hbdate.c
+ added hb_timeStampEncode()
* harbour/include/hbapifs.h
* harbour/source/rtl/filesys.c
+ added hb_fsSetFileTime()
+ added POSIX file attributes with some macros to convert Harbour
definitions into OS ones.
+ added initial version of hb_fsSetAttr() - work in progress, I should
finish it in the evening.
* harbour/contrib/hbmzip/hbmzip.c
* added setting file attribute in DJGPP builds
! fixed some small typos in OS2 builds reported by David
* harbour/source/vm/fm.c
* changed hb_xrealloc() to be ANSI-C realloc() compatible
* source/rtl/gtwvt/gtwvt.c
* contrib/gtwvg/gtwvg.c
! Restored previous change.
In Harbour, passing NULL to hb_itemPutC() is valid and
will result in an empty string being stored in an optimized way.
hb_itemPutCLPtr() should be used instead of hb_itemPutCPtr().
The GPF in question used to happen when setting the clipboard,
and it looks to happen inside the OS. I'm still investigating.
* contrib/hbapollo/tests/bld_b32.bat
* contrib/hbapollo/tests/bld_vc.bat
! Fixed external .lib name.
* source/rtl/hbffind.c
! Added workaround for PellesC 5.00.1 hang bug.
* config/w32/pocc.cf
% Removed unnecessary '-I' switches.
! Removed ws2.lib from liblist to make it link with PellesC 5.00.1
(where this lib is not available anymore).
* contrib/hbziparch/Makefile
! Fixed commented file in file list.
; This may fix some GNU-make problems regarding hbziparch.
; hbziparch may not work in RC2 GNU-make builds for this
reason.
* harbour-ce-spec
* harbour-w32-spec
* doc/whatsnew.txt
* include/hbver.h
* harbour.spec
* RC2 -> rc2
; We should use lowercase for 'RC' in the future, for consistency
with 'alpha', 'beta' (and with other projects too). It looks
smoother too.
* source/rtl/errorint.c
! hb_setGetCPtr( HB_SET_HBOUTLOG ) checked for NULL value.
I'm not sure if this is required in real life, so this may
be unnecessary safety.
* utils/Makefile
* Formatting.
* source/rtl/errorint.c
+ Internal error are now logged to hb_out.log (by default).
; This addition looks quite humble, yet very useful, please
test and comment it.
Credits to Randy Portnoff for the idea.
; First post-RC2, RC3/FINAL modification.
2008-07-03 22:15 UTC+0200 Viktor Szakats (harbour.01 syenar hu)
; Tagged: /tags/harbour-1.0.0RC2
* contrib/gtwvg/gtwvg.c
* source/rtl/gtwvt/gtwvt.c
! Changed the wat EXIT procedure works.
; The change is provided by Ron Pinkas so I have implemented as is.
Before also I was not finding any problems on Harbour but
appln was GPFing on Exit with GTWVG.
; TOCHECK: Viktor see if it resolves the EXIT problem you are reporting
* contrib/hbziparch/hbzipcom.cpp
* contrib/hbziparch/hbzipnew.cpp
! Two lines commented by mistake now reenabled.
Thanks Miguel.
* source/rtl/gtwvt/gtwvt.c
* Minor naming, formatting.
* harbour/contrib/xhb/Makefile
* harbour/contrib/xhb/common.mak
- harbour/contrib/xhb/hbchksum.c
* removed HB_CHECKSUM() code - it's not necessary
* harbour/contrib/xhb/xhbfunc.c
+ redirected HB_CHECKSUM() to HB_ADLER32()
* harbour/source/rtl/gtwvt/gtwvt.c
! fixed WINCE builds. It was only for MiGWCE which partially emulates
GetSystemMenu() but probably other builds will report that this
function is missing.
If possible please test if current Harbour application can be
executed in real WinCE environment.
* harbour/make_deb.sh
* updated contrib library list
* harbour/contrib/hbmysql/mysql.c
! fixed compilation for older MYSQL versions
* harbour/contrib/gtwvg/gtwvg.c
* harbour/contrib/gtwvg/wvgutils.c
! fixed UNICODE builds
+ harbour/config/none.cf
+ added dummy header file for GNU make to avoid errors on unsupported
platforms
* harbour/contrib/hbw32ddr/Makefile
* harbour/contrib/hbmysql/Makefile
* harbour/contrib/hbodbc/Makefile
* harbour/contrib/hbwhat32/Makefile
* harbour/contrib/hbtpathy/Makefile
* harbour/contrib/hbw32/Makefile
* harbour/contrib/hbole/Makefile
* harbour/contrib/hbapollo/Makefile
* harbour/contrib/hbfbird/Makefile
* harbour/contrib/hbziparch/Makefile
* harbour/contrib/hbcurl/Makefile
* harbour/contrib/hbhpdf/Makefile
* harbour/contrib/rddado/Makefile
* harbour/contrib/gtwvg/Makefile
* harbour/contrib/hbpgsql/Makefile
* harbour/contrib/rddads/Makefile
* harbour/contrib/hbfimage/Makefile
* harbour/contrib/hbgd/Makefile
* harbour/contrib/hbgf/hbgfw32/Makefile
* harbour/contrib/hbgf/hbgfos2/Makefile
* harbour/contrib/hbgf/hbgfgtk/Makefile
* harbour/contrib/hbtip/Makefile
* harbour/contrib/hbbmcdx/Makefile
* updated to not generate errors for unsupported builds
* source/rtl/hbinet.c
% Recently added code fixed to use HB_ERR_FUNCNAME.
! Quick fix to recently added code to compile with MSVC.
Please review, it seem that get/setsockopt() 4th parameter
is void* in Linux but char* in Windows.
* harbour/harbour-ce-spec
* harbour/harbour-w32-spec
* define whole contrib library list for new contrib/Makefile
+ added header files to respect differences between platform
native and Windows only headers
* harbour/harbour.spec
* define whole contrib library list for new contrib/Makefile
* divided libraries which needs external references into
separated packages
! removed unnecessary dependences in binaries rebuild in shared
mode
* harbour/contrib/hbodbc/odbc.c
* pacified warnings
% minor optimization
* harbour/contrib/hbcurl/hbcurl.c
* harbour/contrib/hbfbird/firebird.c
* harbour/source/vm/extrap.c
* casting to pacify warnings
* harbour/contrib/gtwvg/gtwvg.c
! fixed pointer comparison - C uses different precedence for !
operator then Clipper/xbase
* harbour/source/rtl/hbinet.c
! fixed GPF HB_INET[GS]ET{SND,RCV}BUFSIZE() when wrong
socket parameter is passed. Please remember that after
RT error the control is returned to application.
% removed any hardcoded limits for size of data passed in
single read/write call during normal stream operations
- removed iSndBufSize/iRcvBufSize
* include/hbapi.h
* source/rtl/set.c
* source/vm/fm.c
! Fixed _SET_HBOUTLOG, _SET_HBOUTLOGINFO handling in fm.c.
hb_setget*() functions cannot be used here as the set
system is deinited at this point. So local buffers are
holding the values.
* include/set.ch
* include/hbset.h
* source/rtl/set.c
* source/vm/fm.c
* source/vm/extrap.c
+ Added: Set( _SET_HBOUTLOGINFO[, <cValue>] ) -> <cOldValue>
Default value: ""
This user defined text will be included in each hb_out.log
messages. This way it's possible to include custom information
in these entries to help identify and locate them.
! Fixed a few string not marked with HB_I_() translation
marker.
* contrib/hbtip/client.prg
* contrib/hbtip/ftpcln.prg
* contrib/hbtip/httpcln.prg
* contrib/hbtip/mail.prg
* contrib/hbtip/sendmail.prg
+ Added methods setget to interrogate buffer size send/recive
METHOD InetRcvBufSize( SocketCon, nSizeBuff )
METHOD InetSndBufSize( SocketCon, nSizeBuff )
+ Added data members to assign default buffer sizes
DATA nDefaultRcvBuffSize
DATA nDefaultSndBuffSize
+ Asigned default buffer size to 64kb only for FTP transfer, previous to open sockets
::nDefaultSndBuffSize := 65536
::nDefaultRcvBuffSize := 65536
* Fixed port ftp protocol.
* source/rtl/hbinet.c
* now works with default system buffer, for example 8kb at W2000. instead of harcoded 1400
* harbour/contrib/hbmsql/msql.c
! changed msqlGetErrMsg( NULL ) => msqlErrMsg
* harbour/contrib/hbsqlit3/hbsqlit3.c
! include harbour header files after sqlite3.c which needs some
extra sets for system header files
* harbour/contrib/hbgf/hbgfw32/win32.c
! removed wrongly used TEXT( hb_parc( 1 ) ) macro. The TEXT()
macro can be used _ONLY_ for literal strings.
* harbour/contrib/hbgf/hbgfgtk/Makefile
* harbour/contrib/hbgf/hbgfgtk/dispatch.c
* harbour/contrib/hbgf/hbgfgtk/msginfo.c
* harbour/contrib/hbgf/hbgfgtk/form.prg
* harbour/contrib/hbgf/hbgfgtk/creawin.c
! fixed compilation in Linux
* harbour/source/rtl/gtclip.c
* pacified warning
* source/common/hbver.c
* Changed version information layout:
"Harbour a build x.y-z" -> "Harbour x.y.za" format.
* contrib/gtwvg/gtwvg.c
! Fixed compile error. (commented line, please check this code)
[ pGT->iLocalGTHandle = pWVT->iHandle; ]
* contrib/gtwvg/wvtutils.c
* contrib/gtwvg/wvtcore.c
* contrib/gtwvg/wvtpaint.prg
* contrib/gtwvg/wvtclass.prg
% hb_arraySet( ..., hb_itemPut*() ) -> hb_arraySet*( ... )
* if() -> iif()
* != on strings to IS*() macros.
; TODO: I'd suggest to change "WVT" references to "WVG"
to avoid confusion with core WVT. At least in those places
which wouldn't break compatibility (like source names).
If there is no objection I can do it.
* source/rtl/gtwvt/gtwvt.c
* Minor cleanup.
* source/rtl/gtwvt/gtwvt.c
* Slightly changed the way CLOSE button works.
Now the close button, if enabled, will always
force a shutdown. So this setting is made independent
of SetCancel(). I choose this because there might
be cases when we need to use <Alt+C> in app code, yet
we want to allow closing the window. Previously it was
also easy to create confusing scenarios by using various
combinations of HB_GTI_CLOSABLE + SetCancel(). Another
kind of fix - without the advantage above - would be
to fully sync SetCancel() with HB_GTI_CLOSABLE.
* contrib/hbtpathy/tplinux.c
! Fixed embedded comments in Linux code.
* contrib/hbziparch/hbziparc.h
! Fixed header casing.
* source/rtl/tgetlist.prg
! Fixed Settle() calls.
! Removed type constraint from ::nLastExitState.
(this value may be of any type, even in TGet())
* Formatting.
* source/rtl/getsys.prg
* source/rtl/tgetlist.prg
! Fixed ReadModal() for C5.2 mode to not accept a
(BTW unused) nPos parameter. This could cause an
RTE in Harbour if ReadModal( <number> ) was used,
with HB_COMPAT_C53 turned off. Default build was
not affected.
+ Added hb_GetReadVar( <oGet> ) -> <cVariableName>
to get the name of a GET variable in uppercase
and including the subscripts.
Same as existing HBGetList():GetReadVar() on the
active GET object.
* include/hbapierr.h
* source/rtl/errorapi.c
* source/rdd/hbsix/sxtable.c
* contrib/hbct/charonly.c
* contrib/hbct/charevod.c
* contrib/hbct/charone.c
* contrib/hbct/pos1.c
* contrib/hbct/ascpos.c
* contrib/hbct/token1.c
* contrib/hbct/atnum.c
* contrib/hbct/count.c
* contrib/hbct/replace.c
* contrib/hbct/ctpad.c
* contrib/hbct/justify.c
* contrib/hbct/remove.c
* contrib/xhb/hbxml.c
* contrib/hbmzip/hbmzip.c
* contrib/hbtip/utils.c
* Changed remaining &hb_errFuncName -> HB_ERR_FUNCNAME
+ Added compatibility comments.
! Fixed hb_errFuncName value (changed to 1 to be the
same as HB_ERR_FUNCNAME).
; NOTE: 3rd party developers are encouraged to use
HB_ERR_FUNCNAME instead of hb_errFuncName.
There is no change in functionality.
[TOMERGE 1.0.0RC1]
* source/rtl/gtwvt/gtwvt.c
- Removed HB_NOSTARTUPWINDOW link time GTWVT window
hiding option.
; For the same effect, but with the advantage that the
screen output won't slow the application at all, and
that behaviour is controllable from the command line
and/or at link time, please use gtgui.lib.
With GTGUI the application window is neither created
nor updated, while GTWVT will create the window,
update the window, but it will be fully invisible with
no way to unhide. Clipboard and sound generation works
in both cases.
For 100% similar end-user experience as the old hack:
- link gtgui.lib
- replace ANNOUNCE HB_NOSTARTUPWINDOW with
ANNOUNCE HB_GT_GUI_DEFAULT
- add REQUEST HB_GT_GUI
to your application.
* contrib/hbwhat32/whatutil.prg
* contrib/hbwhat32/wincomm.prg
* contrib/hbwhat32/wincore.prg
* contrib/hbwhat32/windebug.prg
* contrib/hbwhat32/winerror.prg
* contrib/hbwhat32/winini.prg
* contrib/hbwhat32/winrbar.prg
* contrib/hbwhat32/wintabs.prg
* contrib/hbwhat32/wintbar.prg
* Some .prg level code cleanup. (= operators,
if(), <> -> !=). No actual problem found.
* source/rtl/gtwvt/gtwvt.c
+ Refreshing whole screen after palette change.
This replaces the previous method which had some
side effects.
* source/vm/fm.c
* source/vm/extrap.c
* Changed "Harbour" to "Application" in user visible
screen/log messages.
* contrib/hbwhat32/_winfont.c
! Fixed typo in previous commit.
* source/rtl/gtwvt/gtwvt.c
! Removed PutChar override. This was added along the
palette support, but I'm afraid we'll need to find
an alternative solution, as this change caused an
huge amount flickering on every screen update,
essentially nilling all screen change buffering
efforts.
; TOFIX: Solve realtime palette change in an
alternative way.