* contrib/hbwin/hbwin.ch
* contrib/hbwin/hbwin.hbx
* contrib/hbwin/wapi_winuser_2.c
+ added PRG wrapper
wapi_MessageBoxTimeout( <phWnd>, <cText>, <cCaption>, ;
<nType>, <nLangId>, <nTimeout> )
-> <messageBox_results> | WIN_MB_TIMEDOUT
to undocumented MS-Windows function MessageBoxTimeout().
This function exists in all MS-Windows versions and is used internally
by MessageBox() and MessageBoxEx() with 0xFFFFFFFF timeout.
* contrib/hbwin/win_svc_2.c
* src/common/hbfopen.c
! fixed POCC and XCC builds
* src/pp/ppcore.c
! fixed line numbering in unclosed extended block
* interrupt extended block processing if it contains internal
FUNCTION or PROCEDURE declaration
* include/hbcompdf.h
* src/compiler/complex.c
* src/compiler/harbour.y
* src/compiler/hbmain.c
! fixed possible GPF when FUNCTION/PROCEDURE starts in unclosed
control structure - thanks to Abe Buchinger for information
about the problem
* report all unclosed control structures when FUNCTION/PROCEDURE starts
* src/compiler/harbour.yyc
* src/compiler/harbour.yyh
* regenerated
* contrib/hbmemio/memio.c
! fixed FO_TRUNC attribute in MEM: file IO - thanks to Miroslav Georgiev
for information about the problem
* include/hbgtinfo.ch
* src/rtl/gtwvt/gtwvt.h
* src/rtl/gtwvt/gtwvt.c
+ added new hb_gtInfo() action HB_GTI_SYSMENUADD
It allows to add new items to window system menu which
selected add defined by user key code into keyboard queue, i.e.
hb_gtInfo( HB_GTI_SYSMENUADD, HB_K_MENU, "Settings" )
* In WinCE builds use DeleteMenu() + AppendMenu() instead of
missing ModifyMenu()
! pacified warning in non UNICODE builds
* src/compiler/hbcomp.c
! revert an accidental sync with 3.4 resulting in .prg source
filenames being included in the compiled source only in debug mode.
It's now restored to have these at all times.
The comment typo in the same line remains synced.
Ref: https://groups.google.com/d/msg/harbour-devel/7c-EyPWxjfg/ei84cbsvAQAJ
* bin/3rdpatch.hb
; 2017-08-24 19:43 UTC Viktor Szakats (vszakats users.noreply.github.com)
+ add support for .tar.lz/.tlz archive format
; 2017-02-13 12:05 UTC Viktor Szakats (vszakats users.noreply.github.com)
* remove enforcing 8+3 naming on vendored sources.
This may break MS-DOS builds where original long source filenames
get restored and also for new components. one solution is to use
non-vendored builds of the affected components, where this problem
should be solved.
The upside is that the patches become simpler and vendored code
won't as much diverge from originals and their forks/copies.
It generally makes working with these vendored sources much less
cumbersome.
; 2017-01-04 01:04 UTC Viktor Szakats (vszakats users.noreply.github.com)
+ make sure to keep original timestamps while copying and
doctoring files. Generated .dif files now contain correct
timestamps for original files.
+ always strip exec attribute from sources (libharu needs this)
; 2017-01-03 16:01 UTC Viktor Szakats (vszakats users.noreply.github.com)
* do not leak local TZ in generated .dif files
; 2016-01-24 11:56 UTC+0100 Viktor Szakats (vszakats users.noreply.github.com)
! allow source URLs with '?' in them by not stripping the parameter
part. Some files require this (ie. jpeg source package). Such URLs
are not used in this repository anymore and committers should make
sure they are not readded.
; 2015-12-18 18:42 UTC+0100 Viktor Szakats (vszakats users.noreply.github.com)
* update shebang to work regardless of where Harbour resides on the system,
will now work if hbmk2 is found anywhere in PATH
; 2015-11-29 19:10 UTC+0100 Viktor Szakats (vszakats users.noreply.github.com)
! another attempt to fix EOL issue in `diff`, this time the
option introduced in the last update turns out to not be
supported by the older `diff` version found in El Capitan,
so falling back another option (untested)
+ show error and exit in case of a `diff` command failure
; 2015-11-29 18:34 UTC+0100 Viktor Szakats (vszakats users.noreply.github.com)
! fix to not use an unsupported 'tar' option on darwin and bsd platforms
; 2015-11-15 18:39 UTC+0100 Viktor Szakats (vszakats users.noreply.github.com)
! fix regression to ignore only the line-trailing whitespaces
(not all of them)
; 2015-11-02 23:54 UTC+0100 Viktor Szakats (vszakats users.noreply.github.com)
+ add -w option to 'patch' command to ignore whitespace changes,
thus avoiding problems caused by EOL-style differences
; 2015-10-18 15:49 UTC+0200 Viktor Szakats (vszakats users.noreply.github.com)
* diff to ignore all whitespace, mainly to avoid excessive
diffs due to different eol-style (it may also be useful
to avoid unnecessary diffs due to whitespaces at eol and eof)
; 2015-10-15 21:34 UTC+0200 Viktor Szakats (vszakats users.noreply.github.com)
% optimize function that normalizes filenames in diff files
! fix function that normalizes filenames in diff files to not lose
content when it doesn't end with a newline
; 2015-04-20 00:23 UTC+0200 Viktor Szakats (vszakats users.noreply.github.com)
+ make sure not to allow protocol downgrade on redirects
; 2014-11-26 14:59 UTC+0100 Viktor Szakats (vszakats users.noreply.github.com)
* deleted editor-specific configuration comment
! fixed infinite loop due to 1b5142c162463dc7abed564c30f09146e74d9ab7
% use hb_cwd(), hb_FName*(), hb_DirSep*() (also fixes potential portability issues)
; 2014-07-15 23:04 UTC+0200 Viktor Szakats (vszakats users.noreply.github.com)
* use VF IO, ATail(), cleanups, URL updates, etc
* contrib/hbrun/hbrun.hbp
* ChangeLog.txt
* package/harbour-wce.spec.in
* package/harbour-win.spec.in
* package/harbour.spec
* package/mpkg_rpm_wce.sh
* package/mpkg_rpm_win.sh
* package/mpkg_rpm.sh
* package/mpkg_src.sh
* package/mpkg_ver.sh
* package/mpkg_win.nsi
* package/winuni/mpkg_win_uni.nsi
* utils/hbmk2/hbmk2.hbp
* utils/hbmk2/hbmk2.prg
* utils/hbmk2/Makefile
* package/harb_osx.icns -> package/harbour.icns
* package/harb_win.ico -> package/harbour.ico
* package/harb_win.mft -> package/harbour.mft
* package/harb_win.rc -> package/harbour.rc
* utils/hbmk2/hbmk2.rc -> utils/hbmk2/harbour.rc
* sync more file renames with the 3.4 fork
NOTE: some projects used to rely on harb_win.ico. This will
not work anymore and these will need to be updated or even
better fixed to rely on it local .ico file instead.
* sync bash formatting and fixes. Formatting guidelines here
https://google.github.io/styleguide/shell.xml
* sync two hbmk2 macro names
* contrib/gtqtc/gtqtc.hbp
* contrib/hbssl/ssl_hbcon.prg
* contrib/gtqtc/hbmk2_qtmoc.hb -> contrib/gtqtc/hbmk2_qtgt.hb
* more syncs with 3.4 fork. One rename, some content syncs
after renames.
+ src/rdd/usrrdd/rdds/arrayrdd.prg -> contrib/rddmisc/arrayrdd.prg
+ src/rdd/usrrdd/rdds/dbtcdx.prg -> contrib/rddmisc/dbtcdx.prg
+ src/rdd/usrrdd/rdds/fptcdx.prg -> contrib/rddmisc/fptcdx.prg
+ src/rdd/usrrdd/rdds/hscdx.prg -> contrib/rddmisc/hscdx.prg
+ src/rdd/usrrdd/rdds/logrdd.prg -> contrib/rddmisc/logrdd.prg
+ src/rdd/usrrdd/rdds/rlcdx.prg -> contrib/rddmisc/rlcdx.prg
+ src/rdd/usrrdd/rdds/smtcdx.prg -> contrib/rddmisc/smtcdx.prg
+ src/rdd/usrrdd/rdds/vfpcdx.prg -> contrib/rddmisc/vfpcdx.prg
* src/rdd/usrrdd/rdds/arrayrdd.prg
* src/rdd/usrrdd/rdds/dbtcdx.prg
* src/rdd/usrrdd/rdds/fptcdx.prg
* src/rdd/usrrdd/rdds/hscdx.prg
* src/rdd/usrrdd/rdds/logrdd.prg
* src/rdd/usrrdd/rdds/rlcdx.prg
* src/rdd/usrrdd/rdds/smtcdx.prg
* src/rdd/usrrdd/rdds/vfpcdx.prg
* move usrrdd sources to contrib/rddmisc to have the source tree
in sync with 3.4 fork, where these were converted to a contrib.
In 3.2 they will still be compiled into core with an #include
trick.
* contrib/gtwvg/*.prg
* contrib/gtwvg/gtwgud.c
* contrib/gtwvg/gtwvg.hbx
* contrib/gtwvg/gtwvgd.c
* contrib/gtwvg/wvgcore.c
* contrib/gtwvg/wvgcuig.c
* more sync with 3.4 fork, mostly code-style/whitespace with
some minor optimizations
* *
* partial sync with the 3.4 fork codebase. These are the things
synces for the most part:
- copyright headers
- grammar/typos in comments and some readmes
- comment/whitespace/decorations
- variable scoping in C files
- DO CASE/SWITCH and some other alternate syntax usage
- minimal amount of human readable text in strings
- minor code updates
- HB_TRACE() void * casts for pointers and few other changes to
avoid C compiler warnings
- various other, minor code cleanups
- only Harbour/C code/headers were touched in src, utils, contrib,
include. No 3rd party code, no make files, and with just a few
exceptions, no 'tests' code was touched.
- certain components were not touched were 3.4 diverged too much
already, like f.e. hbmk2, hbssl, hbcurl, hbexpat
- the goal was that no actual program logic should be altered by
these changes. Except some possible minor exceptions, any such
change is probably a bug in this patch.
It's a massive patch, if you find anything broken after it, please
open an Issue with the details. Build test was done on macOS.
The goal is make it easier to see what actual code/logic was changed
in 3.4 compared to 3.2 and to make patches easier to apply in both
ways.
* contrib/gtwvg/gtwgud.c
* contrib/gtwvg/gtwvgd.c
+ Added : hb_gtinfo( HB_GTI_WINTITLE ) now returns Windows handle.
Was a missing implementation since long.
* src/rtl/dirscan.prg
! fixed type in hb_DirRemoveAll() result - it always returned .F.
* src/rtl/itemseri.c
! fixed internal error when HB_SERIALIZE_COMPRESS is passed to
hb_Serialize() and ZLIB was not linked with application
* src/rtl/tpersist.prg
! fixed deserialization of multidimensional arrays - thanks to Peter
* contrib/rddads/ads1.c
* pacified 'fall through' warnings
* contrib/hbexpat/3rd/expat/_hbconf.h
* contrib/hbexpat/3rd/expat/xmlparse.c
! fixed WINCE builds
! fixed OpenWatcom DOS builds
! fixed OpenWatcom OS2 builds
* contrib/hbexpat/3rd/expat/expat.dif
* rediffed
* include/harbour.hbx
* include/hbvm.h
* src/harbour.def
* src/vm/hvm.c
* src/vm/thread.c
+ added new C function
HB_BOOL hb_vmThreadIsMain( void * );
it checks if given or current thread is main HVM thread
+ added new PRG function
hb_threadIsMain( [ <pThID> ] ) -> <lMainHvmThread>
it returns true if given or current thread is main HVM thread
+ added new PRG function
hb_mutexExists( <pMtx> ) -> <lExists>
it returns true if passed <pMtx> parameter is pointer item to
fully functional mutex
* src/rtl/tpersist.prg
! fixed problem with array item deserialization - many thanks
to Peter Rees for exact information about the problem.
* src/rtl/val.c
* minor simplification
* contrib/hbwin/olecore.c
! reverted order of indexes and dimensions in conversions of
multidimensional arrays.
This modification affects both conversions (1) from Harbour array
to OLE variant SafeArray and (2) from OLE variant SafeArray to Harbour
array. The first one is new Harbour extension of __oleVariantNew() so
here above modification should not create any backward compatibility
problems but the second interacts with code which existed in Harbour
from early OLE implementation so if someone already encoded hacks
to revert array indexes and dimensions at .prg level then now he has
to remove it.
Please not that above modification affects only for multidimensional
OLE typed arrays. It does not change anything for single dimension
arrays or single dimension arrays of variants which contains other
similar arrays in their items.
* contrib/hbwin/olecore.c
+ added support for multidimensional typed OLE arrays, now
__oleVariantNew() accepts the following parameters:
__oleVariantNew( <nVariantType>, [<xInitValue>], [<nDims,...>] )
-> <pVariant>
i.e.:
pOleArray := __oleVariantNew( WIN_VT_VARIANT, aVal, ;
len( aVal ), len( aVal[ 1 ] ) )
pOleArray2 := __oleVariantNew( WIN_VT_I4, ;
{ { 1, 2, 3 }, { 4, 5, 6 } }, 2, 3 )
If initialization array is smaller the declared size then in OLE array
uninitialized items have default value for given type. NIL array items
are ignored other non array values in nodes generate errors. Strings
can be used on last level to initialize OLE arrays with ASCII values of
their characters.
Please test it in real MS-Window environment.
* contrib/hbexpat/3rd/expat/_hbconf.h
! fixed MS-Windows builds
* contrib/hbexpat/3rd/expat/*
! updated to 2.2.1 (from 2.1.0) using 3rdpatch.hb, expat.dif(f) from
Viktor's 3.4 fork was used - but adapted for DOS 8.3 naming
scheme. According to issue #157, previous revisions of expat have
security vulnerabilities, for more information refer to:
https://github.com/libexpat/libexpat/blob/master/expat/Changes
Many thanks to Sebastian Pipping for the information.
* contrib/hbexpat/hbexpat.ch
+ new constant HB_XML_ERROR_INVALID_ARGUMENT added
* utils/hbmk2/hbmk2.prg
* remove `_HBSHELL_EXEC_PRE` macro
+ add `_HBSHELL_EXTRA_HEADER` macro that can be defined to a header
(.ch) filename which will be included in all dot prompt and script
execution sessions. The header will also be embedded in
hbmk2/hbrun at build-time, so it's not necessary to be present at
runtime. The macro may also be defined in the `hbmk2_extra.prg`
source.