* external/bzip2/Makefile
* external/bzip2/bzip2.dif
* external/bzip2/bzip2.c
+ Added patch to make it compile on dos and os2/watcom.
Thanks to Przemek.
* harbour/src/rdd/dbfcdx/dbfcdx1.c
! fixed bad copy and past typo which could cause internal error when
new index using existing order (subindex) was created without ADDITIVE
clause. Bug reported by Mindaugas - many thanks for the information.
* contrib/hbct/ctnet.c
* contrib/hbtpathy/tpwin.c
* contrib/hbnf/getenvrn.c
! Fixed to disable some functionality on all WinCE platforms.
These were WinCE API functions wrongly declared in
mingwarm/poccarm headers. (thus causing link-time errors
for final apps trying to use these functions)
* contrib/hbwin/win_dlg.c
! Enabled more functionality for WinCE. mingwarm builds
will probably crash due to buggy commdlg.h header.
* src/vm/fm.c
! Fixed to redefine ABORT for all wce/msvcarm targets.
* utils/hbmk2/hbmk2.prg
! Minor typo in recently added help item.
* contrib/gtwvg/gtwvg.h
* contrib/gtwvg/wvggui.h
* contrib/hbwin/win_prn1.c
* contrib/hbwin/win_prn2.c
* contrib/hbwin/win_prn3.c
* contrib/hbwin/win_dlg.c
* contrib/hbodbc/odbc.c
* contrib/rddsql/sddodbc/sddodbc.c
! Fixed to compile with -DWIN32_LEAN_AND_MEAN.
* contrib/hbxbp/xbpgra.prg
! Fixed to use HB_SYMBOL_UNUSED() instead of wrong "HBXBP_JUST"
solution, which is a real call with overhead. Std method to
suppress unused warnings in Harbour is HB_SYMBOL_UNUSED().
Or, if some function are plain dummies, it's not necessary
to delcare any parameters.
* contrib/hbxbp/gra.ch
* contrib/hbxbp/Makefile
* contrib/hbxbp/xbpgeneric.prg
+ contrib/hbxbp/xbpgra.prg
* contrib/hbxbp/xbppresspace.prg
+ Added Gra*() skeleton functions.
! Extended XbpPresSpace() class to cover next round of implementation.
; NOTE: I am not been able to find a way to execute Gra*()
functions on a widget's presentation ( device context )
space. Qt documentation clearly indicates that this is
only possible from withing method QEvent::Paint of
concerned widget. And it is correct. Windows itself also
does not allow to paint from outside of WM_PAINT message.
However my experiments have led me to the conclusion that
this is possible if every widget is subclasses and QEvent_Paint
is method is implemented. This is a very tedious and
very error prone job. If anybody come across some sparkling
idea how this can be achieved in a resonable way, please
speak out.
However on other devices, such as, printer and bitmaps these
functions will be working. In the first phase I will implement
it for printing only, later for widgets.
* src/vm/extrap.c
! Fixed to do UNICODE to "ANSI" conversion in module listing
code for WinCE platform. It'd be nice if a WinCE user
could test it.
* src/rtl/filesys.c
! Silenced warning on newer mingwarm compilers about
unused function.
* utils/hbmk2/hbmk2.prg
! Fixed autodetection of mingwarm, when Cygwin is also
in PATH (it is supposed to be there, as it is a
requirement for C compiler).
* utils/hbmk2/hbmk2.prg
+ hbmainstd/hbmainwin lib is now added for mingw family
to lib list also for static executables. It fixes the GPF
at startup with Equation Solution mingw64 build. I hope
it doesn't create any harm for other builds, it remains
to be tested.
% Disabled -fomit-frame-pointer for mingw64.
* utils/hbformat/Makefile
* utils/hbmk2/Makefile
* utils/hbi18n/Makefile
* utils/hbtest/Makefile
* utils/hbrun/Makefile
* config/win/mingw.mk
% "HB_MAIN" logic eliminated from local make files and moved
to mingw.mk only.
* contrib/hbqt/generator/hbqtgen.prg
* contrib/hbqt/qth/QList.qth
* contrib/hbqt/qth/QObject.qth
* Re0generated: contrib/hbqt/qtgui/?.cpp
* Re-generated: contrib/hbqt/qtcore/?.cpp
+ Eliminated any occurance of hb_retptr(*) calls.
Now all objects which are created with "new" or are
returned as a method call are encapsulated in GC
pointer. This is a step closer to find-out the potential
GPFs.
* harbour/include/hbstack.h
* harbour/src/vm/estack.c
% declare hb_stack TLS pointer in MT HVM as static when HVM is compiled
with HB_HVM_ALL=yes
* harbour/src/compiler/hbcomp.c
! added protection against multiple freeing the same expression on
some errors in compiled code. It's necessary after removing reference
counters which made such protection indirectly. It fixed bug reported
by Teo.
* harbour/include/hbsetup.h
! check GCC version for hot and cold function attribute macros
* utils/hbmk2/hbmk2.prg
+ Readded -pipe option for gcc (except djgpp) and icc/linux family
compilers in a more sophisticated way. Now -pipe option is only
used when hbmk2 controls the output filename, and in such case
the output filename will always be deleted by hbmk2 if the
C compiler returned error. This way -pipe can never leave
faulty or dummy object files on disk, confusing incremental builds
or just leaving trash behind. BTW, it'd be interesting to
know why such seemingly buggy behavior hasn't been fixed in gcc
in the last 6-7 years... (making -pipe option useless for Harbour
build process f.e.)
* contrib/hbqt/hbqt_hbqplaintextedit.cpp
* contrib/hbqt/hbqt_hbqplaintextedit.h
! Fixed behavior of book-marks. Now color representation
on bookmarked lines is persistent and consistent with
corresponding buttons in the statusbar.
* contrib/hbssl/evpmd.c
! Disabled md2 support for >= 1.0.0 OpenSSL versions.
Seems they dropped it.
* contrib/hbssl/ssl.c
* contrib/hbssl/x509.c
* contrib/hbssl/sslctx.c
! Disabled some code parts which didn't compile with
>= 1.0.0 OpenSSL versions. This is not the right fix,
but I just can't figure what went wrong (or what
has been changed) in OpenSSL which cases it. There
is something wrong around 'X509_NAME' symbol.
* utils/hbmk2/hbmk2.prg
* config/beos/gcc.mk
* config/bsd/gcc.mk
* config/wce/mingwarm.mk
* config/darwin/gcc.mk
* config/hpux/gcc.mk
* config/win/mingw.mk
* config/win/cygwin.mk
* config/linux/gcc.mk
* config/linux/icc.mk
* config/os2/gcc.mk
* config/sunos/gcc.mk
- Deleted '-pipe' option. Efficient, but buggy. It didn't take
too long to bump into the problem: On build error, the
.o file is generated with some dummy content, so a second
build attempt will silently make build errors ignored.
* contrib/rddsql/sddfb/sddfb.c
* Minor formatting.
* src/rtl/filesys.c
! Fixed fs_win_get_drive() to return zero (instead of -1)
when drive letter wasn't returned by Windows API.
(it's not clear what is the proper error behavior here)
! Fixed fs_win_set_drive() to apply upper limit on input
parameter.
* contrib/rddsql/sddfb/sddfb.c
* Minor formatting.
* contrib/rddsql/sddfb/sddfb.c
! Few cleanups in the FB RDDSQL interface (macro and type usage).
; It's not an attempt to fix recently reported bugs on the list.
* contrib/gtwvg/gtwvg.c
! Fixed the HB_GTI_PALETTE protocol uniform with other GT's.
* contrib/gtwvg/tests/demowvg.prg
! ThreadID() -> Hb_ThreadID()
BTW ThreadID() is a Xbase++ compatible function.
* src/rtl/filesys.c
+ Using direct Windows API instead of compiler specific
C RTL functions to get/set current disk.
; Please review.
- Deleted one Windows TODO: setmode() to be convered to
direct Windows API call. This translation is done in
C RTL, so Windows API cannot be used.
; There is no remaining non-standard (compiler specific)
C RTL function usage on the Windows platform AFAICT.
* contrib/hbmysql/tmysql.prg
* Formatting.
* contrib/hbqt/doc/en/class_hbqplaintextedit.txt
* contrib/hbqt/hbqt_hbqplaintextedit.cpp
* contrib/hbqt/hbqt_hbqplaintextedit.h
* contrib/hbqt/qtgui/HBQPlainTextEdit.cpp
* contrib/hbqt/qtgui/THBQPlainTextEdit.prg
* contrib/hbqt/qth/HBQPlainTextEdit.qth
* contrib/hbide/resources/themesex.ui
* contrib/hbide/resources/themesex.uic
* contrib/hbide/ideeditor.prg
* contrib/hbide/idethemes.prg
+ Reimplemented "Themes".
* Now it is possible to change current line and line area background
colors. Also synchronized the current colors for these areas
with rest of the theme.
* Now you can apply a particular theme globally to all tabs.
* Made easy the way GUI elements are presented, it is more intuitive.
* contrib/hbcurl/hbcurl.c
+ Added suggested workaround for potential security exploit
when used with libcurl < 7.20.0.
See details here:
http://curl.haxx.se/docs/adv_20100209.html
* external/sqlite3/sqlite3.c
* external/sqlite3/sqlite3.h
+ sqlite upgraded to 3.6.23 (from 3.6.22)
* INSTALL
+ Added one more real-life example for unnecessary
envvars (HB_DIR).
* src/vm/estack.c
* include/hbstack.h
% hb_stackDispLocal() internal debug function made static,
and guarded with HB_VM_DEBUG (pls change it to something
better if there is one), so it's not included in every
regular build and final executable.
* contrib/hbxpp/dmlb.ch
+ Added comment that header is also used by C code.
* contrib/gtwvg/gtwvg.c
* contrib/gtwvg/gtwvg.h
! Partial revert of previous revert:
There was no reason to revert macro names, so
I kept these in sync with the rest of Harbour,
only colors are kept as non-MS-DOS compatible.
; TOFIX: Palette indexing.
* examples/hbdoc2/gentxt.prg
! Fixed to previous fix to rather delete unused
parameter in definition, than addig it to
declaration and mark it as unused.
* contrib/gtwvg/gtwvg.c
* contrib/gtwvg/gtwvg.h
! Reverted back the change in colors.
Sorry Viktor, I unnecessarily requested you to
match it with GTWVT. Infact the whole concept of
GUI elements is based on white and gray combination
as per these colors.
* contrib/hbqt/doc/en/class_hbqplaintextedit.txt
* contrib/hbqt/hbqt_hbqplaintextedit.cpp
* contrib/hbqt/hbqt_hbqplaintextedit.h
* contrib/hbqt/qtgui/HBQPlainTextEdit.cpp
* contrib/hbqt/qtgui/THBQPlainTextEdit.prg
* contrib/hbqt/qth/HBQPlainTextEdit.qth
+ Prepared to manage current line and line area colors.
* contrib/hbqt/doc/en/class_hbqplaintextedit.txt
* contrib/hbqt/hbqt_hbqplaintextedit.cpp
* contrib/hbqt/hbqt_hbqplaintextedit.h
* contrib/hbqt/qtgui/HBQPlainTextEdit.cpp
* contrib/hbqt/qtgui/THBQPlainTextEdit.prg
* contrib/hbqt/qth/HBQPlainTextEdit.qth
* contrib/hbide/hbide.prg
* contrib/hbide/ideeditor.prg
* contrib/hbide/idefunctions.prg
* contrib/hbide/ideobject.prg
+ Implemented "Code Completion" feature.
How it works:
1. Load prototype tags in "Projects Functions Lookup".
2. Activate some editor tab.
3. Start typing a function proto.
4. After 3 characters a popup will appear beneth the cursor.
5. Select from the list, by mouse or use navigation keys.
6. Prototype will be there in the editor exactly with
same cases your prototype is defined.
Input is welcome.