* 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.
* harbour/include/hbrddcdx.h
* harbour/source/rdd/dbfcdx/dbfcdx1.c
! fixed casting for indexes with key length greater then 196 bytes
created on tables with record number smaller then 256. In such
case if keys have equal value then after decoding they may need
more then 32767 bytes and casting to SHORT gives negative indexes.
Thanks to Saulius Zrelskis for example.
% changed some SHORT to INT to reduce runtime overhead
* harbour/source/vm/runner.c
+ added support for passing non string parameters to .HRB INIT/<main>
procedures/function
+ added automatic destructors for .HRB modules
; TOFIX: add protection against possible double executing of
EXIT procedures in .HRB modules in HVM quit phase
* source/compiler/genhrb.c
* contrib/hbtip/utils.c
! Changed octal values in strings (and chars too) to make
these functions work with Pelles C 5.00.1.
* source/vm/arrayshb.c
* contrib/xhb/xhbfunc.c
! Moved hb_ArrayID() Harbour level function to xhb.lib.
; NOTE: This function is not compatible with x64 architecture.
* source/vm/extrap.c
! Warning fixed.
* contrib/hbmysql/mysql.c
* contrib/hbmysql/tmysql.prg
! sqlListF() return value changed to pointer from numeric.
Now compatible with Win64.
INCOMPATIBLE.
* contrib/hbw32/w32_prn.c
! Warning suppressed (pointer to BOOL conversion).
* contrib/hbw32/dllcall.c
* contrib/hbhpdf/harupdf.c
* contrib/hbfimage/fi_winfu.c
* contrib/hbgf/hbgfw32/win32.c
! Fixed several pointer (handle) passings to be 64bit compatible.
* contrib/hbw32/w32_reg.prg
* Minor formatting.
; TOFIX: There are still some PellesC 64bit warnings to be fixed.
(posted separately)
* 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).
* source/pp/hbpp.c
* source/pp/ppcore.c
* source/pp/pplib.c
! Fixed bug introduced in r8836, so that now __HARBOUR__
will again be #defined when 'harbour /u' switch is used.
Thanks Randy.
* 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.
* source/vm/extrap.c
+ Added Windows GPF detailed information dump (with some
modifications) provided by Mindaugas Kavaliauskas.
Many thanks.
; It would be very nice to have similar for Linux, OS/2,
Darwin.
* tests/extend2.c
* source/debug/dbgentry.c
* contrib/hbodbc/odbc.c
* contrib/hbw32/tprinter.c
* contrib/hbziparch/hbziparc.c
* contrib/hbziparch/hbzipnew.cpp
* contrib/hbpgsql/postgres.c
! Changed strcpy() -> hb_strncpy()
! Changed strcat() -> hb_strncat()
! Some possible buffer overruns fixed along the way in hbziparch.lib
! Fixed some filename buffer sizes in hbziparch.lib
; TOFIX: There are still some remaining strcpy()/strcat()
calls in Harbour code:
core: dbgentry.c, hbwince.c
contrib: hbnf, hbw32, hbwhat32, hbtip
foreign code: zlib, sqlite2/3
Not all of these are necessarily bugs (but it's
difficult to know without checking each).
* 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/source/pp/ppcore.c
! fixed GPF in expressions like:
#command CMD => #translate abc => \
problem located by Ron in xHarbour
* harbour/source/pp/hbpp.c
* extended string escaping to also quote " and ? (possible trigraph)
* harbour/source/compiler/gencc.c
; comment formatting
* include/hbstdgen.ch
* include/hbver.h
* include/hbdefs.h
* source/pp/pplib.c
* source/pp/ppcore.c
* source/pp/hbpp.c
* source/common/hbver.c
* source/common/hbverdsp.c
* contrib/hbsqlit3/hbsqlit3.c
* contrib/examples/pp/hbppdef.h
* Changed .c level __HARBOUR__ to have the same value
as the existing .prg level one.
* PP now gets the __HARBOUR__ define directly from the .c
level instead of generating it locally.
; QUESTION: Should or shouldn't we change __HARBOUR__
to contain revision number too? (0x0100 -> 0x01000)
This would allow for a greater level of development
opportunities between minor revisions, more "agile"
development.
* include/hbpp.h
* source/pp/ppcore.c
- Two __XHARBOUR__ guards removed.
* 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]