Commit Graph

5454 Commits

Author SHA1 Message Date
Viktor Szakats
b56888018a minor 2008-11-02 06:50:13 +00:00
Viktor Szakats
659c0030be 2008-11-02 07:39 UTC+0200 Viktor Szakats (harbour.01 syenar hu)
* source/rtl/version.c
    ! Added missing header from previous change.

  * source/vm/itemapi.c
    ! snprintf() -> hb_snprintf()
      This got incidentally reverted in previous commit by mistake.
2008-11-02 06:43:45 +00:00
Viktor Szakats
dddbc1c824 2008-11-02 07:33 UTC+0200 Viktor Szakats (harbour.01 syenar hu)
* include/hbstdgen.ch
    - Removed HB_VERSION mistakenly left there.

  * include/hbextern.ch
  * source/rtl/version.c
    + Added HB_OSISWINNT()
    + Added HB_OSISWINCE()
      [TOMERGE 1.0]

  * include/hbver.ch
  * source/rtl/version.c
    + Added:
      hb_version( HB_VERSION_MT )          -> <logical>
      hb_version( HB_VERSION_UNIX_COMPAT ) -> <logical>
      hb_version( HB_VERSION_PLATFORM )    -> <string> (same as ending of __PLATFORM__* macros)
      This makes these functions/macros deprecated:
      - HB_MTVM()
      - __PLATFORM__* (not for all possible situations)
    ; TOFIX: Cleanup REVISION/SVN term usage in source.
    ; TOFIX: Remove HB_VER_* predefined macro usage on .prg level.
    ; TODO: Removed some deprecated by hb_version() functions/macros.

  * include/hbapi.h
  * source/vm/itemapi.c
  * source/common/hbstr.c
  * source/common/expropt2.c
  * source/rtl/chrasc.c
  * source/rtl/hbi18n.c
    * Minor formatting.
2008-11-02 06:34:42 +00:00
Viktor Szakats
0b9428bb37 2008-11-01 22:58 UTC+0200 Viktor Szakats (harbour.01 syenar hu)
* source/rtl/hbi18n.c
    * Modified __I18N_GETTEXT() to not RTE when trs table 
      is non-array (like NIL).
    * USHORT -> ULONG in a few places.

  * source/rtl/gtwvt/gtwvt.c
    * Minor formatting.
2008-11-01 22:01:15 +00:00
Viktor Szakats
a7df2a4a46 2008-11-01 17:52 UTC+0200 Viktor Szakats (harbour.01 syenar hu)
* source/rtl/gtwvt/gtwvt.c
    + Added support for HB_GTI_ICONRES, HB_GTI_ICONFILE 
      before the window is created.
    ! Fixed resource leak when HB_GTI_ICONFILE was used.
    ! Fixed problem with HB_GTI_ICONRES when it was resetting 
      the icon if a non-string/non-numeric parameter was passed
      passed, which included simply trying to read the value 
      using hb_gtInfo( HB_GTI_ICONRES ). If this was an intented 
      feature, pls speak up.
    ; Please review these changes.

(this file somehow didn't get committed previously)
2008-11-01 21:18:52 +00:00
Przemyslaw Czerpak
709ab59c03 2008-11-01 21:13 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/source/rtl/itemseri.c
    ! fixed 8-bytes integer numbers deserialization
    + added support for serializing number with information about size
      and decimal places. It can be activated by passing .T. as second
      parameter to HB_SERIALIZE() function.
      Mindaugas please test if this is what you asked for.

  * harbour/source/rtl/hbi18n.c
    * changed USHORT to ULONG to pacify warning and minor speed increase
      (it eliminates later conversions to 32bits when variable is used)
2008-11-01 20:12:42 +00:00
Przemyslaw Czerpak
8323c50cbf 2008-11-01 20:09 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/source/rtl/gtwvt/gtwvt.h
  * harbour/source/rtl/gtwvt/gtwvt.c
    ! fixed HB_GTI_SETPOS_ROWCOL and HB_GTI_SETPOS_XY parameters decoding
    * automatically resize caret when cell size is changed
    * show window after setting its all parameters to eliminate visible
      resizing and repositioning. It did not eliminate multiple calls to
      hb_gt_wvt_FitSize() when windows is created. This has to be fixed
      yet or at least low level actions in this function not repeated
      when window and font dimensions are the same as in last call.
      Please test it in real MS-Windows. It should reduce startup
      flickering and increase the speed of initial code.
2008-11-01 19:09:06 +00:00
Viktor Szakats
7ea5f756b4 2008-11-01 17:52 UTC+0200 Viktor Szakats (harbour.01 syenar hu)
* source/rtl/gtwvt/gtwvt.h
  * source/rtl/gtwvt/gtwvt.c
    + Added support for HB_GTI_ICONRES, HB_GTI_ICONFILE 
      before the window is created.
    ! Fixed resource leak when HB_GTI_ICONFILE was used.
    ! Fixed problem with HB_GTI_ICONRES when it was resetting 
      the icon if a non-string/non-numeric parameter was passed
      passed, which included simply trying to read the value 
      using hb_gtInfo( HB_GTI_ICONRES ). If this was an intented 
      feature, pls speak up.
    ; Please review these changes.
2008-11-01 16:55:11 +00:00
Viktor Szakats
e1e96bf597 2008-11-01 15:47 UTC+0200 Viktor Szakats (harbour.01 syenar hu)
* source/rtl/hbi18n.c
    % Removed 'comment' field from language file header. Any text 
      can be added simply by adding it to the translation table.

  * contrib/Makefile
    ! Missing hbdbgfx added here, too.
    ; BTW, I've intentionally left this lib out from the liblist 
      until we decide where to put these functions. There is 
      not much point maintaining for the sake of just a few functions.
      If there are no objections, I'll be moving these functions 
      to hbwin (until someone updates the code to work outside 
      Windows).
2008-11-01 14:56:01 +00:00
Przemyslaw Czerpak
989f28dd47 2008-11-01 13:41 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/source/common/hbgete.c
    ! fixed OS2 casting for non GCC compilers
2008-11-01 12:41:08 +00:00
Viktor Szakats
e226b165e1 2008-11-01 12:02 UTC+0200 Viktor Szakats (harbour.01 syenar hu)
* include/hbextern.ch
  * source/rtl/memofile.c
    + Added HB_MEMOREAD() which is identical to MEMOREAD() 
      except it won't truncate the last byte (on non-UNIX 
      compatible systems) if it's a EOF char.
      See also existing HB_MEMOWRIT().
      [TOMERGE 1.0]
2008-11-01 11:02:57 +00:00
Viktor Szakats
e6c3780c1b 2008-11-01 11:24 UTC+0200 Viktor Szakats (harbour.01 syenar hu)
* source/rtl/hbi18n.c
    * Minor change in header to separate it visually from comment 
      field.
2008-11-01 10:25:10 +00:00
Viktor Szakats
8b7c4d690c 2008-11-01 11:11 UTC+0200 Viktor Szakats (harbour.01 syenar hu)
* include/hbextern.ch
  * source/rtl/hbi18n.c
    % Using buffered hb_file*() API in __I18N_LOAD() 
      instead of plain hb_fs*(). This will cause speedup when 
      buffering gets implemented in hb_file*(), because 
      currently two hb_fsRead() will be executed for each 
      string stored in the language file.
    - __I18N_LOAD(): Because of the above, passing a file handle 
      is no longer possible.
    + Added __I18N_LOADFROMMEMORY( <mem> ) => trs
    % Minor internal cleanups.
2008-11-01 10:17:45 +00:00
Viktor Szakats
3ac4e62591 2008-11-01 08:45 UTC+0200 Viktor Szakats (harbour.01 syenar hu)
* include/hbextern.ch
  * common.mak
  * source/rtl/Makefile
  + source/rtl/hbi18n.c
    + Added basic/low level i18n functions:
      __I18N_SAVE( cFileName | nHandle, aSortedTable [, cComment ] ) => lSuccess
      __I18N_LOAD( cFileName | nHandle ) => trs
      __I18N_GETTEXT( @cText, trs ) => NIL
    ; NOTE: These were originally based on Giancarlo Niccolai's work in xhb, 
            but everything was completely reworked, fixed, internals removed, 
            made portable, lighter, shorter and probably quicker. The used file 
            format is incompatible, slightly smaller and portable.
    ; NOTE: The internal format of 'trs' (loaded translation) is also 
            different. For minimal memory/speed overhead, I've choosen a one 
            dimensional array, as opposed to the original two dimensional 
            (like the input aSortedTable array).
    ; TODO: Higher level functions to handle selecting a default 
            language, loading files automatically, possibly caching 
            multiple loaded language translations in memory and providing 
            a high level HB_I18N_GETTEXT() function. We may also readd 
            a low-level function to create 'trs' from a memory object 
            instead of loading it from the disk. We should in any case make 
            the higher level the lightest and less app specific as possible.

  * include/hbver.ch
  * source/rtl/version.c
  * utils/hbtest/rt_str.prg
  * ChangeLog
    ! Fixed returning bit width.
    * Reworked hb_version() parameter values as follows:
      (also fixed some differences between docs here in the 
      previous entry and actual code)
      HB_VERSION_HARBOUR        (was: HB_V_HARBOUR        )
      HB_VERSION_COMPILER       (was: HB_V_COMPILER       )
      HB_VERSION_MAJOR          (was: HB_V_MAJOR          )
      HB_VERSION_MINOR          (was: HB_V_MINOR          )
      HB_VERSION_MICRO          (was: HB_V_REV            )
      HB_VERSION_STATUS         (was: HB_V_STATUS         )
      HB_VERSION_REVISION       (was: HB_V_COUNT          )
      HB_VERSION_BLD_DATE_STR   (was: HB_V_DATE_TIME      )
      HB_VERSION_BLD_DATE       (was: HB_V_DATE           )
      HB_VERSION_BLD_TIME       (was: HB_V_TIME           )
      HB_VERSION_PCODE_VER      (was: HB_V_PCODE          )
      HB_VERSION_PCODE_VER_STR  (was: HB_V_PCODE_STR      )
      HB_VERSION_CHANGELOG_LAST (was: HB_V_CHANGELOG_LAST )
      HB_VERSION_CHANGELOG_REV  (was: HB_V_CHANGELOG_REV  )
      HB_VERSION_FLAG_PRG       (was: HB_V_FLAG_HARBOUR   )
      HB_VERSION_FLAG_C         (was: HB_V_FLAG_C         )
      HB_VERSION_FLAG_LINKER    (was: HB_V_FLAG_LINKER    )
      HB_VERSION_BITWIDTH       (was: HB_V_BITWIDTH       )
      HB_VERSION_ENDIANNESS     (was: HB_V_ENDIANNESS     )
      This function makes deprecated following functions:
      - HB_COMPILER() => hb_version( HB_VERSION_COMPILER )
      - HB_PCODEVER() => hb_version( HB_VERSION_PCODE_VER_STR )
      - HB_BUILDDATE() => hb_version( HB_VERSION_BLD_DATE_STR )
      and macros:
      - __ARCH16BIT__
      - __ARCH32BIT__
      - __ARCH64BIT__
      - __LITTLE_ENDIAN__
      - __BIG_ENDIAN__
      - __PDP_ENDIAN__
      - HB_VER_SVNID
      - HB_VER_CHLID
      - HB_VER_LENTRY 
      - HB_VER_C_USR
      - HB_VER_L_USR
      - HB_VER_PRG_USR
    ; TOFIX: Some term anomalies regarding 'REVISION'.

  * source/vm/runner.c
    * Minor formatting and added "s_" prefix to static var.
2008-11-01 08:28:42 +00:00
Pritpal Bedi
8bba7589d4 2008-10-30 21:24 UTC-0800 Pritpal Bedi (pritpal@vouchcac.com)
* harbour/source/rtl/gtwvt/gtwvt.c 
  * harbour/source/rtl/gtwvt/gtwvt.h 
    + Transfereed two static variables to HB_GTWVT structure. 
      Multi-thread/console protection.
2008-10-31 14:08:09 +00:00
Przemyslaw Czerpak
ecc87c1bf3 2008-10-31 13:54 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/source/vm/dynlibhb.c
  * harbour/source/common/hbgete.c
  * harbour/source/common/hbfsapi.c
  * harbour/source/rtl/hbinet.c
  * harbour/source/rtl/hbffind.c
  * harbour/source/rtl/filesys.c
  * harbour/contrib/hbct/files.c
  * harbour/contrib/hbmzip/hbmzip.c
  * harbour/contrib/hbgf/hbgfos2/os2pm.c
    * cleanup casting in OS2 builds (use PCSZ/PSZ)
2008-10-31 12:53:52 +00:00
Viktor Szakats
3876864996 2008-10-31 02:14 UTC+0200 Viktor Szakats (harbour.01 syenar hu)
* source/vm/dlmalloc.c
    ! Fixed minor MinGW warning. This fix also exists 
      as part of the next dlmalloc version (2.8.4b).
2008-10-31 01:14:51 +00:00
Viktor Szakats
cc2e8c09b9 2008-10-31 02:05 UTC+0200 Viktor Szakats (harbour.01 syenar hu)
* make_b32.mak
  * contrib/mtpl_b32.mak
  * config/w32/bcc32.cf
    - Added -4 switch, which means Intel 386 CPUs are not 
      not supported by default.

  * make_vc.mak
    + Added -GA switch to MSVC 32/64 which creates smaller 
      (and only slightly faster) TLS access code.

  * source/compiler/cmdcheck.c
  * source/compiler/hbusage.c
    + Added -/+ suboptions to -k? options to make it 
      possible to set them to the opposite setting.
    ; NOTE: BTW, shouldn't -ki option also disable 
            #pragma BEGINDUMP/ENDDUMP? IMO it should, 
            otherwise it doesn't really enforce C 
            out of .prg code.

  * config/w32/gcc.cf
  * config/w32/mingw.cf
    * Changed -march=i486 to -march=i586.

  ; NOTE: Please comment on CPU optimization switches, IMO 
          we can quite safely target Pentium/586 as the 
          minimum CPU requirement these days for default 
          Harbour builds. If someone needs to run it on 
          386 (Win95) or 486 (Win98/WinME), a special built 
          can be created.
2008-10-31 01:07:44 +00:00
Przemyslaw Czerpak
6822b74b3d 2008-10-30 15:03 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/include/hbvmpub.h
    + added HB_VM_ISFUNC(), HB_VM_FUNCUNREF() and HB_VM_EXECUTE()
      macros to operate on HB_SYMB structure

  * harbour/source/vm/hvm.c
  * harbour/source/vm/classes.c
     * use HB_VM_ISFUNC()/HB_VM_FUNCUNREF()/HB_VM_EXECUTE() macros
       for executing function inside HB_SYMB structure to avoid possible
       synchronization problems during modifications
2008-10-30 14:03:16 +00:00
Viktor Szakats
011f9978ad 2008-10-30 00:10 UTC+0200 Viktor Szakats (harbour.01 syenar hu)
* ChangeLog
    + Clarification to previous entry.

  * source/common/hbgete.c
  * source/common/hbfsapi.c
    ! Blind fix for OS/2 compiler warnings. David, please test.

  * source/rtl/philes.c
    * Minor (0 -> '\0').

  * source/compiler/hbusage.c
    ! Fixed old typo in help text.
    ; BTW: What is missing for gettext support?
2008-10-29 23:11:35 +00:00
Przemyslaw Czerpak
9ef577fbc0 2008-10-29 18:33 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/include/hbgtcore.h
  * harbour/source/rtl/hbgtcore.c
    + added PHB_GT hb_gt_ItemBase( PHB_ITEM pItemGT )
2008-10-29 17:32:40 +00:00
Przemyslaw Czerpak
a398da282e 2008-10-29 17:06 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/include/hbcompdf.h
  * harbour/include/hbexprb.c
  * harbour/source/common/expropt1.c
  * harbour/source/common/expropt2.c
    ! change the expressions precedence - references to variables were
      wrongly marked as simple expressions

  * harbour/include/hbexpra.c
    ! fixed protection against wrong static initializers. Now code like:
         static s_var := { { func(), M->var } }
      or:
         static s_var := { "A" => { func() => M->var } }
      or:
         static s_var := { @M->var }
      or:
         static s_var := QSelf()
      is not accepted by compiler and error is generated at compile
      time instead of crashing at HVM startup when static variables
      are initialized
2008-10-29 16:06:31 +00:00
Przemyslaw Czerpak
e9657ea9d8 2008-10-28 20:08 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/include/hbstack.h
  * harbour/source/vm/estack.c
    + added hb_stackReleaseTSD() function - this function can be called
      only in HVM cleanup state when all threads except the main one are
      released

  * harbour/source/rdd/dbf1.c
  * harbour/source/rdd/dbffpt/dbffpt1.c
  * harbour/source/rdd/dbfntx/dbfntx1.c
  * harbour/source/rdd/dbfcdx/dbfcdx1.c
    * make RDDINFO settings in BDF* based RDDs thread local

  * harbour/include/hbclass.ch
    * minor modification
2008-10-28 19:08:28 +00:00
Przemyslaw Czerpak
9918ec3fc5 2008-10-28 17:56 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/source/vm/dynlibhb.c
    ! added #define INCL_DOSMODULEMGR for OS2 builds
2008-10-28 16:56:13 +00:00
Przemyslaw Czerpak
b22e96d54d 2008-10-28 12:53 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/source/rtl/gtwvt/gtwvt.h
  * harbour/source/rtl/gtwvt/gtwvt.c
    + added support for creating console window after 1-st screen update
      Please remember that it interacts with inkey() code which does not
      work until windows is not created.
      Now it should be quite easy to add support for some initializations
      before window is created. Probably it will be necessary to change
      INFO() method and store settings in some pWVT variables if pWVT->hWND
      is NULL and then use them as parameters for new console window.
      I'd like to leave this modification to MS-Windows developers.

  * harbour/contrib/xhb/xhbcopyf.c
    ! fixed name conflict with hb_fsCopy()
2008-10-28 11:53:43 +00:00
Przemyslaw Czerpak
9af43b48eb 2008-10-28 10:43 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/source/vm/hvm.c
    ! added missing HB_STACK_PRELOAD
2008-10-28 09:43:32 +00:00
Viktor Szakats
099b630b50 2008-10-28 10:42 UTC+0200 Viktor Szakats (harbour.01 syenar hu)
* source/rtl/copyfile.c
    ! Fixed hb_fsCopy() name collision with static function.
2008-10-28 09:42:30 +00:00
Przemyslaw Czerpak
ecddf89923 2008-10-28 10:24 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/include/hbxvm.h
  * harbour/source/vm/hvm.c
  * harbour/source/compiler/gencc.c
    + added finished by mistake support for hidden strings in -gc3 mode
2008-10-28 09:24:37 +00:00
Viktor Szakats
f424b51417 2008-10-28 09:44 UTC+0200 Viktor Szakats (harbour.01 syenar hu)
* contrib/examples/guestbk/inifiles.prg
  * contrib/examples/guestbk/testcgi.prg
  * contrib/examples/guestbk/guestbk.prg
  * contrib/examples/guestbk/bld_b32.bat
  * contrib/examples/guestbk/bld_vc.bat
  * contrib/examples/pe/bld_b32.bat
  * contrib/examples/pe/bld_vc.bat
  * contrib/examples/pe/editorhi.prg
    * Minor updates, optimizations.

  * source/rtl/version.c
    % Using better method to return HB_V_BITWIDTH.

  * utils/hbtest/rt_str.prg
    ! Changed to use 'hb_version( HB_V_BITWIDTH ) >= 64' 
      instead of #ifdef __ARCH64BIT__.
2008-10-28 08:45:18 +00:00
Viktor Szakats
df0a70e6be 2008-10-28 01:52 UTC+0200 Viktor Szakats (harbour.01 syenar hu)
* include/Makefile
  * include/hbextern.ch
  + include/hbver.ch
  * source/rtl/version.c
    + Added HB_VERSION() unified version information 
      function. This can return these version related data:
      hb_version( HB_V_HARBOUR )        => <string>
      hb_version( HB_V_COMPILER )       => <string> 
      hb_version( HB_V_MAJOR )          => <num> 
      hb_version( HB_V_MINOR )          => <num> 
      hb_version( HB_V_REV )            => <num> 
      hb_version( HB_V_STATUS )         => <string> 
      hb_version( HB_V_COUNT )          => <num> 
      hb_version( HB_V_DATE_TIME )      => <string> 
      hb_version( HB_V_DATE )           => <date> 
      hb_version( HB_V_TIME )           => <string>
      hb_version( HB_V_PCODE )          => <num> 
      hb_version( HB_V_PCODE_STR )      => <string> 
      hb_version( HB_V_CHANGELOG_LAST ) => <string> 
      hb_version( HB_V_CHANGELOG_REV )  => <string> 
      hb_version( HB_V_FLAG_HARBOUR )   => <string> 
      hb_version( HB_V_FLAG_C )         => <string> 
      hb_version( HB_V_FLAG_LINKER )    => <string> 
      hb_version( HB_V_BITWIDTH )       => <num> 
      hb_version( HB_V_ENDIANNESS )     => <num> 
      This function makes deprecated following functions:
      - HB_COMPILER() => hb_version( HB_V_COMPILER )
      - HB_PCODEVER() => hb_version( HB_V_PCODE_VER_STR )
      - HB_BUILDDATE() => hb_version( HB_V_DATE_TIME )
      and macros:
      - __ARCH16BIT__
      - __ARCH32BIT__
      - __ARCH64BIT__
      - __LITTLE_ENDIAN__
      - __BIG_ENDIAN__
      - __PDP_ENDIAN__
    ; NOTE: If there are no objections, I'd remove the 
            __ARCH*BIT__ and __*ENDIAN__ predefined macros, 
            as these can be misleading on some systems.
    ; TODO: Implement HB_V_DATE and HB_V_TIME.
    ; TODO: Add HB_MTVM() functionality.
    ; TODO: Add __PLATFORM__* equivalent.
    ; TODO: Add HB_OS_UNIX_COMPATIBLE equivalent.

  * include/hbextern.ch
  * include/hbapifs.h
  * common.mak
  * source/rtl/Makefile
  + source/rtl/fscopy.c
    + Added C level hb_fsCopy() function.
    + Added .prg level HB_FCOPY() function.
2008-10-28 02:20:23 +00:00
Viktor Szakats
1d64164476 2008-10-28 00:57 UTC+0200 Viktor Szakats (harbour.01 syenar hu)
* include/hbextern.ch
  * source/vm/cmdarg.c
    + Added HB_CMDLINE() .prg level function to return 
      the full command line. Currently it does reassemble 
      it from hb_argc/hb_argv.

  * contrib/rddsql/mysqldd.c
    ! Fixed MSVC casting errors in C++ mode.

  * include/hbwmain.c
  * source/vm/cmdarg.c
    * Moved argv[ 0 ] generation on Windows platform, so 
      that it now gets properly filled with the full 
      executable file path for console mode (GTWIN) 
      apps in all situations (f.e. when run from a 
      batch file using '%~n1.exe' macro).

  * source/rtl/hbinet.c
    ! Fixed to use safe strerror() (named strerror_s()) 
      under MSVS 2005 and upper.
      Please test.

  * source/hbzlib/gzio.c
    + Added _CRT_SECURE_NO_DEPRECATE locally to suppress 
      various MSVC unsafe CRT API usage warnings. Maybe it'd 
      be better to fix these by using Harbour APIs.

  * utils/hbdoc/gentrf.prg
    ! Fixed missing "common.ch"
2008-10-28 00:07:16 +00:00
Viktor Szakats
75f19c85c4 2008-10-27 23:38 UTC+0200 Viktor Szakats (harbour.01 syenar hu)
* contrib/hbmysql/tmysql.prg
  * contrib/xhb/hbcompat.ch
  * contrib/xhb/dirrec.prg
  * contrib/xhb/txml.prg
  * contrib/xhb/hblog.prg
  * contrib/xhb/cstruct.prg
  * contrib/hbodbc/todbc.prg
  * contrib/hbtpathy/telepath.prg
  * contrib/hbmsql/tmsql.prg
  * contrib/hbpgsql/tpostgre.prg
  * contrib/hbgd/gd.prg
  * contrib/hbgd/gdimage.prg
  * contrib/hbgd/gdbarcod.prg
  * contrib/hbgd/gdchart.prg
  * contrib/hbgd/gdbar.prg
  * contrib/hbmisc/stringp.prg
  * contrib/hbtip/thtml.prg
  * contrib/hbtip/popcln.prg
  * contrib/hbtip/sendmail.prg
  * contrib/hbtip/cgi.prg
  * contrib/hbtip/httpcln.prg
  * contrib/hbtip/encoder.prg
  * contrib/hbtip/smtpcln.prg
  * contrib/hbtip/mail.prg
  * contrib/hbtip/ftpcln.prg
  * contrib/hbwin/win_reg.prg
  * contrib/hbwin/win_tole.prg
  * source/rdd/usrrdd/rdds/arrayrdd.prg
  * source/rdd/usrrdd/rdds/hscdx.prg
  * source/rdd/usrrdd/rdds/rlcdx.prg
  * utils/hbdoc/genos2.prg
  * utils/hbdoc/genng.prg
  * utils/hbdoc/genchm.prg
  * utils/hbdoc/genhtm.prg
  * utils/hbdoc/genrtf.prg
  * utils/hbdoc/gentrf.prg
  * utils/hbmake/hbmake.prg
    % 'ValType() == "?"' -> IS*()
    % *trim( Str() ) -> hb_NToS()
    ; In few places in hbtip the length limit 
      was removed from Str(), as it was used 
      inconsistently and could also cause 
      infinite loops and invalid filenames.
    % Some other minor updates.
2008-10-27 22:40:04 +00:00
Viktor Szakats
1239fa60dd 2008-10-27 22:39 UTC+0200 Viktor Szakats (harbour.01 syenar hu)
* tests/db_brows.prg
   * contrib/hbmysql/tmysql.prg
   * contrib/hbnf/miltime.prg
   * contrib/hbnf/mouse1.prg
   * contrib/hbnf/sleep.prg
   * contrib/hbnf/d2e.prg
   * contrib/hbnf/easter.prg
     * '&&' comments changed to '//' for all Harbour SVN.

   * contrib/gtwvg/wvgclass.prg
   * source/rdd/hbsix/sxcompat.prg
     ! Fixed '&&' being used instead of '.AND.' in code.
     ; NOTE: This '&&' comment compatibility is a lot more 
             dangerous than it's useful. It'd vote for 
             a compiler warnings switch for any of it's 
             occurences.

   * source/rtl/tbcolumn.prg
   * source/rtl/tget.prg
   * source/rtl/tbrowse.prg
   * contrib/xhb/hbcompat.ch
     ! Fixed '&&' being used instead of '.AND.' in #ifs.

   * source/rdd/hbsix/sxini.prg
   * source/rdd/hbsix/sxcompat.prg
   * source/rdd/hbsix/sxtrig.prg
     * 'end' -> 'endswitch'
     % 'ValType() == "x"' -> 'IS*()'
     ; TODO: Reformat to Harbour standards.
2008-10-27 21:43:51 +00:00
Viktor Szakats
c4636942ec 2008-10-27 21:43 UTC+0200 Viktor Szakats (harbour.01 syenar hu)
* contrib/Makefile
  * contrib/make_vc_all.bat
  * contrib/make_b32_all.bat
  * contrib/make_gcc_all.sh
    + Added rddsql to default builds.
      Please test.

  * contrib/hbdbgfx/dbgfxc.c
    * Added TODO. (multiplatform support in one the functions)

  * include/hbsetup.h
  * include/hbexprb.c
  * contrib/hbct/ctnet.c
  * contrib/hbct/color.c
  * contrib/hbct/dattime2.c
  * contrib/xhb/hboutdbg.c
  * contrib/hbtpathy/tpwin32.c
  * contrib/hbmzip/hbmzip.c
  * contrib/hbsqlit3/hbsqlit3.c
  * contrib/hbfbird/firebird.c
  * contrib/hbziparc/hbzipcpp.old
  * contrib/hbnf/getver.c
  * contrib/hbpgsql/postgres.c
  * contrib/hbclipsm/gauge.c
  * contrib/rddads/adsfunc.c
  * contrib/rddads/ads1.c
  * contrib/hbgd/gdwrp.c
  * contrib/hbmisc/spd.c
  * contrib/hbtip/utils.c
  * contrib/hbwin/win_prt.c
  * contrib/examples/pp/hbppcore.c
  * contrib/examples/pp/hbppcomp.c
  * source/pp/pplib.c
  * source/pp/ppcore.c
  * source/pp/hbpp.c
  * source/vm/estack.c
  * source/vm/debug.c
  * source/vm/itemapi.c
  * source/vm/hvm.c
  * source/vm/cmdarg.c
  * source/vm/fm.c
  * source/vm/extrap.c
  * source/vm/classes.c
  * source/main/harbour.c
  * source/common/hbver.c
  * source/common/hbverdsp.c
  * source/common/hbstr.c
  * source/common/hbdate.c
  * source/rtl/gtxwc/gtxwc.c
  * source/rtl/hbgtcore.c
  * source/rtl/gtcrs/gtcrs.c
  * source/rtl/errorint.c
  * source/rtl/gtsln/gtsln.c
  * source/rtl/gttrm/gttrm.c
  * source/rtl/gtpca/gtpca.c
  * source/rtl/fkmax.c
  * source/rtl/langapi.c
  * source/rtl/hbffind.c
  * source/rdd/workarea.c
  * source/rdd/sdf1.c
  * source/rdd/delim1.c
  * source/rdd/dbf1.c
  * source/rdd/wafunc.c
  * source/compiler/hbmain.c
  * source/compiler/cmdcheck.c
  * source/compiler/hbpcode.c
  * source/compiler/genhrb.c
  * source/compiler/gencobj.c
  * source/compiler/genobj32.c
  * source/compiler/genc.c
  * source/compiler/hbusage.c
  * source/compiler/hbfunchk.c
  * source/compiler/hbgenerr.c
  * utils/hbmake/hbmgauge.c
    * Changed snprintf() calls to hb_snprintf().
    ; TODO: Finish the mappings in headers.

  * tests/wvtext.prg
  * include/inkey.ch
  * source/rtl/gtwvt/gtwvt.c
    * Changed K_HB_RESIZE to HB_K_RESIZE. The reason is 
      that we already got a HB_K_MULTICODE code (few lines 
      below, I didn't know about it before), and it's better 
      to keep consistency with that.
2008-10-27 20:55:24 +00:00
Przemyslaw Czerpak
f1b59f3482 2008-10-27 20:06 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/source/rtl/setkey.c
    ! fixed GPF in HB_SETKEYGET() when bActive block is used
2008-10-27 19:06:10 +00:00
Viktor Szakats
e0320788be 2008-10-27 18:38 UTC+0200 Viktor Szakats (harbour.01 syenar hu)
* source/pp/ppcore.c
    - Removed duplicate TEXTHIDDEN #pragma implementation.

  * source/vm/arrayshb.c
    * Reset defaults of last parameters of hb_AINS()/hb_ADEL()
2008-10-27 17:38:29 +00:00
Przemyslaw Czerpak
4e457b25f1 2008-10-27 18:05 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/include/hbdefs.h
    + added HB_PRINTF_FORMAT() macro to declare functions with printf()
      like formatting parameters - now it works only for GCC compilers.

  * harbour/include/hbapi.h
    * declare hb_snprintf() with HB_PRINTF_FORMAT() attribute

  * harbour/source/rtl/philes.c
    + set FERROR() in HB_FLOCK()/HB_FUNLOCK()
    + accept extended lock attributes (WAIT/SHARE) in HB_FLOCK()
2008-10-27 17:05:30 +00:00
Viktor Szakats
97b1d094e5 2008-10-27 15:24 UTC+0200 Viktor Szakats (harbour.01 syenar hu)
* source/compiler/gencc.c
    ! Fixed -gc3 double number handling problem.
      Many thanks to Przemek for the fix.
      [TOMERGE 1.0]
2008-10-27 14:24:32 +00:00
Viktor Szakats
194f8514e9 2008-10-27 15:18 UTC+0200 Viktor Szakats (harbour.01 syenar hu)
* source/rtl/tbrowse.prg
  * source/debug/debugger.prg
    ! Cleaned hb_AINS()/hb_ADEL() usage after changing the 
      default of the last parameter.
      Should fix the recent TBrowse() crash.
    ; NOTE: I'll rethink the defaulting situation at least 
            for hb_AINS().
2008-10-27 14:20:10 +00:00
Viktor Szakats
d7af644364 2008-10-27 14:47 UTC+0200 Viktor Szakats (harbour.01 syenar hu)
* include/hbextern.ch
  * source/rtl/philes.c
    + Added HB_FLOCK() / HB_FUNLOCK() file locking 
      functions.
      [TOMERGE 1.0]

  * source/rtl/tget.prg
    ! Accessing of Get() variables below made 
      C5.x compatible when a new value was 
      assigned to them as function call, rather 
      then normal assigment.
      :buffer, :changed, :clear, :col, :colorSpec
      :minus, :pos, :row, :subScript, :postBlock, 
      :preBlock, :cargo, :exitState, :reader.
    ; NOTE: Please report if any of the side cases 
            still don't work.
      [TOMERGE 1.0]
2008-10-27 13:48:01 +00:00
Viktor Szakats
d1dc70f971 2008-10-27 12:03 UTC+0200 Viktor Szakats (harbour.01 syenar hu)
* make_vc.mak
  * contrib/mtpl_vc.mak
    - Removed no longer necessary '-D_CRT_SECURE_NO_DEPRECATE' 
      for MSVS 2005 and upper.

  * include/hbsetup.h
    * Mapping snprintf() calls to hb_snprintf().
    ; TODO: Replace the calls in source code.

  * source/common/hbstr.c
    ! Fixed hb_snprintf(). Please verify on your platforms.
    ; TODO: It may need further tweaking to smooth out the 
            platform implementation differences.
2008-10-27 11:11:02 +00:00
Viktor Szakats
b5e9969713 2008-10-27 11:29 UTC+0200 Viktor Szakats (harbour.01 syenar hu)
* include/hbapi.h
  * source/common/hbstr.c
    + Added return value to hb_snprintf().
2008-10-27 10:30:03 +00:00
Viktor Szakats
bfd31350c2 2008-10-27 11:26 UTC+0200 Viktor Szakats (harbour.01 syenar hu)
* source/common/hbstr.c
    * Some tweaks to hb_snprintf(). It still doesn't work 
      for some reason.

  * include/hbapi.h
    + Added hb_snprintf() to header.

  * source/debug/dbgentry.c
    * Changed strcpy() to hb_strncpy(). Chances are high 
      this is wrong. Please review and test.
2008-10-27 10:26:54 +00:00
Viktor Szakats
2a1b6c0d64 2008-10-27 10:37 UTC+0200 Viktor Szakats (harbour.01 syenar hu)
* source/pp/ppcore.c
    + Added '#pragma TEXTHIDDEN=<ON | OFF>' to control the 
      existing -texthidden option to add light encoding to 
      strings embedded in code. Since this goes with a slight 
      performance hit and it's rarely used, it might be useful 
      to turn it on only for code parts that really needs this.

  * source/rtl/tget.prg
    * Corrected an assigment to follow official syntax.
2008-10-27 09:38:26 +00:00
Viktor Szakats
32909568c0 2008-10-27 00:01 UTC+0200 Viktor Szakats (harbour.01 syenar hu)
* source/common/hbver.c
    * Changed to include bitness even for DJGPP.
    * Changed "(* bit)" to "(*-bit)"
    ; NOTE: We have __ARCH*BIT__ but this macro is misleading 
            and cannot be used properly on platforms where the 
            compiler is able to generate multiple targets in 
            one build pass. Such system is Darwin/OSX.
            I'd suggest to consider removing this macro, and 
            rather adding a function to return bitness.
            Any opininons?
2008-10-26 23:04:57 +00:00
Viktor Szakats
79708d30b0 2008-10-26 22:25 UTC+0200 Viktor Szakats (harbour.01 syenar hu)
* source/common/hbfopen.c
    * Changed hb_fopen() to use fopen_s(), secure version of 
      fopen() for MSVS 2005 and upper.

  * source/common/hbstr.c
    + Added hb_snprintf() Harbour wrapper for snprintf() which 
      terminates the buffer with a '\0' char for CRTLs that 
      need this (like MSVC).
      MSVC _snprintf() doesn't do so.
    * hb_snprintf() used _snprintf_s(), secure version of 
      _snprintf() for MSVS 2005 and upper.
    ; TOFIX: There is still one strcpy() marked as non-secure 
             in debug lib. Could someone please take a look 
             at it and replace it with hb_strncpy() or something 
             else secure? The code is cryptic and as someone 
             not using the debugger, I didn't dare to touch it, 
             and this is the only one such call left.
    ; TODO: Change all snprintf() calls to hb_snprintf().
            When that happens, Harbour will no more use anything 
            depicted as "non-secure" by MSVS 2005/2008.
    ; NOTE: This function may need tweaking, pls review and 
            fix if/where needed.

  * source/vm/dlmalloc.c
    ! Fixed MSVC C++ mode compile error. This fix also exists 
      as part of the next dlmalloc version (2.8.4b).

2008-10-26 07:27 UTC+0200 Viktor Szakats (harbour.01 syenar hu)
  * contrib/hbdbgfx/dbgfx.prg
    * Minor cleanup.
 
  * contrib/hbdbgfx/dbgfxc.c
    ! Fixed GPF when non-string parameter passed to 
      hb_outdebug().
2008-10-26 21:43:34 +00:00
Pritpal Bedi
32b21b9bfd 2008-10-25 17:55 UTC-0800 Pritpal Bedi (pritpal@vouchcac.com)
* harbour/include/hbgtinfo.ch
    + Added HB_GTI_SETPOS_XY
    + Added HB_GTI_SETPOS_ROWCOL
  
  * harbour/rtl/gtwvt/gtwvt.c
    ! Updated to honor HB_GTI_SETPOS_XY | HB_GTI_SETPOS_ROWCOL commands.

  * harbour/tests/wvtext.prg
    ! Updated to demonstrate HB_GTI_SETPOS_XY|ROWCOL window positioning.

    ; Now every next browser window opens 20x20 pixels away from 
      previous window, a GT imposed Z-Order.
2008-10-26 01:00:37 +00:00
Pritpal Bedi
68a537991b 2008-10-25 14:49 UTC-0800 Pritpal Bedi (pritpal@vouchcac.com)
* harbour/rtl/gtwvt/gtwvt.h
    + Added <ResizeMode> member to HB_GTWVT

  * harbour/include/hbgtinfo.ch
    + Added HB_GTI_RESIZEMODE 
    + Added HB_GTI_RESIZEMODE_FONT
    + Added HB_GTI_RESIZEMODE_ROWS

  * harbour/include/inkey.ch
    + Added K_HB_RESIZE  1101

  * harbour/rtl/gtwvt/gtwvt.c
    ! Updated to accomodate HB_GTI_RESIZEMODE.

  * harbour/rtl/hbgtcore.c
    ! static BOOL hb_gt_def_Info( PHB_GT pGT, int iType, PHB_GT_INFO pInfo )
      {
         case HB_GTI_RESIZEMODE:
            pInfo->pResult = hb_itemPutNInt( pInfo->pResult, HB_GTI_RESIZEMODE_FONT );
            break;

  * harbour/tests/wvtext.prg
    ! Updated to demonstrate K_HB_RESIZE event in navigation loop.
    ; Odd numbered windows will have HB_GTI_RESIZEMODE_ROWS mode
      Even numbered windows will have HB_GTI_RESIZEMODE_FONT mode.
      Open two or more browsers to see the effects. 

    ; To activate HB_GTI_RESIZEMODE_ROWS mode call
         hb_gtInfo( HB_GTI_RESIZEMODE, HB_GTI_RESIZEMODE_ROWS )
      and whenever window will be resized you can retrieve it via 
         if inkey() == K_HB_RESIZE
            // Reconfigure browser/your screen accordingly
         endif
2008-10-25 22:08:57 +00:00
Przemyslaw Czerpak
293fccdbff 2008-10-25 12:58 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/source/rtl/gtwvt/gtwvt.h
  * harbour/source/rtl/gtwvt/gtwvt.c
    * eliminated few static variables
    ! fixed possible race condition when new window is created by adding
      mutex protection
2008-10-25 10:57:55 +00:00
Viktor Szakats
704090a093 2008-10-24 13:57 UTC+0200 Viktor Szakats (harbour.01 syenar hu)
* source/vm/arrayshb.c
    * Changed the default for the last logical parameter of 
      HB_AINS()/HB_ADEL() to be .T.
      This way there is no need to pass this parameter if someone 
      wants to actually use the extended nature of these functions.
      Passing a .F. will result in equivalent functionality to 
      AINS()/ADEL(). Essentially the last parameter is just there 
      for compatibility.
2008-10-24 11:58:56 +00:00