* contrib/hbexpat/hbexpat.ch
+ added constants for attr array element positions
* contrib/hbexpat/tests/test.prg
* contrib/hbexpat/tests/tohash.prg
+ using them
* contrib/hbmxml/3rd/minixml/mxml.hbp
* contrib/hbmzip/hbmzip.hbp
* C std-level related tweaks [Tamas Tevesz]
* contrib/hbmxml/3rd/minixml/config.h
! yet another bcc problem. my last after the last.
anyone to pick up fixing bcc bugs?
* config/detect.mk
- exclude slang/curses/x11 for android
* contrib/hbct/strdiff.c
* contrib/hbct/dattime3.c
* uncrustified
* contrib/hbct/misc2.c
* contrib/hbct/token1.c
* contrib/hbct/print.c
* formatted
* include/harbour.hbx
* include/hbapi.h
* src/common/hbver.c
* src/rtl/version.c
+ hb_verHostCPU() to return CPU architecture the host OS
is running under. (long time TODO)
It may or may not give precise answer depending on
target OS. For win, it works as exptected.
+ HB_OSCPU() -> <cCPU> same for .prg level apps.
* contrib/hbmxml/3rd/minixml/mxml_str.c
! Ultimate isdigit() fix. [Tamas Tevesz]
* contrib/hbmxml/3rd/minixml/mxml.hbp
* contrib/hbmxml/3rd/minixml/mxml_str.c
! Fixed isdigit() warning which was result of missing
mxml header. [Tamas Tevesz]
+ contrib/hbcurl/hbcurlt1.ch
+ contrib/hbcurl/core_t1.c
+ Implemented new way of using HB_CURLOPT_HTTPPOST, now
all meaningful values are supported in any order and
combination. See:
http://curl.haxx.se/libcurl/c/curl_formadd.html
The patch is heavily based on patch/implementation submitted
by Benjamin Jacobs, many thanks for it. Final patch
includes some rework, simplification, compile and
other fixes, plus formatting with uncrustify. Please
make sure to test/review this version as I didn't do
any functional tests, just build ones.
Sample code:
curl_easy_setopt( curl, HB_CURLOPT_HTTPPOST, { ;
{ HB_CURLFORM_COPYNAME, "nparam1", ;
HB_CURLFORM_COPYCONTENTS, "value1" }, ;
{ HB_CURLFORM_COPYNAME, "nparam2", ;
HB_CURLFORM_COPYCONTENTS, "value" }, ;
{ HB_CURLFORM_COPYNAME, "fileparam", ;
HB_CURLFORM_FILE, filename } } )
WARNING: This implementation is INCOMPATIBLE with the
previous one.
TOFIX: Current implementation does allow to create GPFs because
it allows .prg code manually pass buffer sizes. This must
be fixed and buffer length should always be automatically
taken from Harbour item. This will require more sophisticated
code to build the low-level array (f.e. size calculation).
Benjamin, can you look at it?
NOTE: I'm uploading this unfinished code as new temp files,
because SVN doesn't support light branching, so this poor man's
solution is left to manage it.
* contrib/hbmxml/3rd/minixml/mxml.hbp
* contrib/hbmxml/3rd/minixml/config.h
* Testing without HAVE_SNPRINTF/HAVE_VSNPRINTF in ANSI C89 mode.
* utils/hbmk2/hbmk2.prg
+ Added '-cflag+=' experimental option which works like
-cflag=, but it adds the custom flag _after_ C flags
added internally by hbmk2. This allows for some better fine
tuning (f.e. see rddads.hbp). Another possbility would
have been to move all user flags after internal ones,
but this could make it easy to break builds, and it
would also make cflags behave differently than the rest,
so I decided to add this new syntax.
+ Some step to support hbmk2 options to control C/C++ dialect.
% Minor optimization in formed C compiler and linker cmdlines.
* contrib/rddads/rddads.hbp
! Fixed gcc option to disable stupid warning caused
by sloppy #pragma usage in ACE header.
Also changed to use '-cflag+=' to make it work.
At last!
* contrib/hbmxml/hbmxml.hbp
* contrib/hbmxml/3rd/minixml/mxml.hbp
* contrib/hbmxml/3rd/minixml/config.h
+ Disabled HAVE_STRDUP so now it's using its own implementation
and it's ANSI C89 compliant.
* contrib/hbqt/hbmk2_qt.hbs
% Deleted now unnecessary .prg wrapper generation logic.
* Moved .qth processing to "pre_c" phase.
! Deleted HB_FUNC_EXTERN for constructor now declared locally.
! Added constructor to symbol table.
* contrib/3rd/sqlite3/sqlite3.hbp
* contrib/hbbz2/3rd/bz2/bz2.hbp
* contrib/hbexpat/3rd/expat/expat.hbp
* contrib/hbhpdf/3rd/libhpdf/libhpdf.hbp
* contrib/hblzf/3rd/liblzf/lzf.hbp
* contrib/hbmlzo/3rd/minilzo/minilzo.hbp
* contrib/hbmzip/3rd/minizip/minizip.hbp
* contrib/hbmxml/3rd/minixml/mxml.hbp
* contrib/hbxdiff/3rd/libxdiff/xdiff.hbp
+ Added -pic option to 3rd party libs. This switch will
make them use -pic when creating their static libs,
which allows to link them to contrib dynlibs when
using HB_BUILD_CONTRIB_DYN=yes.
* contrib/hbwin/tests/dlg.prg
* Minor formatting.
* contrib/hbmxml/3rd/minixml/mxml.hbp
* contrib/3rd/sqlite3/sqlite3.hbp
* contrib/hbmzip/3rd/minizip/minizip.hbp
* contrib/hblzf/3rd/liblzf/lzf.hbp
* contrib/hbxdiff/3rd/libxdiff/xdiff.hbp
* contrib/hbexpat/3rd/expat/expat.hbp
* contrib/hbbz2/3rd/bz2/bz2.hbp
* contrib/hbhpdf/3rd/libhpdf/libhpdf.hbp
! Do not create dynamic version of 3rd party dependencies hosted
locally. It should fix some problems on *nix builds with
HB_BUILD_CONTRIB_DYN=yes.
* contrib/hbrun/hbrun.hbp
+ -o option.
* utils/hbmk2/hbmk2.prg
+ Added dynlib dir + prefix to --hbinfo output.
* harbour/contrib/hbmxml/hbmxml.c
! redesigned to use mxml_node reference counters - it should fix
all problems with memory leak and accessing freed memory which
where in our wrapper.
! fixed few typos and possible GPF I've found
! modified mxmlDelete() wrapper to respect reference counter
It means that it cannot call mxmlDelete() MXML function directly.
- removed mxmlRelease() and mxmlRetain() PRG wrappers
* harbour/contrib/hbmxml/3rd/minixml/mxml_fil.c
! fixed double mxml_node releasing
* harbour/contrib/hbmxml/3rd/minixml/mxml_nod.c
! fixed mxmlDelete() to respect reference counters
; TODO: There are still two problems but inside MXML library.
1. memory leak in testmxml rem_err.xml
The leak is inside MXML function and have to be fixed by author
(I do not want to change this code too deeply). Here is valgrind
report:
(88 direct, 1 indirect) bytes in 1 blocks are definitely lost
at 0x4C234E7: calloc ()
by 0x40ABF9: mxml_new (mxml_nod.c:758)
by 0x40AE39: mxmlNewText (mxml_nod.c:547)
by 0x407421: mxml_load_data (mxml_fil.c:1585)
by 0x404E50: HB_FUN_MXMLLOADFILE (hbmxml.c:794)
by 0x50A9FF6: hb_vmProc (hvm.c:5795)
by 0x5086104: hb_vmExecute (hvm.c:1655)
by 0x50A9FF6: hb_vmProc (hvm.c:5795)
by 0x50ADC12: main (mainstd.c:96)
2. Index functions in MXML library does not update reference counters.
It means that it's possible to create index then remove nodes and
access such nodes extracting their addresses from the index.
It's the only one place I know when user can make sth wrong with
memory using just modified HBMXML wrapper and it cannot be fixed
without modifications in MXML library.
Please test it.
* harbour/include/hbapi.h
* harbour/include/hbwmain.c
* harbour/src/vm/cmdarg.c
* moved declaration of hb_winmainArgInit() to header file
* harbour/contrib/hbmxml/3rd/minixml/mxml_fil.c
* harbour/contrib/hbmxml/3rd/minixml/mxml.h
! fixed to compile with WinCE builds
; I cannot regenerate .diff file because
../../../../bin/hb3rdpat.hbs -rediff
generates RT error:
Error BASE/1123 Argument error: HB_ATOKENS
Called from HB_ATOKENS(0)
Called from URL_GETFILENAME(810)
Called from FETCHANDEXTRACT(673)
Called from MAIN(412)
Sorry, probably I'm missing sth what was already discussed
but I was not able to follow all post on the list in last
weeks so I would like to ask Viktor or Tamas for the help.
* src/vm/cmdarg.c
* Formatting.
* package/winuni/mpkg_win_uni.nsi
+ Added TOFIX to recent HBIDE shortcut addition.
It should only be there if HBIDE component was selected.
- Disabled HBIDE icon until a proper solution is found.
* contrib/hbct/ctnet.c
! NETRMTNAME(): Fixed along the patch sent by vbdasc.
Please test it.
* contrib/hbmxml/3rd/minixml/config.h
! Space at EOL.
* ChangeLog
! Fixed Date in my entry
+ contrib/hblzf/3rd/liblzf/liblzf.dif
* contrib/hblzf/3rd/liblzf/lzf.hbp
+ Added liblzf.dif
* contrib/hbmxml/3rd/minixml/minixml.dif
+ Fixed not use absolute file path in minixml.dif
! contrib/hbmxml/hbmxml.c
! Many fixes and changes