* harbour/src/rtl/fieldbl.prg
! fixed FieldBLock() and FieldWBLock() to be CA-Cl*pper compatible
(they should return NIL for field names which are not valid
identifiers and generate RTE during evaluation if field does
not exist)
* harbour/contrib/rddads/ads1.c
+ added DBFIELDINFO( DBS_ISNULL, ) support
; ADT tables support NULL values, but ADS returns ISNULL=.T. for
all empty CDX values.
; This modification does not alter FIELDGET() values
* harbour/contrib/hbmemio/memio.c
* pacified MSVC warnings
* contrib/hbwin/mapi.c
! Disabled UNICODE support for WIN_MAPISENDMAIL(). Apparently this
is called "Simple MAPI" interface by Microsoft, it's deprecated
and _doesn't_ support U16 UNICODE. UTF-8 is supposed to be supported
to some extent, but in a weird way, so I'm leaving the implementation
to interested users. I recommend everyone to use hbcurl + hbtip for
sending e-mails.
* contrib/hbqt/hbqt_hbmk2_plugin.hbs
! Modified: hbQT class framework where any method which was
returning NIL ( void ) now returns reference to SELF.
This means code like:
oWidget:setTitle( "blah..." )
oWidget:setIcon( "this..." )
can be written as:
oWidget:setTitle( "blah..." ):setIcon( "this..." )
After long I updated my sources. A lot has been changed.
The above change needes hbQT to be rebuild but I cannot
figure-out how to tweak it. I had to clean build Harbour
to get above changes into effect.
* contrib/hbtip/sendmail.prg
+ HB_SENDMAIL() function changed to contain only communication logic,
mail payload assembly moved to new function:
HB_MAILASSEMBLE( <cFrom>, <xTo>, <xCC>, <cBody>, <cSubject>,
<aFiles>, <nPriority>, <lRead>, <cReplyTo>,
<cCharset>, <cEncoding> ) -> <cString>
This makes it easy to convert apps to use different mail
sending backends like, f.e. hbcurl/libcurl.
This separation makes it much easier to understand what
the code does, and it makes it easier to fix/extend it.
* harbour/src/rtl/cdpapi.c
* removed dummy assignment
* harbour/src/lang/msgpl852.c
* harbour/src/lang/msgplmaz.c
* harbour/src/lang/msgpliso.c
* harbour/src/lang/msgplwin.c
! fixed one message translation
* harbour/config/dos/watcom.mk
* harbour/config/win/watcom.mk
* harbour/config/linux/watcom.mk
* harbour/config/os2/watcom.mk
* disable explicitly some Open Watcom warnings in 3rd party code
which we can safely ignore when HB_BUILD_WARN='no'
* harbour/utils/hbmk2/hbmk2.prg
* disable explicitly some Open Watcom warnings in 3rd party code
which we can safely ignore when warning level is low
* harbour/contrib/hbssl/hbssl.c
! fixed HB_SSL_READ_ALL() and HB_SSL_READ_LINE() to not call
hb_socketSelectRead() with wrong socket descriptors - it was
causing GPF on some platforms
* use SSL_get_rfd() instead of SSL_get_fd() to extract socket
read descriptor
* contrib/hblzf/hblzf.c
% Removed unnecessary casts readded in last commit.
hb_parns() returns HB_SIZE, so casting it to '( HB_SIZE )'
adds nothing.
* contrib/hbsqlit3/hbsqlit3.c
* Reformatted to Harbour standard using uncrustify tool.
* contrib/hblzf/hblzf.c
! Fixed the algorithm used in HB_LZF_COMPRESSBOUND(), HB_LZF_COMPRESS()
+ contrib/hblzf/tests/test2.prg
+ added yet another simple test for HB_LZF_[DE]COMPRESS()
* src/rtl/gtwin/gtwin.c
+ Attempt to enable HB_GTI_PALETTER support for MSVC 2005/2008
combined with Longhorn SDK. (also reverted prev change)
Please retest in above environments, plus old MSVC and
BCC 5.9.
* config/hbc.cfg
+ More tweaks to make it Harbour-ready.
* src/rtl/gtwin/gtwin.c
! Disabled HB_GTI_PALETTE support for MSVC 2005/2008
versions combined with certain (older) SDK versions.
The symptom is missing NDDI_* detection support, yet
present CONSOLE_SCREEN_BUFFER_INFOEX structure.
(Most pbly SDK 6.x. SDK 7.0a is fine)
Thanks to Andi for the tests.
* config/hbc.cfg
+ Few tweaks to make it more Harbour compliant.
F.e. for hblzf.c it now generated perfect result.
* contrib/hblzf/hblzf.c
* contrib/hblzf/tests/test.prg
! Added missing EOL at EOF.
! Restored my formatting fixes from previous commits.
! Refixed wrong formatting. (for the ~5th time)
- Deleted synonym added in previous commit.
I suggest to write a few words of reasoning for
changes not having obviously apparent reason.
It's brand new lib, so we should decide about _one_
(the best) initial name and stick to it. Let's use
synonyms if we later find out that we did some
mistakes in the past, or other special occasion.
* src/rtl/gtwin/gtwin.c
+ Added HB_GTI_PALETTE support to GTWIN for all non-msvc
compilers.
(solution is hackish so it may need revision as future
non-msvc, non-watcom compiler versions implement this
feature in their own WinAPI headers.
* INSTALL
+ Minor detail to HB_BUILD_WINUNI. Moved it's position towards
end of option list.
+ Added some clarification to HB_BUILD_CONTRIB=no <...>
option.
* contrib/hbqt/hbqt_hbmk2_plugin.hbs
+ Added extra error message when .uic file is empty or
unreadable.
* config/global.mk
* config/rules.mk
* contrib/hbpost.hbm
* INSTALL
+ Renamed HB_BUILD_UNICODE to HB_BUILD_WINUNI.
Reasons many-fold, first it makes it clear this is a Windows
only setting, second it makes room for future UNICODE
setting which may mean a native UNICODE Harbour HVM,
third is to try to clear up the wide misunderstandings
surrounding this setting (several users thought this
will enable general UNICODE support in Harbour).
+ Extended/changed description of option HB_BUILD_WINUNI,
explaining its purpose better, giving more precise details
for WinCE builds and builds on Win9x/ME hosts.
; INCOMPATIBLE: If you use this setting, rename it on
your system. Note1: You don't have to set this
when doing WinCE builds (it's ignored).
Note2: Try UNICOWS, instead of overriding
this setting. It works.
* contrib/hblzf/tests/test.prg
* contrib/hblzf/hblzf.c
! Turns out none of the LZF_[DE]COMPRESS() functions are
pure wrappers. Readded HB_ prefix to both.
* contrib/hblzf/tests/test.prg
* contrib/hblzf/hblzf.c
* contrib/hblzf/hblzf.hbp
+ contrib/hblzf/hblzf.ch
* Re-renamed HB_LZF_*() pure wrapper functions to LZF_*().
% Deleted unnecessary HB_SIZE casts.
! Fixed formatting to Harbour standard in new code.
! Added HB_ prefix to locally rolled macros.
+ Moved locally rolled macros to separate .ch file.
! Fixed test to use hblzf.ch instead of repeating macro definitions.
; TOFIX: errno.h. Replace with HB_LZF_* values?
* tests/wvtext.prg
! Fixed -w3 warnings.
* contrib/hblzf/hblzf.c
* contrib/hblzf/tests/test.prg
+ Changed delta and buffer size settings to be extra parameters
in compress/decompress calls instead of rolling separate setter/getters
and storing them in TSD.
- harbour/contrib/hbwin/oleinit.c
* removed old OLE initialization and cleanup code which was working
only for main thread
* harbour/contrib/hbwin/axcore.c
* harbour/contrib/hbwin/olecore.c
* harbour/contrib/hbwin/hbwin.hbp
* harbour/contrib/hbwin/hbolesrv.c
* harbour/contrib/hbwin/legacyco.c
+ added new OLE init/exit code which is thread oriented
WARNING: now OLE is initialized when thread executes first time
one of Harbour OLE functions not at application startup.
C code which uses OLE without calling any Harbour PRG
level OLE function should initialize OLE for each thread
calling hb_oleInit() - it's very fast function so it can
be called without noticeable overhead. Please remember
that such initialization should be done for each thread.
Please test it - I do not have access to MS-Windows computer now
so I cannot make any test myself.
- contrib/3rd/sqlite3/sqlite3ext.h
+ contrib/3rd/sqlite3/sqlite3x.h
- contrib/3rd/sqlite3/sqlite3.dif
* contrib/3rd/sqlite3/sqlite3.hbp
! Fixed original source URL to point to new version.
! Fixed to rename newly added header with long filename to 8.3.
And this pretty much defeats its whole purpose, and
I can't see a reson to host this file in SVN,
sincet the sole purpose of this locally hosted source is
to serve as dependency for _Harbour sources_. Other non-Harbour
sources should not use this source, therefore hosting sqlite3ext.h
has no point until Harbour SVN itself needs it. (and in such
case our own code should refer to it using short filename)
! Updated .dif, which means deletion, since sqlite team
applied this patch.
* contrib/hblzf/hblzf.c
* contrib/hblzf/tests/test.prg
! Rearranged to not have code after hb_err*() call.
% Deleted HB_IS*() checks before hb_stor*() call. (unnecessary)
! Fixed formatting to comply with Harbour style. Pls don't
reformat it with local style.
+ Added TOFIX: eliminate static vars for MT compliance
+ Added TOFIX: eliminate reliance on errno.h, as it's not present on
some systems.
* Renamed HB_LZF_DECOMPRESS()/HB_LZF_COMPRESS() to not have HB_
prefix. (HB_ prefix is only needed for functions which are not
strict wrappers)
! Fixed HB_LZF_DELTA(), HB_LZF_BUFFERSIZE() to only set settings
when parameter was passed. To reset to default value: pass NIL.
This makes it possible to read these values without resetting them.
! Fixed LZF_DECOMPRESS() to allocate space for termination byte,
this also fixes allocating zero bytes when empty string is passed.
* contrib/hblzf/hblzf.hbp
* Minor formatting.
* INSTALL
! Restored my latest change. Please ALWAYS update before commit.
(and needless to say, work in local SVN sandbox, instead of
copying in changes from elsewhere)