Commit Graph

36 Commits

Author SHA1 Message Date
Viktor Szakats
23ac606bcc 2010-01-08 01:02 UTC+0100 Viktor Szakats (harbour.01 syenar.hu)
* src/vm/dlmalloc.c
    ! Fixed two potentially uninitialized variables, signaled by MSVC.

  * src/common/hbgete.c
    + Changed to use native SetEnvironmentVariable() API instead of
      forced ANSI one.

  * src/common/hbwince.c
  * include/hbwince.h
    % Deleted unused ANSI Windows API stubs.
    + Added empty SetEnvironmentVariable() stub for WinCE
      builds where it's missing.
    * Reconfigured these stubs:
        SetCurrentDirectory()
        GetCurrentDirectory()
        GetComputerName()
        GetUserName()

  * config/win/global.mk
    * Comment updated.

  * config/win/msvc.mk
    + Added -nxcompat and -dynamicbase to .dll link command.
      (I'm unsure what -dynamicbase is good for in a .dll, but it's
      accepted and set)
    ! Fixed to add -nxcompat/-dynamicbase for MSVC 2008 and upper.
      (it's also possible to use it with MSVS 2005 SP1 though, but
      build won't detect this case)
2010-01-08 00:14:19 +00:00
Viktor Szakats
dd570d683c 2010-01-07 21:10 UTC+0100 Viktor Szakats (harbour.01 syenar.hu)
* INSTALL
    + Added free SVN book link.

  * src/vm/extrap.c
    % Marked exception filter callback as 'static'
    ; TOCHECK: Please verify that OS/2 still works this way.

  * src/rtl/oemansi.c
    ! Fixed two tabs.

  * src/rtl/gtwvt/gtwvt.c
  * contrib/gtwvg/gtwvg.c
  * contrib/rddads/adsfunc.c
    ! Fixed to not use unsafe/ANSI CharToOemBuffA() API.
    ; Please review me.

  * config/win/mingw.mk
    + Added information about MinGW alternatives for MSVC
      security features. Unfortunately they need Cygwin
      binary plus some depend on MinGW host platform
      and/or version.

  * include/hbwince.h
  * src/common/hbwince.c
    - Deleted CharToOemBuffA(), OemToCharBuffA(). No longer
      needed by Harbour.
    ; TODO: Delete rest of not anymore used ANSI WinAPI
            functions. Now Harbour never uses ANSI
            WinAPI functions in UNICODE mode.

  * config/win/global.mk
    - Deleted reference to CharToOemBuffA(), OemToCharBuffA().
2010-01-07 20:59:38 +00:00
Przemyslaw Czerpak
6e527f2ed1 2010-01-05 02:39 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/src/common/hbtrace.c
    ! fixed casting for C++ mode in my recent modification
2010-01-05 01:39:48 +00:00
Przemyslaw Czerpak
70b39211bb 2010-01-04 19:01 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/ChangeLog
    ! fixed typo in my recent ChangeLog entry

  * harbour/src/vm/fm.c
    % minor simplification

  * harbour/src/common/hbtrace.c
    ! fixed possible recursive call reported by Istvan
2010-01-04 18:02:29 +00:00
Przemyslaw Czerpak
bbd5bcb2e2 2009-12-30 21:22 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/src/nortl/nortl.c
    ! added hb_xtraced()

  * harbour/src/common/hbstr.c
    * do not fill unused part of buffer with '\0' bytes in
      hb_strncpy(), hb_strncpyLower(), hb_strncpyUpper(),
      hb_strncpyUpperTrim(), hb_strncpyTrim()

  * harbour/src/common/hbtrace.c
    % small optimization in building Unicode OutputDebugString() message

  * harbour/src/codepage/Makefile
  * harbour/include/hbapicdp.h
  + harbour/src/codepage/ucyuscii.c
    + added YUSCII unicode table

  * harbour/src/codepage/cphr437.c
  * harbour/src/codepage/cpsl437.c
    ! fixed unicode table used in HR437 and SL437 Harbour CPs.
      It's not CP-437 but YUSCII
    - removed my old note "TOFIX: is it really CP-437?"
    TOFIX: change Harbour names of above CPs, i.e. to HRYU and SLYU

  * harbour/src/codepage/uckam.c
    * removed TOFIX note I forgot to remove when committed correct
      Kamenicky Unicode table.

  * harbour/src/codepage/uckoi8.c
  * harbour/src/codepage/uc857.c
  * harbour/src/codepage/uc1250.c
  * harbour/src/codepage/uc1254.c
  * harbour/src/codepage/uc866.c
  * harbour/src/codepage/uc850.c
  * harbour/src/codepage/uc1251.c
  * harbour/src/codepage/ucmaz.c
  * harbour/src/codepage/uc1252.c
  * harbour/src/codepage/uc8859_1.c
  * harbour/src/codepage/uc88591b.c
  * harbour/src/codepage/uc852.c
  * harbour/src/codepage/uc737.c
  * harbour/src/codepage/uc1253.c
  * harbour/src/codepage/uc1257.c
  * harbour/src/codepage/uc8859_2.c
    * updated some of my old copyright messages
2009-12-30 20:23:35 +00:00
Przemyslaw Czerpak
1b181e9773 2009-12-29 14:34 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/include/hbapi.h
  * harbour/src/common/hbprintf.c
    + added new function 'int hb_printf_params( const char * format )' which
      returns number of parameters necessary for format string

  * harbour/src/common/hbtrace.c
    * added protection against recursive calls when number of parameters
      used by HB_TRACE message us bigger then 16 and fm.c module was compiled
      with HB_TR_DEBUG macro
    % use the same number of characters for unicode and byte string buffers
    % use common memory area (union) for unicode and byte messages to reduce
      C stack usage
    Please test these modifications in real MS-Windows systems.
2009-12-29 13:34:19 +00:00
Viktor Szakats
3f05b7156c 2009-12-28 20:48 UTC+0100 Viktor Szakats (harbour.01 syenar.hu)
* src/vm/fm.c
  * include/hbapi.h
    + Added hb_xtraced(). Please check it might be wrong.

  * src/common/hbtrace.c
    - Deleted hack to disable winout to avoid recursive calls.
    + Added TOFIX to avoid recursive calls with some clever 
      detection on error case (hb_xtracd() && no_of_formatt_strings > 16)
      I didn't implement it, pls do so if interested.
    ! Fixed MultiByteToWideChar sizeof() to HB_SIZEOFARRAY().
2009-12-28 19:49:43 +00:00
Viktor Szakats
36a5b42ac2 2009-12-28 10:11 UTC+0100 Viktor Szakats (harbour.01 syenar.hu)
* src/common/hbtrace.c
    * Deleted TOFIX for va_end(). It's not required (and wasn't 
      ever required there) since there is no va_start() call in 
      hb_tracelog_() function at all.
2009-12-28 09:14:41 +00:00
Viktor Szakats
af310bf016 2009-12-28 10:01 UTC+0100 Viktor Szakats (harbour.01 syenar.hu)
* src/common/hbtrace.c
    ! Fixed some leftover causing error on non-win.
    % Replaces \r\n with \n in printf() calls.
      [TOMERGE 2.0]

  * config/win/bcc.mk
    + Added -CP437 bcc option as default, so that it fixes compilation
      on windows systems are setup to use certain (f.e. far east)
      multibytes codepages as default non-Unicode CP.
2009-12-28 09:04:16 +00:00
Viktor Szakats
4b58831a0a 2009-12-28 02:36 UTC+0100 Viktor Szakats (harbour.01 syenar.hu)
* src/common/hbtrace.c
    ! Readded hack to disable reentrancy for win specific trace logic
      until we clear up the issue with some Harbour API calls used from
      win specific trace code are calling back to the trace engine.
2009-12-28 01:38:22 +00:00
Viktor Szakats
97b26b2ed3 2009-12-28 01:56 UTC+0100 Viktor Szakats (harbour.01 syenar.hu)
* src/common/hbtrace.c
    ! Fixed to not call hb_xgrab() via HB_TRACE_CONVTO() causing
      infinite recursion into trace engine. This replaces previously
      committed trick to avoid the same thing in a generic manner.
      It was a bug in previous Windows-support addition, which is now fixed.
    * Adding \r\n for OutputDebugString() text to make WinDbg display
      look readable, this time by simply extending printf() mask.
    - Deleted space trimming from OutputDebugString() passed text.
      Such issues should be fixed in high level code, it's not trace
      engine's job to make cosmetic corrections on trace text content.
    ; Tested with both WinDbg and DbgView.
      [TOMERGE 2.0]

    ; TOFIX:
         va_end() has been commented for all platforms, although
         it's required by all documentation I could verify.
         If this causes problems for specific platforms/compilers,
         we should only add this hack for those targets, and only
         when HB_TR_WINOUT is enabled.
         Now every non-Windows and Windows non-HB_TR_WINOUT
         setups are not complying with CRTL documentation.
         Could someone help here?
2009-12-28 01:04:24 +00:00
Viktor Szakats
0447b6eaa2 2009-12-27 22:44 UTC+0100 Viktor Szakats (harbour.01 syenar.hu)
* src/common/hbtrace.c
    ! Formatting.
    ! Fixed to use HB_ISSPACE().
    ; NOTE/TOFIX: Anyhow I think last patch should be reverted to not manipulate
                  passed by user string before passing it to Windows.
                  Plus current anti-reentrancy logic should be changed to something
                  robust, as current solution drops trace messages which is a very
                  dangerous thing to do if we want to rely on trace output for
                  debugging. It's not clear what "stack overflow events" are.

  * doc/codestyl.txt
    ! Fixed link. Thanks Vailton.
      [TOMERGE 2.0]
2009-12-27 21:46:57 +00:00
Istvan Bisz
e7a95d507c 2009-12-27 16:30 UTC+0100 Istvan Bisz (istvan.bisz/at/t-online.hu)
* harbour/src/common/hbtrace.c
    * early va_end( ap ) elimination, to avoid access violation generation in a subsequent hb_vsnprintf
    * fix nested HB_TRACE calls handlig to avoid stack overflow events
    * normalized debug info sending to OutputDebugString with ending CR/LF/NUL to ensure a correct view in windbg.
2009-12-27 16:24:45 +00:00
Przemyslaw Czerpak
6b2f6bd054 2009-12-26 14:12 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/include/Makefile
  * harbour/include/hbmath.h
  + harbour/include/hbmather.h
  * harbour/include/hbsetup.h
  * harbour/include/hbapi.h
    * moved math error handler definitions and settings separate header file
    * moved hb_random_num() declaration from hbmath.h to hbapi.h

    After above modification hbmath file should be use only by code which
    wants to use math functions declared usually in math.h

  + harbour/include/hbfloat.h
    + added header file with test macros for floating point numbers
      this file should be included before any other files

  * harbour/src/vm/hvmall.c
  * harbour/src/vm/itemapi.c
  * harbour/src/common/hbprintf.c
  * harbour/src/rtl/math.c
    * use new macros from hbfloat.h

  * harbour/src/rtl/math.c
    + include "hbmather.h"

  * harbour/src/rtl/hbrandom.c
  * harbour/src/rdd/dbf1.c
  * harbour/contrib/xhb/hboutdbg.c
    - removed not longer necessary include "hbmath.h"

  * harbour/contrib/hbct/ctmath.h
    - do not include <float.h> and <limits.h>

  * harbour/contrib/hbct/ct.h
    - do not include "hbmath.h" and "ctmath.h"

  * harbour/contrib/hbct/ctmath.c
  * harbour/contrib/hbct/exponent.c
  * harbour/contrib/hbct/ctc.c
    + include "ctmath.h"

  * harbour/contrib/hbct/trig.c
  * harbour/contrib/hbct/finan.c
  * harbour/contrib/hbct/ctmath2.c
    + include "ctmath.h"
    + include "hbmather.h"

  * harbour/contrib/hbct/num1.c
    + include "ctmath.h"
    + include <float.h>

  * harbour/include/hbinit.h
  * harbour/src/rtl/hbsocket.c
    * added patches from Tamas - thanks

  * harbour/bin/hb-func.sh
  * harbour/harbour.spec
    + create /etc/ld.so.conf.d/harbour.conf with Harbour shared lib directory
      if /etc/ld.so.conf.d directory exists and user has sufficient write
      permission or install package is created.
      This modification allows to install Harbour anywhere and in modern
      distros using /etc/ld.so.conf.d/ harbour shared libraries will be
      always available for all programs

   [TOMERGE 2.0]
2009-12-26 13:13:02 +00:00
Przemyslaw Czerpak
541341709b 2009-12-23 12:31 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/include/hbmath.h
    ! enable HB_MATH_ERRNO in all *unix builds not only in GCC ones

  * harbour/src/vm/itemapi.c
    ! use finite() to check for valid double values - looks that SunCC
      does not report iDODO warnings so we were not informed about the
      problem

  * harbour/include/hbdefs.h
  * harbour/src/common/hbprintf.c
    % use also _STDC_C99 macro not only _ISOC99_SOURCE to detect C99 mode
      and do not reduce such detection to GCC

   [TOMERGE 2.0]
2009-12-23 11:31:15 +00:00
Viktor Szakats
5274553789 2009-12-22 23:47 UTC+0100 Viktor Szakats (harbour.01 syenar.hu)
* src/vm/thread.c
  * src/vm/dynlibhb.c
  * src/common/hbgete.c
  * src/common/hbffind.c
  * src/common/hbfsapi.c
  * src/rtl/gtstd/gtstd.c
  * src/rtl/hbsocket.c
  * src/rtl/filesys.c
  * src/rtl/gtpca/gtpca.c
  * src/rtl/hbproces.c
    * 'int TODO' -> 'int iTODO' patch from Tamas Tevesz. Thank you.
2009-12-22 22:48:08 +00:00
Przemyslaw Czerpak
f26d65e22a 2009-12-21 14:38 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/include/hbwince.h
    + added hack for missing GetEnvironmentVariable?() declarations in
      POCC header files for WinCE.

  * harbour/src/common/hbwince.c
    * minor simplification

  * harbour/src/pp/pplib.c
    * workaround for MSVC6 errors
2009-12-21 13:38:40 +00:00
Przemyslaw Czerpak
e7cb8c45a1 2009-12-20 22:12 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/include/Makefile
  + harbour/include/hbtrace.ch
  * harbour/include/hbtrace.h
  * harbour/src/rtl/trace.c
  * harbour/src/common/hbtrace.c
    ! fixed hb_tracelevel() C function to change trace filter instead of
      last message level. It also fixed .prg function HB_TRACELEVEL().
    + added new C function:
         void hb_tracelog( int level, const char * file, int line,
                           const char * proc, const char * fmt, ... )
    + added new .prg functions:
         hb_traceLogLevel( <nNewLevel> ) -> <nPrevLevel>
         hb_traceLog( <xMsgItems,...> ) // generate message at
                                        // hb_traceLogLevel()
         hb_traceLogAt( <nLevel>, <msg,...> )
    + added support for HB_TRACE() messages in .prg code with the same
      functionality as in C code:
         HB_TRACE( <level>, <msg,...> )
      HB_TRACE() code if filtered at compile time by HB_TR_LEVEL_* macros
      i.e. -DHB_TR_LEVEL_INFO used as harbour compiler parameter
      and at runtime by HB_TR_LEVEL=<level> envvar (set HB_TR_LEVEL=DEBUG)
      or by hb_traceLevel( <nLevel> ) function (hb_traceLevel( HB_TR_DEBUG ))
      Default compile time and runtime trace level for C and .prg code
      is HB_TR_WARNING.
2009-12-20 21:12:54 +00:00
Przemyslaw Czerpak
b258738f10 2009-12-16 09:59 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/src/common/hbdate.c
    * casting for some more pedantic C/C++ compilers

  * harbour/include/hbinit.h
    * allow to force static C++ initialization as startup code in
      GCC and SunPRO builds by HB_STATIC_STARTUP macro
2009-12-16 08:59:41 +00:00
Przemyslaw Czerpak
4e62cf97fe 2009-12-12 23:29 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/include/hbsetup.h
  * harbour/include/hbdefs.h
  * harbour/include/hbthread.h
  * harbour/src/common/hbver.c
  * harbour/bin/hb-func.sh
  * harbour/bin/postinst.sh
  * harbour/config/linux/gcc.mk
  + harbour/config/linux/open64.mk
    + added support for Open64 C/C++ compiler in Linux builds

  * harbour/src/common/hbver.c
    * removed unnecessary casting compiler version number parameters
      to 'short'
    * extended the size of szBuf buffer as requested by Tamas
2009-12-12 22:31:11 +00:00
Viktor Szakats
4861805eda 2009-12-10 11:24 UTC+0100 Viktor Szakats (harbour.01 syenar.hu)
* src/common/hbver.c
    * Minor cleanup.

  * contrib/hbqt/generator/hbqtgen.prg
    ! Fixed typo in TRACE text.

  * contrib/hbqt/qtgui/*
  * contrib/hbqt/qtcore/*
  * contrib/hbqt/qtnetwork/*
    * Regenerated.
2009-12-10 10:33:15 +00:00
Viktor Szakats
1102852cdd 2009-12-09 19:13 UTC+0100 Viktor Szakats (harbour.01 syenar.hu)
* src/common/hbtrace.c
    + Added support for HB_TR_WINOUT envvar (on Windows platform-only)
      to enable pushing trace output via OutputDebugString() calls.
      Use this before running an app:
         set HB_TR_WINOUT=yes
         (anything non-empty would work, not just 'yes')

  * src/rtl/trace.c
    + HB_TRACESTRING(): Added support to accept multiple parameters,
      it also handles non-string parameters, just like OUTSTD()/QOUT().
    % Minor optimization to HB_TRACE() call.

  ; NOTE: Above two changes make it unnecessary to use custom made
          debug/trace solutions inside each contrib, and it also makes
          it unnecessary to use xhb lib for other proprietary trace solutions.

  * src/rtl/console.c
    * Variable scope optimization.

  * contrib/hbgd/gdwrp.c
    * Minor formatting.
2009-12-09 18:16:36 +00:00
Viktor Szakats
f1c1883d01 2009-12-08 16:56 UTC+0100 Viktor Szakats (harbour.01 syenar.hu)
* src/common/hbver.c
    ! Fixed determining the patch level of MSVC compiler on 
      or above version 2005.
      Adapted fix from xhb / Andi Jahja.

  * contrib/hbqt/hbqt_slots.cpp
    * Little renaming.
2009-12-08 15:57:21 +00:00
Viktor Szakats
4134128c3a 2009-11-22 04:12 UTC+0100 Viktor Szakats (harbour.01 syenar.hu)
* contrib/hbwin/win_prn2.c
    % GETPRINTERS(): Changed to use printer list retrieving on NT 
      systems to the one used on Win9x systems. This greatly simplifies 
      the code.
    % GETPRINTERS(): Optimized out one PHB_ITEM variable.
    % GETPRINTERS(): Moved variables closer to their user blocks.
    * GETPRINTERS(): Using empty strings instead of inconsistent 
                     "Error"/"ERROR" texts on error.
                     (INCOMPATIBLE).
    ; Pls test.

  * src/common/hbver.c
    + Some changes to the way LLVM/CLang are detected. One 
      remaining combination was now added also.
      Pls review me.
2009-11-22 03:17:20 +00:00
Viktor Szakats
39a66166e0 2009-11-21 11:10 UTC+0100 Viktor Szakats (harbour.01 syenar.hu)
* include/hbsetup.h
  * utils/hbmk2/hbmk2.prg
  * config/darwin/clang.mk
    + Using __clang__ for Clang detection instead of locally rolled 
      solution.

  * src/common/hbver.c
    + Added Clang compiler detection.
2009-11-21 10:11:32 +00:00
Viktor Szakats
fdc4505247 2009-11-16 11:26 UTC+0100 Viktor Szakats (harbour.01 syenar.hu)
* src/common/hbffind.c
  * src/rtl/fscopy.c
  * src/rtl/fserr.c
  * src/rtl/hbfeof.c
  * src/rtl/errapi.c
  * src/rtl/hbsocket.c
  * src/rtl/filesys.c
  * src/rtl/philes.c
  * src/rtl/dirdrive.c
  * src/rtl/filebuf.c
  * src/rtl/hbproces.c
  * include/hbstack.h
  * include/hbapifs.h
  * include/hbapierr.h
    * Changed USHORT type for error codes to HB_ERRCODE.
    + More or less changed int type of Extend/Item API call to 
      long type to prepare for HB_ERRCODE change to ULONG.
    ; TODO: Rename variables to reflect new type.
    ; TODO: Change internal error code from ULONG to HB_ERRCODE.
    ; TODO: Inspect rest of Harbour like above. I've only dealt with 
            rtl, vm.
    ; TODO: hbnetio protocol needs to be modified to pass errcode 
            as 32 bit value.
    ; NOTE: There is still disagreement in code in few places 
            in error type and 'int' is used internally, f.e. 
            sockets, some internal OS code conversion funtions.
    ; TODO: Different topic, but we use a lot of USHORTs to 
            store modes, tries, severity, operation, flags and
            few other things which would better be stored as 
            simple int probably.
    ; Please review me.
2009-11-16 10:32:49 +00:00
Przemyslaw Czerpak
f7e1d79191 2009-11-03 13:36 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/src/common/hbstr.c
    ! fixed typo in HB_TRACE message - problem reported by Alex

  * harbour/src/rtl/cdpapi.c
    ! fixed casting for C++ builds - problem reported by Marcos
2009-11-03 12:37:01 +00:00
Przemyslaw Czerpak
ec05ab3c34 2009-10-30 17:54 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/src/common/hbffind.c
    * small buffer size fix

  * harbour/src/rtl/cdpapi.c
  * harbour/include/hbapicdp.h
    + added HB_WCAHR
    * changed USHORT to HB_WCHAR

  * harbour/src/codepage/ucmacce.c
  * harbour/src/codepage/uckoi8.c
  * harbour/src/codepage/uc885910.c
  * harbour/src/codepage/ucmacice.c
  * harbour/src/codepage/uc885914.c
  * harbour/src/codepage/uc874.c
  * harbour/src/codepage/uc857.c
  * harbour/src/codepage/uc1250.c
  * harbour/src/codepage/uc1254.c
  * harbour/src/codepage/uc1258.c
  * harbour/src/codepage/uckoi8u.c
  * harbour/src/codepage/uckam.c
  * harbour/src/codepage/uc424.c
  * harbour/src/codepage/ucmacrom.c
  * harbour/src/codepage/uc862.c
  * harbour/src/codepage/uc866.c
  * harbour/src/codepage/uc8859_3.c
  * harbour/src/codepage/uc8859_7.c
  * harbour/src/codepage/ucmacgrk.c
  * harbour/src/codepage/uc037.c
  * harbour/src/codepage/uc850.c
  * harbour/src/codepage/uc885911.c
  * harbour/src/codepage/uc885915.c
  * harbour/src/codepage/uc875.c
  * harbour/src/codepage/uc1251.c
  * harbour/src/codepage/uc1255.c
  * harbour/src/codepage/uc863.c
  * harbour/src/codepage/ucmaz.c
  * harbour/src/codepage/uc1026.c
  * harbour/src/codepage/uc8859_4.c
  * harbour/src/codepage/uc8859_8.c
  * harbour/src/codepage/uc855.c
  * harbour/src/codepage/uc885916.c
  * harbour/src/codepage/ucascii.c
  * harbour/src/codepage/uc1252.c
  * harbour/src/codepage/uc1256.c
  * harbour/src/codepage/ucatari.c
  * harbour/src/codepage/uc860.c
  * harbour/src/codepage/ucmaccyr.c
  * harbour/src/codepage/ucmik.c
  * harbour/src/codepage/uc864.c
  * harbour/src/codepage/uc1006.c
  * harbour/src/codepage/uc1125.c
  * harbour/src/codepage/uc8859_1.c
  * harbour/src/codepage/uc88591b.c
  * harbour/src/codepage/uc8859_5.c
  * harbour/src/codepage/uc8859_9.c
  * harbour/src/codepage/uc852.c
  * harbour/src/codepage/ucnext.c
  * harbour/src/codepage/uc737.c
  * harbour/src/codepage/uc885913.c
  * harbour/src/codepage/ucmactrk.c
  * harbour/src/codepage/uc856.c
  * harbour/src/codepage/uc775.c
  * harbour/src/codepage/uc1253.c
  * harbour/src/codepage/uc1257.c
  * harbour/src/codepage/uc500.c
  * harbour/src/codepage/uc861.c
  * harbour/src/codepage/uc865.c
  * harbour/src/codepage/uc869.c
  * harbour/src/codepage/uc8859_2.c
  * harbour/src/codepage/uc8859_6.c
    * changed USHORT to HB_WCHAR
2009-10-30 16:56:47 +00:00
Przemyslaw Czerpak
f7f2caa607 2009-10-30 03:40 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/src/common/hbgete.c
  * harbour/src/common/hbffind.c
  * harbour/src/common/hbfsapi.c
  * harbour/src/rtl/fstemp.c
  * harbour/src/rtl/filesys.c
  * harbour/src/rtl/diskspac.c
  * harbour/src/rtl/disksphb.c
  * harbour/src/rtl/net.c
    ! fixed memory leak reported by Pritpal
    * cleanup some UNICODE conversions in Windows builds (mostly resolved
      some macros when UNICODE macro is also explicitly used and cleaned
      some buffers length passed to windows functions.
    * removed unnecessary casting - if it's not necessary for some strange
      reasons never cast strings to LP[C][TW]STR calling windows functions.
      Such casting does not make any conversions but only hides potential
      bugs.

  * harbour/contrib/hbwin/axcore.c
    * pacified warning
2009-10-30 02:41:17 +00:00
Przemyslaw Czerpak
a70ce60954 2009-10-23 09:24 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/src/rdd/dbfnsx/dbfnsx1.c
    ! fixed bug reported by Jaroslav Janik (many thanks) - if index FOR
      expression excluded all records from non empty table then root page
      was not initialized and DBFNSX generated corruption RTE.

  * harbour/utils/hbi18n/hbi18n.prg
    * set default GT to CGI

  * harbour/src/common/hbgete.c
    ! fixed memory leak in non UNICODE Windows hb_getenv_buffer()
    ! add C stack buffers to eliminate memory allocation in UNICODE
      Windows hb_getenv_buffer() - they are used if envvar name and
      passed buffer are not too large. It fixes HB_FM_STATISTICS
      Windows builds.

  * harbour/contrib/hbwin/wapi_winuser.c
    + added WAPI_DESTROYWINDOW function

  * harbour/contrib/xhb/traceprg.prg
  * harbour/contrib/xhb/hbcompat.ch
    ! fixed typo in TraceLog() condition - was always disabled
    + added emulation for xHarbour Set( _SET_TRACE* [, <params,...> ] )
      settings

  * harbour/src/vm/hvmall.c
    ! define _GNU_SOURCE to fix compilation with HB_FM_DL_ALLOC in Linux
      builds

  * harbour/include/hbdefs.h
    * declare HB_FOFFSET as LONG instead of LONGLONG on platforms where
      LONG is 64bit integer to be compatible with C RTL file API

  * harbour/src/vm/maindllh.c
  * harbour/src/vm/maindllp.c
  * harbour/contrib/hbct/ctstr.c
    ! casting in HB_TRACE() massages

  * harbour/include/hbapi.h
  * harbour/include/hbapiitm.h
  * harbour/src/vm/arrays.c
  * harbour/src/vm/hashes.c
  * harbour/src/vm/itemapi.c
    + added hb_arrayCloneTo(), hb_hashCloneTo(), hb_itemCloneTo()

  * harbour/src/vm/arrayshb.c
  * harbour/src/vm/classes.c
  * harbour/src/vm/hashes.c
  * harbour/src/vm/hashfunc.c
  * harbour/src/vm/hvm.c
    % use hb_*CloneTo() instead of hb_*Clone()

  * harbour/include/hbapi.h
  * harbour/src/vm/garbage.c
    - removed hb_gcRegisterSweep() function and support for user defined
      sweep mark functions in GC blocks
    - removed hb_gcAlloc() function
    + added new function hb_gcAllocate() which work in similar way to removed
      hb_gcAlloc() function but it accepts as second parameter HB_GC_FUNCS
      structure instead of HB_GARBAGE_FUNC_PTR and returned GC blocks are
      locked so programmer does not have to worry that they can be removed
      by GC.
    + added new internal function hb_gcAllocRaw() which works like
      hb_gcAllocate() but returned GC blocks are not locked. They can
      be used only in HVM in places well known that cannot activate
      automatic GC scan. It should not be used by 3-rd party code.

  * harbour/include/hbapi.h
  * harbour/include/hbapiitm.h
  * harbour/src/vm/extend.c
  * harbour/src/vm/itemapi.c
    * modified hb_parptrGC(), hb_parvptrGC(), hb_arrayGetPtrGC(),
      hb_itemGetPtrGC() functions to use HB_GC_FUNCS structure instead
      of HB_GARBAGE_FUNC_PTR
    * modified hb_itemPutPtrGC() and indirectly related functions like
      hb_arraySetPtrGC() or hb_stor[v]ptrGC() to automatically unlock
      passed GC block just after attaching to known HVM item.

  * harbour/include/hbregex.h
  * harbour/src/rtl/hbregexc.c
    * declare GC block detractor as static function
    + added hb_regexIs() function
    * updated to work with new GC API
    * removed unnecessary in new GC API hb_gcLock() call - GC blocks
      allocated by hb_gcAllocate() are already locked and they mustn't
      be locked explicitly by programmer (until he does not exactly knows
      what he does ;))

  * harbour/src/rtl/hbregex.c
    * use hb_regexIs() instead of using regex GC destructor
    * removed unnecessary in new GC API hb_gcUnlock() call - GC blocks
      stored in HB_IT_POINTER item are automatically unlocked

  * harbour/src/rtl/hbinet.c
  * harbour/contrib/hbcurl/hbcurl.c
    * updated to work with new GC API
    % unlock items storing callback codeblocks and use GC mark functions
      to mark them as used in GC passes

  * harbour/src/pp/pplib.c
  * harbour/src/vm/runner.c
  * harbour/src/vm/codebloc.c
  * harbour/src/vm/hashes.c
  * harbour/src/vm/hvm.c
  * harbour/src/vm/arrays.c
  * harbour/src/vm/thread.c
  * harbour/src/vm/dynlibhb.c
  * harbour/src/rtl/hbzlibgz.c
  * harbour/src/rtl/hbregex.c
  * harbour/src/rtl/hbregexc.c
  * harbour/src/rtl/hbgtcore.c
  * harbour/src/rtl/hbi18n1.c
  * harbour/src/rdd/wacore.c
  * harbour/contrib/hbsqlit3/hbsqlit3.c
  * harbour/contrib/hbnetio/netiosrv.c
  * harbour/contrib/hbmzip/hbmzip.c
  * harbour/contrib/hbhpdf/harupdf.c
  * harbour/contrib/hbwin/olecore.c
  * harbour/contrib/hbwin/win_prn1.c
  * harbour/contrib/hbwin/win_dll.c
    * updated code which was using hb_gcAlloc() to work with new GC API.

  * harbour/contrib/hbwin/axcore.c
    * updated syntax description

   TODO: update contrib code: hbqt, hbssl, ... to work with new GC API.
         I would like to ask authors of above libraries to do it.
   TODO: defined when and how we should free AX control and user callback
         handler and update AX code to respect new definition
2009-10-23 07:25:36 +00:00
Viktor Szakats
b5c93263e5 2009-10-19 15:04 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
* src/common/hbwince.c
    ! Typos in comments.

  * contrib/rddads/rddads.h
    * Minor formatting.
2009-10-19 13:04:55 +00:00
Przemyslaw Czerpak
890b9ac2ad 2009-10-19 14:54 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/src/common/hbwince.c
    + added GetEnvironmentVariableW() - it fixes WinCE builds after recent
      ANSI to UNICODE function conversions. In WINCE such functions do not
      exist.

  * harbour/src/rtl/gtclip.c
    * pacified MinGWCE warnings

  * harbour/src/rtl/dateshb.c
    + added HB_TTOD() and HB_DTOT() functions
2009-10-19 12:54:46 +00:00
Viktor Szakats
3bba486c12 2009-10-15 17:14 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
* src/common/hbver.c
  * src/rtl/fstemp.c
  * contrib/hbwin/win_prn2.c
    + Changed to use native instead of fixed ANSI version of win API calls.
    ; Please review me, all these are critical low level functions, 
      so any mistakes can be deadly.
    ; TODO: Remaining dynamic versions, although maybe for dynamically 
            loaded win API functions it's better to stay with ANSI 
            version for compatibility.
2009-10-15 15:17:50 +00:00
Viktor Szakats
1a71aa5b61 2009-10-15 15:55 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
* src/common/hbgete.c
  * src/rtl/filesys.c
  * src/rtl/net.c
    + Changed to use native instead of fixed ANSI version of win API calls.
    ; Please review me, all these are critical low level functions, 
      so any mistakes can be deadly.

    ; TODO: There are still some forced ANSI calls in Harbour code:
            (plus some dynamically called ones)
      ---
      source/common/hbver.c:264:      if( GetVersionExA( &osVer ) )
      source/common/hbver.c:306:                  if( GetVersionExA( ( OSVERSIONINFOA * ) &osVerEx ) )
      source/rtl/fstemp.c:153:         if( ! GetTempPathA( ( DWORD ) ( HB_PATH_MAX - 1 ), pszName ) )
      source/rtl/fstemp.c:270:         if( ! GetTempPathA( ( DWORD ) HB_PATH_MAX, szTempDir ) )
      source/rtl/fstemp.c:278:      fResult = GetTempFileNameA( szTempDir, pszPrefix ? pszPrefix : "hb", 0, pszBuffer );
      contrib/hbwin/win_prn2.c:169:      DWORD dwSize = GetProfileStringA( "windows", "device", "", pPrinterName, *pdwBufferSize );
      ---

  * src/rtl/fstemp.c
    * Minor formatting.
2009-10-15 13:56:40 +00:00
Przemyslaw Czerpak
5dc55239ba 2009-10-12 00:34 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/debian/copyright
  * harbour/debian/rules
  * harbour/src/common/hbtrace.c
  * harbour/src/rdd/usrrdd/rdds/logrdd.prg
  * harbour/tests/cpinfo.prg
  * harbour/doc/gtapi.txt
  * harbour/doc/en-EN/string.txt
  * harbour/doc/en-EN/license.txt
  * harbour/doc/en-EN/compiler.txt
  * harbour/doc/en-EN/terminal.txt
  * harbour/doc/en-EN/dbstrux.txt
  * harbour/doc/en-EN/idle.txt
  * harbour/doc/en-EN/garbage.txt
  * harbour/doc/en-EN/browse.txt
  * harbour/doc/en-EN/lang.txt
  * harbour/doc/en-EN/misc.txt
  * harbour/doc/windll.txt
  * harbour/doc/whatsnew.txt
  * harbour/COPYING
    * finished some missed source/ -> src/ translations
2009-10-11 22:35:16 +00:00
Viktor Szakats
1b080a03f9 2009-10-09 16:53 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
- source
  + src
  * src/Makefile
  * src/dynlib/mt/Makefile
  * src/dynlib/Makefile
  * INSTALL
  * Makefile
  * ChangeLog
  * harbour.spec
  * mpkg_tgz.sh
    * Renamed 'source' dir to 'src' to move closer to other FOSS 
      projects. It's also easier to type, plus it has the side 
      effect that some cmdlines will be shorter in the 
      build process.
2009-10-09 14:54:14 +00:00