Commit Graph

1646 Commits

Author SHA1 Message Date
Przemyslaw Czerpak
cf69097383 2008-03-12 17:43 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/include/hbapi.h
  * harbour/source/common/hbver.c
  * harbour/source/rtl/gttone.c
    * added hb_iswince() and fixed TONE() for WinCE

  * harbour/source/rtl/math.c
    ! added workaround for SIGFPE platforms which generate it instead of
      setting errno during execution of math functions

  * harbour/source/rtl/gtcrs/hb-charmap.def
    ! remap 0x9b (155) to '.' in Linux terminals - it's control code

  * harbour/source/rdd/dbsql.c
  * harbour/source/rdd/workarea.c
  * harbour/source/rdd/dbf1.c
    ! always restore current workarea in WA EVAL() method
    ! always use EVAL() method for user codeblocks and macros

  * harbour/source/rdd/dbcmd.c
    ! fixed DBRELATION() called without numeric parameters or with 0 to
      return first relation expression (Clipper compatible)

  * harbour/contrib/hbtip/thtml.prg
    ! fixed wrongly ported to Harbour xHarbour specific code

  * harbour/source/common/hbstr.c
    + added missing const in one declaration
    * formatting

  * harbour/source/rtl/transfrm.c
    ! fixed casting for C++ compilers

  * harbour/source/rtl/errorapi.c
  * harbour/source/rdd/dbfntx/dbfntx1.c
    ! cleanup warnings

  * harbour/source/common/hbtrace.c
  * harbour/source/rdd/dbcmdx.c
  * harbour/source/rdd/wafunc.c
  * harbour/source/rdd/dbffpt/dbffpt1.c
  * harbour/source/rdd/hbsix/sxcrypt.c
    * formatting
2008-03-12 16:44:16 +00:00
Przemyslaw Czerpak
09566a5c88 2008-03-10 13:10 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/include/hbapifs.h
    ! default usage of BSD locks in *BSD systems for emulating
      DOS/Windows DENY_* flags has been disabled because tests
      on FreeBSD 6.2 and MacOSX shows that this implementation
      can create self deadlock when used simultaneously with
      POSIX locks - thanks to Phil and Lorenzo for locating the
      problem and tests.
2008-03-10 12:10:39 +00:00
Przemyslaw Czerpak
9cb4e6047d 2008-03-05 19:10 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/contrib/hbct/screen2.c
    ! fixed possible vary bad bug (memory buffer overflow) in SCREENSTR()

  * harbour/source/rtl/hbffind.c
    ! fixed possible GPF in some *nixes

  * harbour/source/vm/classes.c
    ! do not execute the same destructor inherited from different parent
      classes more then once

  * harbour/source/rtl/transfrm.c
    ! fixed bug with '9' used as stop condition of function pattern
      this character cannot be stripped, f.e.:
        ? transform( "abc", "@_99*" )
    ! fixed bug with '*' or '$' used with @), f.e.:
        ? transform( -12345, "@) $999999" )
    ! fixed replacing '.' with ',' when @E is used without picture part, f.e.:
        ? transform( 123.45, "@E" )
    ! fixed ',' conversions
        ? transform( 12.34,"@E ab,cd.ef9,9.99,.--" )
    ! fixed bug with picture starting with ".", f.e.:
	? transform( 0.3456, ".999" )
    ! fixed "@(" and "@)" conversions, f.e.:
        ? transform( -12345, "@) 1999*999" )
    ! fixed late oveflow detection in "@(" and "@)", f.e.:
        ? transtest( -12345, "@( 6798^999" )
    ! fixed "@E" conversion for dates to keep user delimiters set in
      _SET_DATEFORMAT, f.e.:
        set( _SET_DATEFORMAT, "mm:dd:yyyy" ); ? transform( date(), "@E" )
        set( _SET_DATEFORMAT, "yyyy<mm>dd" ); ? transform( date(), "@E" )
      Please note that Harbour is not strictly Clipper compatible here
      because it respects _SET_DATEFORMAT set by user.
    ! fixed 64bit integer conversion by eliminating conversion to
      'double' f.e.:
        ? transform(  1234567890123456789, "99999999999999999999" )
        ? transform( -1234567890123456789, "99999999999999999999" )
    ! some other fixes, see regression test transtst.prg
    % speed improvement in numeric conversions

  + harbour/tests/transtst.prg
    + added regression test for transform function

  * harbour/utils/hbtest/rt_trans.prg
    * disabled transform() tests for "@E" and result smaller then 5 bytes
      CA-Cl*pper do not check result size and always exchanges
      bytes 1-2 with bytes 4-5 for @E conversion. It's buffer overflow
      bug and I do not want to replicate it inside our transform
      implementation. It also causes that the results for for strings
      smaller then 5 bytes behaves randomly.
      In fact precise tests can show that it's not random behavior
      but CA-Cl*pper uses static buffer for result and when current one
      is smaller then 5 bytes then first two bytes are replaced with
      4-5 bytes from previous result which was length enough, f.e.:
               ? transform( "0123456789", "" )
               ? transform( "AB", "@E" )
               ? transform( "ab", "@E" )
      Replicating exact CA-Cl*pper behavior it's trivial (it will be enough
      to use static buffer two and not check the size of current result) but
      IMHO it's bug.

  * harbour/source/rtl/round.c
    * added strictly Clipper compatible code covered by HB_C52_STRICT
      and comment about possible difference in Harbour.

  * harbour/include/hbgtinfo.ch
  * harbour/source/rtl/hbgtcore.c
  * harbour/source/rtl/gtxwc/gtxwc.c
  * harbour/source/rtl/gtsln/gtsln.c
  * harbour/source/rtl/gttrm/gttrm.c
  * harbour/source/rtl/gtwvt/gtwvt.c
    + added HB_GTI_ISUNICODE - it returns logical value with information
      about Unicode mode in active GT driver - it's necessary for proper
      CP initialization in some GTDs which can work in both mode depending
      on client side settings

  * harbour/source/rtl/gttrm/gttrm.c
    * improved UTF-8 detection
    * added automatic PuTTY detection
    * improved PuTTY and some xterm key handling
    * added some missing RXVT keys
2008-03-05 18:10:52 +00:00
Przemyslaw Czerpak
64fe300fc3 2008-02-16 11:28 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/include/hbdate.h
    ! fixed limitation which forced to use hbdate.h after hbapi.h
      or hbdefs.h
2008-02-16 10:28:25 +00:00
Przemyslaw Czerpak
25231721f9 2008-02-08 15:58 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/include/hbcomp.h
  * harbour/include/hbmacro.h
  * harbour/include/hbexprb.c
  * harbour/source/vm/macro.c
  * harbour/source/compiler/hbmain.c
    ! fixed name conflict in privates/publics declaration.
      Harbour allows to declare memvars with the same name as file
      wide statics or fields but this extensions was not working well
      in some cases and can cause unexpected results in variable
      declaration, f.e. try this code:
               static v:="static"
               proc main()
                  public v:="public"
                  ? v, M->v
               return
      compiled with -n -w switches and also with -n -w -a before
      this fix.
    ! fixed some compile time warnings in memvars declaration to be
      more Clipper compatible
    ! fixed compiling external modules (DO <procname> [WITH <params,...>])
      when function <procname> is already declared but with different
      letter case. Harbour does not convert <procname> in DO statement
      to upper case to play well with case sensitive file systems and
      it could cause confusing warning message:
         Cannot open <procname>.prg, assumed external

  * harbour/source/compiler/harbour.y
  * harbour/source/compiler/harbour.yyc
    ! added protection against bug in bison destructors which might cause
      multiple free the same memory block on syntax error due to 

  * harbour/source/rdd/dbf1.c
    ! added missing binary flag for daytime fields

  * harbour/source/rdd/dbfntx/dbfntx1.c
    ! fixed possible memory leak during accessing corrupted NTX files
    ! fixed possible GPF during accessing corrupted NTX files

  * harbour/source/compiler/genc.c
    * minor cleanup

  * harbour/config/os2/global.cf
    ! use FOR command to delete group of files
2008-02-08 14:58:26 +00:00
Przemyslaw Czerpak
419e6e8e04 2008-02-04 09:31 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/harbour.spec
  * harbour/harbour-ce-spec
  * harbour/harbour-w32-spec
    * updated for new library names

  * harbour/ChangeLog
  * harbour/include/hbexprb.c
    * formatting

  * harbour/source/rtl/net.c
    ! fixed casting

  * harbour/harbour.spec
  * harbour/harbour-ce-spec
  * harbour/harbour-w32-spec
  * harbour/contrib/Makefile
    * removed hbzlib - it cannot be longer part of default build
      because Viktor removed zlib header files. Viktor sorry but
      IMHO you should revert it and also restore ace.h - it creates
      serious problems without any valuable addition. Now we will
      have to rebuild Harbour on many different platforms and often
      it will not be possible to install some libraries. We cannot
      force installing additional libs by people who will create
      binaries for incoming releases so it's important to revert
      it. Please do it.

  * harbour/config/bsd/install.cf
  * harbour/config/darwin/install.cf
  * harbour/config/hpux/install.cf
  * harbour/config/linux/install.cf
  * harbour/config/sunos/install.cf
  * harbour/config/dos/install.cf
  * harbour/config/os2/install.cf
  * harbour/config/w32/install.cf
    * redirected echo error messages to stderr when *sh shell is used

  * harbour/config/lib.cf
  * harbour/config/bin.cf
  * harbour/config/global.cf
  * harbour/config/hpux/gcc.cf
  * harbour/config/hpux/global.cf
  * harbour/config/darwin/gcc.cf
  * harbour/config/darwin/global.cf
  * harbour/config/dos/owatcom.cf
  * harbour/config/dos/global.cf
  * harbour/config/dos/rsx32.cf
  * harbour/config/global.cf
  * harbour/config/linux/owatcom.cf
  * harbour/config/linux/global.cf
  * harbour/config/os2/gcc.cf
  * harbour/config/os2/global.cf
  * harbour/config/sunos/gcc.cf
  * harbour/config/sunos/global.cf
  * harbour/config/bsd/global.cf
  * harbour/config/w32/owatcom.cf
  * harbour/config/w32/bcc32.cf
  * harbour/config/w32/gcc.cf
  * harbour/config/w32/rsxnt.cf
  * harbour/config/w32/global.cf
    ! fixed build process. DOS and WINDOWS users should make tests for
      different compilers. I tested only DOS-OpenWatcom, DOS-DJGPP,
      W32-BCC32, W32-OpenWatcom, W32-POCC, W32-XCC and corss builds
      W32-MinGW, W32-MinGW-CE. OS2 version not testes at all - I hope
      it will work. LINUX-GCC, LINUX-G++, LINUX-OpenWatcom, BSD-GCC,
      HPUX-GCC tested and they are working. I hope that SunOS version
      also works though I do not have any solaris installation where
      I can make real tests.
2008-02-04 08:32:17 +00:00
Viktor Szakats
7ca09e1942 2008-02-02 02:13 UTC+0100 Viktor Szakats (harbour.01 syenar.hu)
* include/hbapicdp.h
   * common.mak
   * source/codepage/Makefile
   + source/codepage/uc1252.c
   + source/codepage/cpdewin.c
   + source/codepage/cpruiso.c
     + Added RUISO (Russian ISO-8859-5) and DEWIN (German CP1252, actually
       identical to DEISO) codepages and a CP1252<->Unicode table.
       Borrowed from Phil Krylov (xhb).
2008-02-02 01:14:17 +00:00
Viktor Szakats
b5ae06cc09 2008-01-31 17:40 UTC+0100 Viktor Szakats (harbour.01 syenar.hu)
* bin/hb-func.sh
     + Updated for lib name change.
       Please test & review.

   * source/rtl/net.c
   * include/hbapi.h
     + Added hb_netname() and hb_username() low level versions 
       of NETNAME() and hb_USERNAME().
2008-01-31 16:48:02 +00:00
Viktor Szakats
8a5c03a538 2008-01-31 16:32 UTC+0100 Viktor Szakats (harbour.01 syenar.hu)
* include/hbextern.ch
   * source/rtl/net.c
   * contrib/xhb/hbcompat.ch
     ! Removed non-compatible xhb extension from NetName().
     + hb_UserName() function added with the above functionality.
     ! Slight correction to the Win32 branch of hb_UserName().
     + Added compatibility translations to NetName(1) for 
       xhb lib users (enough to #include "hbcompat.ch").
2008-01-31 15:46:59 +00:00
Viktor Szakats
eb89862ecf 2008-01-28 12:10 UTC+0100 Viktor Szakats (harbour.01 syenar.hu)
* include/hbapierr.h
   * source/rtl/errorapi.c
     ! Removed HB_ERR_SS_TOOLS non-core #define (formerly used by 
       /contrib/hbct from core header.
     ! Removed non-core related error API call hb_errRT_TOOLS()
       (functionality was similar to hb_errRT_BASE())

   * contrib/hbct/ctnet.c
     ! Fixed RTE calls to use unique IDs instead of 9999.
       Subcode changed to 0 from 999.

   * utils/hbpp/hbpplib.c
     ! Replaced RTE code 9999 with 1001.
2008-01-28 11:12:35 +00:00
Viktor Szakats
a92f87015d 2008-01-26 06:27 UTC+0100 Viktor Szakats (harbour.01 syenar.hu)
* tests/gfx.prg
   * tests/wcecon.prg
   * tests/gtchars.prg
   * tests/gtkeys.prg
   * include/hbgtinfo.ch
   * source/rtl/hbgtcore.c
   * source/rtl/gtkbstat.c
   * source/rtl/gtdos/gtdos.c
   * source/rtl/gtwin/gtwin.c
   * source/rtl/gtxwc/gtxwc.c
   * source/rtl/gtos2/gtos2.c
   * source/rtl/gtcrs/gtcrs.c
   * source/rtl/gtalleg/gtalleg.c
   * source/rtl/gtstd/gtstd.c
   * source/rtl/gtsln/gtsln.c
   * source/rtl/gttrm/gttrm.c
   * source/rtl/gtpca/gtpca.c
   * source/rtl/gtgui/gtgui.c
   * source/rtl/gtcgi/gtcgi.c
   * source/rtl/gtwvt/gtwvt.c
   * contrib/hbgtwvg/gtwvg.c
     ! Some minor formatting to the .ch file. Removed 
       reference to non-existing doc/gtinfo.txt.
     * Using HB_GTI_* instead of GTI_* in Harbour files.
2008-01-26 05:29:20 +00:00
Viktor Szakats
b9c3cbccfc 2008-01-25 21:27 UTC+0100 Viktor Szakats (harbour.01 syenar.hu)
* harbour-ce-spec
   * harbour-w32-spec
   * bin/bld.bat
   * harbour.spec
   * common.mak
   * source/pp/Makefile
   * source/lang/Makefile
   * source/macro/Makefile
   * source/rtl/Makefile
   * source/vm/mainstd/Makefile
   * source/vm/Makefile
   * source/vm/mainwin/Makefile
   * source/main/Makefile
   * source/debug/Makefile
   * source/codepage/Makefile
   * source/common/Makefile
   * source/rdd/nulsys/Makefile
   * source/rdd/Makefile
   * source/rdd/hsx/Makefile
   * source/rdd/usrrdd/Makefile
   * source/compiler/Makefile
   * contrib/hbct/tests/Makefile
   * contrib/hbodbc/tests/bld_b32.bat
   * contrib/hbole/tests/bld_b32.bat
   * contrib/hbapollo/tests/bld.bat
   * contrib/hbfbird/tests/bld_b32.bat
   * contrib/hbfbird/tests/Makefile
   * contrib/hbpgsql/tests/Makefile
   * contrib/hbfimage/tests/bld_b32.bat
   * contrib/hbgd/tests/bldtest.bat
   * contrib/hbmisc/tests/Makefile
   * contrib/hbgf/tests/bld_b32.bat
   * contrib/hbbtree/tests/Makefile
   * contrib/examples/guestbk/Makefile
   * contrib/examples/pe/Makefile
   * contrib/examples/dbu/Makefile
   * contrib/examples/misc/Makefile
   * contrib/examples/hscript/Makefile
   * utils/hbdoc/Makefile
   * utils/hbextern/Makefile
   * utils/hbdot/Makefile
   * utils/hbmake/Makefile
   * utils/hbmake/hbmutils.prg
   * utils/hbmake/hbmake.prg
   * utils/hbpp/Makefile
   * utils/hbpptest/Makefile
   * utils/hbtest/Makefile
   * utils/hbrun/Makefile
   * tests/Makefile
     * Core libs renamed to be prefixed with hb, while 
       having the first significant 5 chars unique.

       Old name    New name
       --------    --------
       codepage -> hbcpage 
       common   -> hbcommon
       compiler -> hbcplr  
       debug    -> hbdebug 
       hbsix    -> hbsix   
       hsx      -> hbhsx   
       lang     -> hblang  
       macro    -> hbmacro 
       pp       -> hbpp    
       rtl      -> hbrtl   
       vm       -> hbvm    
       rdd      -> hbrdd
       dbfcdx   -> rddcdx
       dbffpt   -> rddfpt
       dbfntx   -> rddntx
       nulsys   -> hbnulrdd
       usrrdd   -> hbusrrdd
       mainwin  -> hbmainwin
       mainstd  -> hbmainstd

       NOTE/TODO: We're currently not in sync with contribs, 
                  regarding hb prefixing, since in contrib 
                  rdds and gts (rightly) also have hb prefixes.
                  The only reason not to add them in core this
                  time, is to keep compatibility with DJGPP.
                  Maybe we should remove those prefixes from 
                  contrib.

       NOTE/TODO: Do tests in as many platforms and as many contrib 
                  tests as possible. Feedback from hbmake users is 
                  also welcome.

       !!! Please update your local make files !!!

   * include/hbgtinfo.ch
     + Added HB_ prefixed versions for all GTI_ macros.
       Unprefixed GTI_ macros are to be considered xhb 
       compatible (or legacy) ones, and they can be 
       excluded by #defining HB_GT_NO_XHB if they seem to 
       collide with user code.
       TODO: Switch to use HB_GTI_* inside Harbour code.
2008-01-25 20:40:49 +00:00
Przemyslaw Czerpak
da6f8a212c 2008-01-23 02:24 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/include/hbrddntx.h
    ! fixed type of Signature field in tag structure

  * harbour/source/rdd/dbfntx/dbfntx1.c
    ! fixed possible leaving locked index when number of tags
      exceed 63. 63 is maximum number of tags in multi tag NTX
      file
    ! fixed typo in HB_TRACE message
    % simplify NTXNODE data access in RDDINFO method

  * harbour/source/rdd/dbfcdx/dbfcdx1.c
    * formatting, some minor cleanup and fixed typo in comment
2008-01-23 01:24:48 +00:00
Przemyslaw Czerpak
ad374294bd 2008-01-15 10:31 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/include/hbdefs.h
    ! do not define [U]LONGLONG when HB_DONT_DEFINE_BASIC_TYPES macro
      is set
2008-01-15 09:31:22 +00:00
Przemyslaw Czerpak
74e6b4f63f 2008-01-12 13:19 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/ChangeLog
  * harbour/include/hbapiitm.h
  * harbour/source/vm/itemapi.c
    - removed hb_itemLockReadCPtr()/hb_itemLockWriteCPtr()/hb_itemUnLockCPtr()
      Whole modification which will address all different aspects it to
      complex to introduce it now. I'll return to this problem after
      1.0 release
2008-01-12 12:20:12 +00:00
Przemyslaw Czerpak
2c5bb1c719 2008-01-11 18:13 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/include/hbexprb.c
    * removed unused variable
2008-01-11 17:13:51 +00:00
Przemyslaw Czerpak
3611daa5a2 2008-01-11 18:01 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/include/hbapiitm.h
  * harbour/source/vm/itemapi.c
    + added new functions:
         BOOL hb_itemParamStore( USHORT uiParam, PHB_ITEM pItem )
         BOOL hb_itemParamStoreForward( USHORT uiParam, PHB_ITEM pItem )
      They copy/move pItem body to parameter passed by reference and
      return TRUE when operation was done successfully (uiParam was passed
      by reference)
    + added new functions for string manipulation:
         char * hb_itemLockReadCPtr( PHB_ITEM pItem, ULONG * pulLen );
         char * hb_itemLockWriteCPtr( PHB_ITEM pItem, ULONG * pulLen );
         void   hb_itemUnLockCPtr( char * pszString );
      It's recommended to use them instead of hb_itemGetCPtr().
      Pointer to string buffer returned by hb_itemLockReadCPtr() will
      be always valid even if source item will be cleared, destroyed or
      overwritten until hb_itemUnLockCPtr() is called. Each locked string
      has to be unlocked to avoid memory leaks. After unlocking the string
      pointer cannot be longer used.
      hb_itemLockWriteCPtr() works like hb_itemLockReadCPtr() but string
      pointer returned by this function is writable so user can change
      the body of string item. It's the _ONLY_ one way when it's possible.
      Modifying string items using pointers returned by hb_parc() or
      hb_itemGetCPtr() or extracted directly from HB_ITEM body is _FORBIDDEN_
      and can cause unpredictable results (GPF when constant/readonly memory
      pages are changed, changing many different items which share the same
      memory buffer, etc.).
      This is code illustrates how to use hb_itemLockReadCPtr()/
      hb_itemUnLockCPtr() and it's also good example why hb_itemGetCPtr()
      is very danger function and cannot be used in such case - if you
      replace hb_itemLockReadCPtr() with hb_itemGetCPtr() and remove
      hb_itemUnLockCPtr() then you will have buggy code.

         HB_FUNC( MYFUNC )
         {
            PHB_ITEM pObject = hb_param( 1, HB_IT_OBJECT )
            if( pObject )
            {
               char * pszName1, * pszName2;
               PHB_ITEM pResult;

               pResult = hb_objSendMsg( pObject, "POP", 0 );
               pszName1 = hb_itemLockReadCPtr( pResult, NULL );
               pResult = hb_objSendMsg( pObject, "POP", 0 );
               pszName2 = hb_itemLockReadCPtr( pResult, NULL );
               if( pszName1 && pszName2 )
                  hb_retc_buffer( hb_xstrcpy( NULL,
                              "[", pszName1, "]-[", pszName2, "]", NULL ) );
               hb_itemUnLockCPtr( pszName1 );
               hb_itemUnLockCPtr( pszName2 );
            }
         }

      This code shows how to use hb_itemLockWriteCPtr():
         proc main()
            local cVal, cVal2
            cVal := cVal2 := "ABC"
            STRPUT( @cVal2, 2, 42 )
            ? cVal, cVal2
         return
         #pragma begindump
         #include "hbapiitm.h"
         HB_FUNC( STRPUT )
         {
            PHB_ITEM pString = hb_param( 1, HB_IT_STRING );
            ULONG ulAt = hb_parnl( 2 );
            if( pString && ulAt && ISNUM( 3 ) )
            {
               ULONG ulLen;
               char * pszValue;
               pszValue = hb_itemLockWriteCPtr( pString, &ulLen );
               if( pszValue )
               {
                  if( ulAt <= ulLen )
                     pszValue[ ulAt - 1 ] = ( char ) hb_parni( 3 );
                  hb_itemUnLockCPtr( pszValue );
               }
            }
         }
         #pragma enddump

  * harbour/include/hbcompdf.h
  * harbour/include/hbexprop.h
  * harbour/include/hbexprb.c
  * harbour/source/compiler/hbmain.c
  * harbour/source/compiler/cmdcheck.c
  * harbour/source/compiler/hbusage.c
    * removed HB_I18N_SUPPORT macro and enabled I18N code in default build
2008-01-11 17:01:34 +00:00
Mindaugas Kavaliauskas
40d7f55063 2008-01-11 17:32 UTC+0200 Mindaugas Kavaliauskas (dbtopas/at/dbtopas.lt)
* harbour/include/hbexprb.c
  * harbour/source/compiler/hbmain.c
    ! added string escaping before to i18n .pot files
    + added hb_i18n_gettext_strict() support for compiler. This function 
      generates warning if argument is not literal string. See discussion 
      on mailing list from 2007-11-23 to 2007-11-29, for details.
2008-01-11 15:30:31 +00:00
Przemyslaw Czerpak
4d9930caa6 2008-01-09 15:03 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/source/vm/estack.c
    * added missing static to s_initSymbol declaration

  * harbour/include/hbgtinfo.ch
  * harbour/source/rtl/scroll.c
    * formatting

  * harbour/common.mak
    * added empty line necessary for some make systems (f.e. wmake)

  * harbour/bin/hb-func.sh
    * changed system libs order to avoid problems on some platforms

  * harbour/bin/pack_src.sh
    * collect information about repository files using 'svn status -v'
      command instead of scanning .svn/entries files to avoid problems
      with different formats used by SVN

  * harbour/include/hbchksum.h
  * harbour/include/hbset.h
    ! added missing extern in few function prototypes

  * harbour/include/hbclass.ch
    * use HB_CLS_PARAM_LIST macro instead of ... for strict C52 mode

  * harbour/source/common/hbfsapi.c
    + added missing const to one declaration

  * harbour/source/common/hbstr.c
    * minor cleanup in hb_stricmp()

  * harbour/source/rtl/inkey.c
    ! casting to avoid negative values during char to int translation

  * harbour/source/rtl/mouse53.c
    * added one internal definition

  * harbour/source/rtl/philes.c
    * removed unnecessary #include(s)
    * added missing const to one declaration

  * harbour/source/rtl/valtype.c
  * harbour/source/vm/hashfunc.c
    * cleanup RT error call to eliminate hb_paramError() function

  * harbour/source/pp/pplib.c
  * harbour/source/vm/runner.c
  * harbour/source/vm/debug.c
  * harbour/source/vm/arrayshb.c
  * harbour/source/vm/classes.c
  * harbour/source/vm/hvm.c
  * harbour/source/rtl/hbgtcore.c
  * harbour/source/rtl/gtfunc.c
  * harbour/source/rtl/hbinet.c
  * harbour/source/rtl/hbregex.c
  * harbour/source/rtl/idle.c
  * harbour/source/rtl/errorapi.c
  * harbour/source/rtl/hbtoken.c
  * harbour/source/rtl/direct.c
  * harbour/source/rdd/dbcmd.c
  * harbour/source/rdd/dbcmd53.c
  * harbour/source/rdd/fieldhb.c
  * harbour/source/rdd/hbsix/sxcompr.c
  * harbour/source/rdd/hbsix/sxcrypt.c
  * harbour/source/compiler/hbcmplib.c
  * harbour/contrib/hbrddads/adsfunc.c
  * harbour/contrib/hbrddads/adsmgmnt.c
    - removed unnecessary calls to hb_ret()
    % replaced hb_itemRelease( hb_itemReturn( pItem ) ) with
      hb_itemReturnRelease( pItem )
    % replaced hb_itemPut*( hb_arrayGetItemPtr( pArray, ... ), ... ) with
      hb_arraySetNI( pArray, ... )

  * harbour/source/macro/macro.y
  * harbour/source/macro/macro.yyc
  * harbour/contrib/xhb/cstructc.c
  * harbour/contrib/hbw32/w32_ole.c
  * harbour/contrib/hbgtwvg/wvtcore.c
    * cleaned typos with double ;;

  * harbour/source/vm/extend.c
  * harbour/source/rtl/math.c
    * cleaned HB_EXPORT usage

  * harbour/source/pp/ppcore.c
    ! fixed Harbour extension which allows to use match marker
      at the beginning of rule definition

  * harbour/source/main/harbour.c
    ! fixed hex conversion in FM log module - fix done by Phil Krylov
      in xHarbour

  * harbour/source/rdd/nulsys/nulsys.c
    + added dummy version of DBEVAL() and DBFILTER() - these functions
      are used in RTL

  * harbour/contrib/hbct/bitnum.c
    + added INTNEG(), INTPOS()

  + harbour/contrib/hbct/ctrand.prg
    + added RANDOM(), RAND() - borrowd from xHarbour by Pavel Tsarenko

  + harbour/contrib/hbct/setrc.c
    + added SETRC()

  * harbour/contrib/hbct/getinput.prg
    % minor optimization

  * harbour/contrib/hbct/Makefile
  * harbour/contrib/hbct/common.mak
    * updated for new files

  * harbour/contrib/hbnf/tempfile.prg
    * use HB_FTempCreate() - modification borrowed from xHarbour
      TOFIX this function uses hb_isbyref() which does not exist
      in Harbour

  * harbour/config/w32/msvc.cf
    + added -nologo flag for cl.exe (Phil Krylov's modification borrowed
      from xHarbour

  * harbour/config/w32/mingw32.cf
    - removed repeated definitions

  * harbour/config/w32/install.cf
    ! added alternative install rule for command.com with max line size limit
2008-01-09 14:04:12 +00:00
Viktor Szakats
8ceb521c43 restored unwanted modification 2008-01-08 18:37:10 +00:00
Viktor Szakats
995b647af4 2008-01-08 19:31 UTC+0100 Viktor Szakats (harbour.01 syenar.hu)
* include/hbclass.ch
     ! Enabling HB_CLS_NO_DECORATION if compiled with HB_C52_STRICT, 
       since in strict mode some PP extensions required by the 
       decoration feature are not available.
       (Thanks Przemek for the tip)
2008-01-08 18:36:06 +00:00
Przemyslaw Czerpak
11f489338e 2007-12-22 11:28 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/bin/hb-mkslib.sh
    + added -fPIC to GCC parameters - it's necessary on some platforms
    + use .sl suffix for shared library in HP-UX

  * harbour/bin/hb-func.sh
    + use .sl suffix for shared library in HP-UX

  * harbour/bin/postinst.bat
    * removed < > from email address

  * harbour/include/hbgtcore.h
  * harbour/source/rtl/gtkeycod.c
  * harbour/source/rtl/gtdos/gtdos.c
  * harbour/source/rtl/gtos2/gtos2.c
  * harbour/source/rtl/gtstd/gtstd.c
  * harbour/source/rtl/gtpca/gtpca.c
    * fixed typo in function name - it should be hb_gt_dos_keyCodeTranslate()
      not hb_gt_dos_keyCodeTanslate()

  * harbour/make_tgz.sh
    * updated for non GNU tar versions

  * harbour/ChangeLog
    * replaced TABs with SPACEs
2007-12-22 10:28:28 +00:00
Przemyslaw Czerpak
609f24e2e4 2007-12-20 11:44 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/common.mak
  * harbour/source/rtl/Makefile
  * harbour/include/hbgtcore.h
  + harbour/source/rtl/gtkeycod.c
    + added hb_gt_dos_keyCodeTanslate() - based on hb_gt_ReadKey()
      from GTDOS by David G. Holm <dholm@jsd-llc.com>

  * harbour/source/rtl/gtdos/gtdos.c
  * harbour/source/rtl/gtos2/gtos2.c
  * harbour/source/rtl/gtstd/gtstd.c
  * harbour/source/rtl/gtpca/gtpca.c
    * use hb_gt_dos_keyCodeTanslate() to eliminate repeated code

  * harbour/contrib/hbrddads/Makefile
  * harbour/contrib/hbpgsql/Makefile
    * updated code to locate directories with header files

  * harbour/source/rtl/hbini.prg
    ! fixed typo in HB_IniRead()

  * harbour/source/rtl/persist.prg
    ! eliminated internal static variable
2007-12-20 10:45:01 +00:00
Przemyslaw Czerpak
ed89a813a2 2007-12-19 13:05 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/include/hbmath.h
  * harbour/source/rtl/math.c
    * cleaned matherr API, now it works in the same way on all
      platforms - this modification fixes also some strange
      results when math functions were called with wrong arguments
      on some platforms

  * harbour/contrib/hbct/trig.c
  * harbour/contrib/hbct/finan.c
  * harbour/contrib/hbct/ctmath2.c
    * updated for new matherr API and cleaned some minor problems

  * harbour/contrib/hbct/files.c
    ! use DATE and TIME parameters formated like for DOS in OS2
      version of SETFDATI() - David,  if possible please repeat
      the test from my previous commit, thank you.
2007-12-19 12:05:59 +00:00
Przemyslaw Czerpak
3a934f0ae8 2007-12-18 11:17 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/ChangeLog
    * reverted conversion to UTF8 of national characters (svn diff)

  * harbour/include/hbdate.h
  * harbour/source/common/hbdate.c
    + added hb_timeStrGet()

  * harbour/contrib/hbct/files.c
    * use hb_timeStrGet() instead of sscanf()
    + added OS2 version of SETFDATI() - please test it !!!
      I'm interesting in results of this code compiled with OS2
      Harbour build:
         proc main()
            local cFile:="_tst.tmp"
            FCLOSE(FCREATE(cFile))
            ? FILEDATE(cFile), FILETIME(cFile)
            ? SETFDATI(cFile,STOD("20061129"),"12:34:45")
            ? FILEDATE(cFile), FILETIME(cFile)
            ? SETFDATI(cFile)
            ? FILEDATE(cFile), FILETIME(cFile)
            FERASE(cFile)
         return
2007-12-18 10:18:02 +00:00
Przemyslaw Czerpak
cb47250bfc 2007-12-17 21:21 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/include/hbapigt.h
  * harbour/include/hbgtcore.h
  * harbour/source/rtl/gtapi.c
  * harbour/source/rtl/hbgtcore.c
  * harbour/source/rtl/gt_tpl/gt_tpl.c
  * harbour/source/rtl/gtdos/gtdos.c
  * harbour/source/rtl/gtwin/gtwin.c
  * harbour/source/rtl/gtxwc/gtxwc.c
  * harbour/source/rtl/gtos2/gtos2.c
  * harbour/source/rtl/gtcrs/gtcrs.c
  * harbour/source/rtl/gtsln/gtsln.c
  * harbour/source/rtl/gttrm/gttrm.c
  * harbour/source/rtl/gtpca/gtpca.c
  * harbour/source/rtl/gtgui/gtgui.c
  * harbour/source/rtl/gtwvt/gtwvt.c
  * harbour/source/rtl/gtcgi/gtcgi.c
  * harbour/source/rtl/gtstd/gtstd.c
  * harbour/contrib/hbct/ctwin.c
  * harbour/contrib/hbgtwvg/gtwvg.c
  * harbour/source/rtl/gtalleg/gtalleg.c
  * harbour/source/rtl/gtalleg/ssf.h
  * harbour/source/rtl/gtalleg/fixedth.sfc
    * added missing const to few declarations
    * formatting and minor code cleanup

  * harbour/source/rtl/hbgtcore.c
    ! fixed GTNUL registration

  * harbour/source/rtl/gtcgi/gtcgi.c
  * harbour/source/rtl/gtstd/gtstd.c
    * moved static variables to dynamic GT area

  * harbour/contrib/hbct/files.c
    ! fixed DOS version
2007-12-17 20:22:32 +00:00
Przemyslaw Czerpak
b30055548c 2007-12-16 13:32 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/source/common/hbfsapi.c
    + added OS2 version of hb_fsFileExists() and hb_fsDirExists()
      Please test - I do not have OS2

  * harbour/source/rdd/dbf1.c
    ! removed unnecessary printf() message I left by mistake

  * harbour/contrib/hbct/files.c
    + added OS2 version of SETFATTR()
      Please test - I do not have OS2

  * harbour/config/os2/global.cf
    + added temporary workaround for possible problems with some
      GNU make versions

  * harbour/make_deb.sh
    + build hbpgsql when libpq-dev is installed

  * harbour/include/clipdefs.h
    * do not define PBYTE, PSHORT, PUSHORT, PLONG, PULONG, PBOOL, PVOID
      when HB_OS_OS2 && HB_DONT_DEFINE_BASIC_TYPES is defined
2007-12-16 12:32:41 +00:00
Przemyslaw Czerpak
8469a5d29c 2007-12-13 16:55 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/include/hbapigt.h
  * harbour/source/rtl/gtapi.c
    ! fixed DISPCOUNT() return value
    * cleaned some GT functions declarations
2007-12-13 15:55:56 +00:00
Przemyslaw Czerpak
1b46d933d7 2007-12-07 10:43 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/include/hbgtcore.h
  * harbour/source/rtl/hbgtcore.c
  * harbour/source/rtl/gtapi.c
  * harbour/source/rtl/inkeyapi.c
  * harbour/source/rtl/mouseapi.c
    - removed hb_gt_*(), hb_inkey_*(), hb_mouse_*() functions
    + implemented HB_GTSELF_*() functions and changed HB_GTSUPER_*()
      ones to operate on GT context passed ad 1-st parameter.
      Now GT API allows to create many GTs working simultaneously
    + added hb_gt_Base() core function which returns GT context
      it will be extended soon to allow using many GT contexts,
      setting thread default one or switch between them using some
      .prg function.

  * harbour/source/rtl/gtstd/gtstd.c
  * harbour/source/rtl/gtcgi/gtcgi.c
  * harbour/source/rtl/gtpca/gtpca.c
  * harbour/source/rtl/gttrm/gttrm.c
  * harbour/source/rtl/gtxwc/gtxwc.c
  * harbour/source/rtl/gtcrs/gtcrs.c
  * harbour/source/rtl/gtcrs/gtcrs.h
  * harbour/source/rtl/gtsln/gtsln.c
  * harbour/source/rtl/gtsln/gtsln.h
  * harbour/source/rtl/gtsln/kbsln.c
  * harbour/source/rtl/gtsln/mousesln.c
  * harbour/source/rtl/gtalleg/gtalleg.c
  * harbour/source/rtl/gtgui/gtgui.c
  * harbour/source/rtl/gtwin/gtwin.c
  * harbour/source/rtl/gtwvt/gtwvt.h
  * harbour/source/rtl/gtwvt/gtwvt.c
  * harbour/contrib/hbct/ctwin.c
  * harbour/contrib/hbct/ctwin.h
  * harbour/contrib/hbct/ctwfunc.c
  * harbour/contrib/hbgtwvg/gtwvt.h
  * harbour/contrib/hbgtwvg/gtwvt.c
    * updated GT code for new GT API. I still haven't added GT cloning
      to them and only GTTRM is ready to use in multi window MT programs
      but now they can be systematically modified and it can be done
      locally without core code modifications.

  * harbour/contrib/hbgtwvg/wvtutils.c
    ! fixed some memory leaks in Unicode conversions
2007-12-07 09:44:03 +00:00
Mindaugas Kavaliauskas
1e7aadcf86 2007-12-06 11:35 UTC+0200 Mindaugas Kavaliauskas (dbtopas/at/dbtopas.lt)
* harbour/source/lang/msgltwin.c
    * more changes from LT to LTWIN
  * harbour/common.mak
    * restored missing msgltwin.c 
  * harbour/include/hbapi.h
  * harbour/source/vm/hashes.c
    + added hash key support for pointer type
2007-12-06 09:34:22 +00:00
Viktor Szakats
12bb58304e 2007-12-06 02:21 UTC+0100 Viktor Szakats (harbour.01 syenar.hu)
* include/hbextern.ch
   * common.mak
   * source/codepage/Makefile
   - source/codepage/cpdedos.c
   + source/codepage/cpde850.c
   - source/codepage/cpeldos.c
   + source/codepage/cpel737.c
   - source/codepage/cpesdos.c
   + source/codepage/cpes850.c
   - source/codepage/cpfrdos.c
   + source/codepage/cpfr850.c
   - source/codepage/cptrdos.c
   + source/codepage/cptr857.c
     ! Renamed some codepage modules to include the 
       actual DOS codepage number instead of nothing 
       or generic "dos" name.

   * common.mak
   * source/lang/Makefile
   + source/lang/msgtr857.c
   - source/lang/msgtrdos.c
     ! Rename one language module to be in sync with 
       proper internal ID.
2007-12-06 01:26:32 +00:00
Viktor Szakats
5a278f5646 2007-12-06 01:26 UTC+0100 Viktor Szakats (harbour.01 syenar.hu)
* doc/howtosvn.txt
     ! Fixed the SVN propset command to include all needed keywords, 
       not just "Id".

   * common.mak
   * source/codepage/Makefile
   - source/codepage/cpgedos.c
   - source/codepage/cpgeiso.c
   + source/codepage/cpdedos.c
   + source/codepage/cpdeiso.c
     ! Renamed to be in sync with rules and content.

   * source/lang/msgnl.c
     ! svn propset svn:keywords "Author Date Id Revision".
       (to correct my prev commit)

   * include/hbextern.ch
     ! Adjusted CP/MSG module names.
2007-12-06 01:12:29 +00:00
Przemyslaw Czerpak
27487f2460 2007-12-05 08:25 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/include/hbgtcore.h
    * added HB_GTSELF_*() macros for future use

  * harbour/source/rtl/gtalleg/gtalleg.c
  * harbour/source/rtl/gtalleg/ssf.h
  * harbour/source/rtl/gtalleg/fixedth.sfc
  * harbour/source/rtl/gtalleg/ssf.c
    * replaced one global variable by static one
    * formatting

  * harbour/contrib/hbct/files.c
    ! fixed default attribute mask in FILEATTR(<cFileName>)
2007-12-05 07:26:00 +00:00
Przemyslaw Czerpak
9fdbf7de76 2007-12-04 12:51 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/include/hbgtcore.h
    + added some missing HB_GTSUPER_* functions

  * harbour/contrib/hbgtwvg/wvtcore.c
    * use hb_gt*() functions instead of hb_gt_*() ones

  * harbour/contrib/hbgtwvg/wvtutils.c
  * harbour/contrib/hbgtwvg/gtwvt.c
  * harbour/source/rtl/gtwin/gtwin.c
  * harbour/source/rtl/gtgui/gtgui.c
  * harbour/source/rtl/gtwvt/gtwvt.c
  * harbour/source/rtl/gttone.c
  * harbour/source/rtl/gtclip.c
    * minor cleanup in hb_gt_w32_*() function names

  * harbour/source/rtl/hbgtcore.c
  * harbour/source/rtl/gtclip.c
    * use common for all GT internal Clipboard buffer - thanks to Pritpal
      for a note
2007-12-04 11:52:20 +00:00
Przemyslaw Czerpak
62ed005979 2007-12-03 22:35 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/common.mak
  * harbour/source/rtl/Makefile
  * harbour/include/hbgtcore.h
  * harbour/source/rtl/hbgtcore.c
  * harbour/source/rtl/inkey.c
  + harbour/source/rtl/inkeyapi.c
    * moved hb_inkey*() functions to GT subsystem so now they can be
      overloaded by GT drivers and/or operate on different GT context

  * harbour/source/rtl/mouse53.c
    * eliminated to unused static variables

  * harbour/source/rtl/mouseapi.c
    * do not include unnecessary header files

  * harbour/source/rtl/gtchrmap.c
    * replaced // comment by /* ... */
2007-12-03 21:36:22 +00:00
Przemyslaw Czerpak
8abd2b93d8 2007-12-03 11:48 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/include/hbapigt.h
    * removed declaration for not existing function: hb_inkeyGet()

  * harbour/include/hbgtcore.h
  * harbour/source/rtl/hbgtcore.c
    * moved all static variables used by core GT code to HB_GT_BASE
      structure

  * harbour/source/rtl/inkey.c
    * cleanup

  * harbour/contrib/Makefile
    * moved HB_CONTRIBLIBS to the end build library list because they may
      need some other contrib libraries in dependences list
2007-12-03 10:48:50 +00:00
Przemyslaw Czerpak
37cc2dae64 2007-12-02 04:32 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/include/hbdefs.h
  * harbour/source/rdd/hsx/hsx.c
  * harbour/source/rdd/dbfcdx/dbfcdx1.c
  * harbour/source/hbpcre/ChangeLog
  * harbour/source/hbpcre/pcrecomp.c
    * minor modifications to pacify some MSVC warnings
2007-12-02 03:33:17 +00:00
Marek Paliwoda
dba04d8750 2007-12-01 21:52 UTC+0100 Marek Paliwoda (mpaliwoda at interia pl)
* harbour/include/hbwince.h
    ! Fixed compilation in C++ mode by renaming local variable
      named "template" to "tmplt". "template" is a reserved
      word in MSVC C++.
    + Added few missing WINAPI function declarations under
      MSVC WinCE.

  * harbour/source/common/hbwince.c
    ! Fixed compilation in C++ mode by renaming local variable
      named "template" to "tmplt". "template" is a reserved
      word in MSVC C++.
2007-12-01 20:52:31 +00:00
Marek Paliwoda
83cd6eeabe 2007-11-30 20:25 UTC+0100 Marek Paliwoda (mpaliwoda at interia pl)
* harbour/include/hbstack.h
    ! Added HB_EXPORT to hb_stackPop(). Required
      by dll build  with -gc3 switch
    * Removed HB_EXPORT from hb_stackReturnItem()
      and hb_stackSelfItem()
2007-11-30 19:29:27 +00:00
Przemyslaw Czerpak
d80b5e7389 2007-11-30 19:57 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/include/hbgtcore.h
  * harbour/source/rtl/hbgtcore.c
  * harbour/source/rtl/gtalleg/gtalleg.c
  * harbour/source/rtl/gtdos/gtdos.c
  * harbour/source/rtl/gtos2/gtos2.c
  * harbour/source/rtl/gtwin/gtwin.c
  * harbour/source/rtl/gtwvt/gtwvt.c
  * harbour/source/rtl/gtgui/gtgui.c
  * harbour/source/rtl/gtxwc/gtxwc.c
  * harbour/source/rtl/gtcrs/gtcrs.c
  * harbour/source/rtl/gtsln/gtsln.c
  * harbour/source/rtl/gttrm/gttrm.c
  * harbour/source/rtl/gtstd/gtstd.c
  * harbour/source/rtl/gtpca/gtpca.c
  * harbour/source/rtl/gtcgi/gtcgi.c
  * harbour/contrib/libct/ctwin.c
  * harbour/contrib/gtwvg/gtwvt.c
    + added GT ID (int s_GtId)

  * harbour/include/hbapigt.h
  * harbour/source/rtl/gtapi.c
    + added some missing wrappers for hb_gt_* functions to avoid
      including hbgtcore.h by non GT code - such functions separation
      will be important in MT mode where each thread can operate on
      different GT context (window)

  * harbour/contrib/libct/screen2.c
  * harbour/contrib/libct/screen1.c
  * harbour/contrib/libct/ctwfunc.c
    * use hb_gt* functions instead of hb_gt_*() ones

  * harbour/include/hbapigt.h
  * harbour/source/rtl/inkey.c
    * changed hb_setInkeyLast() to hb_inkeySetLast() to keep hb_inkey*()
      prefix in all inkey() related functions
    + added hb_inkeySetText()
    - removed hb_inkeyTranslate()

  * harbour/contrib/libct/setlast.c
    * use hb_inkeySetLast() instead of hb_setInkeyLast()

  * harbour/source/rdd/usrrdd/usrrdd.c
    * removed dummy xHarbour code not usable in Harbour

  * harbour/include/hbapi.h
  * harbour/source/vm/codebloc.c
  * harbour/source/vm/hvm.c
    * added const to BYTE * pCode parameter of hb_codeblockMacroNew()
2007-11-30 18:57:51 +00:00
Przemyslaw Czerpak
6a4c657ed7 2007-11-27 18:24 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/source/common/hbfsapi.c
    * define INVALID_FILE_ATTRIBUTES when not defined in C header
      files - temporary workaround for missing INVALID_FILE_ATTRIBUTES
      definition in new MSVC versions

  * harbour/include/hbwince.h
    * removed INVALID_FILE_ATTRIBUTES definition
2007-11-27 17:24:27 +00:00
Przemyslaw Czerpak
dbf69c2c15 2007-11-27 00:12 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/bin/pack_src.sh
    * updated for recent file name modifications

  * harbour/include/hbgtcore.h
  * harbour/source/rtl/gtclip.c
    * changed hb_gt_w32_SetClipboard() type from void to BOOL

  * harbour/source/rtl/gtstd/gtstd.c
  * harbour/source/rtl/gtpca/gtpca.c
    * added basic input support for DJGPP

  * harbour/contrib/gtwvg/gtwvt.c
    ! fixed memory leak and GPF trap

  * harbour/contrib/gtwvg/wvtutils.c
    ! rewritten and fixed CLIPBOARD functions - Pritpal this functions
      should be removed, they are redundant and works only in MS-Windows
    * make WVT__GETOPENFILENAME() and WVT__GETSAVEFILENAME() Unicode
      ready and fixed possible GPF trap
2007-11-26 23:13:01 +00:00
Przemyslaw Czerpak
67a6e11654 2007-11-25 12:12 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/include/hbwmain.c
  * harbour/source/vm/mainwin.c
    ! fixed unnecessary conversion of WinMain() parameters on W32/W64
      when UNICODE macro is set - thanks to Chen

  * harbour/source/rdd/sdf1.c
  * harbour/source/rdd/delim1.c
    ! fixed code wrongly synced with xHarbour - in Harbour HB_SET_EOL
      is char* not PHB_ITEM - thanks to Andi

  * harbour/source/compiler/genc.c
    ! fixed file name in generated for C inline code by escaping
      special characters - thanks to Andi

  * harbour/source/rtl/gtwvt/gtwvt.c
    * minor code cleanup

  * harbour/contrib/gtwvg/wvtcore.c
    ! fixed setting default foreground and background color when user
      does not pass it's own one. Previous versions was using _s->background
      and _s->foreground - it was wrong because this variables in all
      GTWVT base GTs (also in xHarbour) contains not default color but
      the color recently used to redraw some part of screen - f.e. after
      exposing some region - it means that they can have any value.
      Such bugs are hard to locate because the same program can be executed
      many times without any problem and suddenly he will use wrong colors
      drawing sth - if you observed such effect then it can be the results
      of the above problem. Now default color is taken from core GT code.
      Two functions make it: hb_wvt_FgColorParam() and hb_wvt_BgColorParam()
      Both accept also colors passed as standard Clipper strings.
      The same should be also fixed in xHarbour just like the problem with
      executing registered user functions when HVM is closing fixed in
      previous commit - even if now it does not cause GPF (due to race
      condition it may be exploited only sometimes) then it does not mean
      it works correctly.
2007-11-25 11:13:12 +00:00
Przemyslaw Czerpak
021bc664d5 2007-11-23 21:14 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/doc/man/harbour.1
  * harbour/source/compiler/hbusage.c
    + added description for -j switch

  * harbour/include/hbexprb.c
    * replaced // comments by /* */
    * accept <cContext> (domain) parameters of HB_i18nGettext() when
      number of parameters is two or more
      Should we generate compile time warning when wrong number of
      parameters is passed to this function or they are not literal
      strings? Maybe only after -j+ or sth like that?

  * harbour/include/hbclass.ch
  * harbour/include/tbrowse.ch
  * harbour/include/hbpers.ch
  * harbour/include/getexit.ch
    * replaced // comments by /* */
2007-11-23 20:14:30 +00:00
Mindaugas Kavaliauskas
a3cbfe607f 2007-11-23 18:55 UTC+0200 Mindaugas Kavaliauskas (dbtopas/at/dbtopas.lt)
* harbour/source/include/hbexprb.c
    * changed HB_i18nGettext() to hb_i18n_gettext(), to respect 
      original gettext lowercase function name convention
2007-11-23 16:53:11 +00:00
Viktor Szakats
630119e503 2007-11-23 03:03 UTC+0100 Viktor Szakats (harbour.01 syenar.hu)
* make_b32.mak
   * make_gcc.mak
   * make_vc.mak
   * make_vcce.mak
   * common.mak
     ! Fixed copyrights.
     ! Tabs converted to spaces.
     - CFLAGS not advertised anymore as an official public var to set 
       compiler flags.
       C_USR should be used, which is also GNU make system compatible.

   * make_vc.mak
   * make_vcce.mak
     ! Removed /Y from copy command
       (we're using the COPYCMD trick in core make files).

   - contrib/adordd/access1.prg
   - contrib/adordd/access2.prg
   - contrib/adordd/mysql1.prg
   - contrib/adordd/mysql3.prg
   + contrib/adordd/tests
   + contrib/adordd/tests/access1.prg
   + contrib/adordd/tests/access2.prg
   + contrib/adordd/tests/mysql1.prg
   + contrib/adordd/tests/mysql3.prg
   - contrib/btree/mktest.bat
   + contrib/btree/test/mktest.bat
   - contrib/samples/testdate.prg
   - contrib/samples/testenv.prg
   - contrib/samples/testgaug.prg
   - contrib/samples/testnum.prg
   - contrib/samples/teststat.prg
   - contrib/samples/testtime.prg
   - contrib/samples/tststack.prg
   + contrib/samples/tests
   + contrib/samples/tests/testdate.prg
   + contrib/samples/tests/testenv.prg
   + contrib/samples/tests/testgaug.prg
   + contrib/samples/tests/testnum.prg
   + contrib/samples/tests/teststat.prg
   + contrib/samples/tests/testtime.prg
   + contrib/samples/tests/tststack.prg
     * Test related files moved to test dir.
     ! Added EOLs to the last line in adordd files.

   - contrib/gd/README
   + contrib/gd/readme.txt
     * Renamed to use proper extension.

   * contrib/adordd/common.mak
   * contrib/apollo/common.mak
   * contrib/bmdbfcdx/common.mak
   * contrib/btree/common.mak
   * contrib/directx/common.mak
   * contrib/firebird/common.mak
   * contrib/freeimage/common.mak
   * contrib/gd/common.mak
   * contrib/hbzlib/common.mak
   * contrib/hgf/win32/common.mak
   * contrib/htmllib/common.mak
   * contrib/ole/common.mak
   * contrib/pdflib/common.mak
   * contrib/pgsql/common.mak
   * contrib/libct/common.mak
   * contrib/libgt/common.mak
   * contrib/libnf/common.mak
   * contrib/libmisc/common.mak
   * contrib/mysql/common.mak
   * contrib/odbc/common.mak
   * contrib/rdd_ads/common.mak
   * contrib/samples/common.mak
   * contrib/telepath/common.mak
   * contrib/tip/common.mak
   * contrib/win32/common.mak
   * contrib/xhb/common.mak
     * Formatting made consistent.

   * contrib/adordd/common.mak
   * contrib/bmdbfcdx/common.mak
   * contrib/btree/common.mak
   * contrib/freeimage/common.mak
   * contrib/gd/common.mak
   * contrib/hgf/win32/common.mak
   * contrib/libct/common.mak
   * contrib/libnf/common.mak
   * contrib/mysql/common.mak
   * contrib/odbc/common.mak
   * contrib/pdflib/common.mak
   * contrib/pgsql/common.mak
   * contrib/rdd_ads/common.mak
   * contrib/samples/common.mak
   * contrib/tip/common.mak
   * contrib/xhb/common.mak
     + Added headers.

   * contrib/btree/common.mak
   * contrib/freeimage/common.mak
   * contrib/freeimage/Makefile
   * contrib/hbzlib/common.mak
   * contrib/hbzlib/Makefile
   * contrib/libct/common.mak
   * contrib/libmisc/common.mak
   * contrib/libmisc/Makefile
   * contrib/mysql/common.mak
     ! Library names synced between GNU and non-GNU 
       make systems.
     ! Some libraries renamed to not have a too common 
       or non-descriptive name, like "misc".
       non-GNU hb_btree   -> hbbtree (synced with GNU)
       non-GNU fi_lib     -> hbfreeimage
       GNU     fi_lib     -> hbfreeimage
       non-GNU hbzip      -> hbziparch
       GNU     ziparchive -> hbziparch
       non-GNU libct      -> ct (synced with GNU)
       non-GNU libmisc    -> hbmisc
       GNU     misc       -> hbmisc
       non-GNU mysql      -> hbmysql (synced with GNU)

   * contrib/apollo/Makefile
   * contrib/firebird/Makefile
     ! Fixed space to tabs.

   + contrib/msql/make_b32.bat
   + contrib/msql/make_vc.bat
   + contrib/msql/common.mak
     + Added non-GNU make files.
     ; TOFIX: I cannot compile these still.

   * contrib/msql/Makefile
     ! Added SVN header.
     ; TOFIX: This is a non-standard Makefile.
              Did anyone manage to compile this lib?

   * contrib/adordd/adordd.ch
   * contrib/adordd/adordd.prg
     ! Added EOLs to the last line.

   * utils/hbmake/hbmutils.prg
     * Lib names fixed and changed to reflect the recent 
       changes in contrib.

   * contrib/rdd_ads/rddads.h
     ! Minor cosmetic fix.

   * include/hbextern.ch
   * source/rtl/memofile.c
     ! MEMOWRIT() 3rd parameter marked as extension.
     + HB_MEMOWRIT() function added, which never write the 
       obsolete EOF char at the end of the file.
2007-11-23 02:08:37 +00:00
Mindaugas Kavaliauskas
ce44121edc 2007-11-23 03:55 UTC+0200 Mindaugas Kavaliauskas (dbtopas/at/dbtopas.lt)
* harbour/source/include/hbcompdf.h
  * harbour/source/include/hbexprop.h
  * harbour/source/include/hbexprb.c
  * harbour/source/compiler/cmdcheck.c
  * harbour/source/compiler/hbmain.c
    + added i18n support
      Implemented -j[filename] switch to indicate output filename. Default 
      filename is <sourcefilename>.pot. If switch -o is used, this file
      is created in speficied output path.
      Output file format is compatible with 'gettext' utils, but not all
      available features are implemented.
      Harbour level function HB_i18nGettext( cText [, cContext ] ) sould be
      used to indicate translatable strings.
      All this commit is commented using #ifdef HB_I18N_SUPPORT and is in 
      development stage. Please, do not use it yet.
2007-11-23 01:55:37 +00:00
Przemyslaw Czerpak
7f59b345ce 2007-11-23 01:19 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/include/hbvm.h
  * harbour/source/vm/hvm.c
    * make hb_vmPushNumInt() public function

  * harbour/contrib/gtwvg/wvtcore.c
    ! fixed hb_wvt_gtDlgProcMLess() and hb_wvt_gtDlgProcModal()
      - fixed GPF when codeblock are used
      - use hb_vmPushNumInt() instead of hb_vmPushLong() to push
        handles and numbers with potentially unknown size.
        I still suggest to use pointers ITEMs instead of converting
        handles to numbers but I'm leaving such modifications to library
        authors - using hb_vmPushNumInt() is a workaround for striping
        highest 32 bit from handles by hb_vmPushLong() in XP64 
      - use hb_vmRequestReenter() / hb_vmRequestRestore() to avoid crash
        when function/codeblock is executed during HVM has been serving
        an exception (f.e. BREAK/QUIT/RETURN)
2007-11-23 00:20:02 +00:00
Przemyslaw Czerpak
585cdb174c 2007-11-22 14:22 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/include/hbwince.h
    + added HB_TCHAR_CONVNREV() macro

  * harbour/contrib/gtwvg/wvtutils.c
  * harbour/contrib/gtwvg/wvtcore.c
  * harbour/contrib/gtwvg/gtwvt.c
    * cleaned MinGW warnings
    ! fixed compilation with HB_TR_LEVEL_DEBUG
    * some minor cleanup in UNICODE conversions
2007-11-22 13:22:20 +00:00
Viktor Szakats
6b9e24dd93 2007-11-17 03:08 UTC+0100 Viktor Szakats (harbour.01 syenar.hu)
* make_vcce.bat
   * make_vcce.mak
     ! Minor corrections (syncing with existing files).

   * doc/genhtm.bat
     ! Minor fix to make it work out of the box.
     - Some obsolete stuff removed from it.

   * include/hbapiitm.h
   * include/hbapi.h
   * source/vm/itemapi.c
     + Added hb_itemPutCLConst() which is the same as 
       hb_itemPutCConst() but the buffer length can be passed.
       Same as xhb hb_itemPutCRawStatic().

   + contrib/xhb/hbcompat.h
     + Added C level compatibility header file.

   * contrib/win32/w32_ole.c
     ! hb_itemPutCRawStatic() -> hb_itemPutCLConst()
     ! Some more xhb API calls changed to Harbour ones.
     ! TraceLog() -> HB_TRACE()
     ! HB_ITEM s_OleAuto -> PHB_ITEM s_pOleAuto
       TOFIX (new): s_pOleAuto is not freed on app exit.
     ! Fixed a few more internal accesses by using API 
       calls.
     ; NOTE: There are four more complicated problems here 
             to be solved:
             1) hb_stackSetActionRequest() call
             2) Passing direct references to HB_ITEM .value 
                members to external functions.
             3) Storing "hidden" information in string ITEMs 
                prepended after the strings' actual content.
             4) Not freeing s_pOleAuto (this var BTW is used in 
                one static function only)

   * source/rtl/hbinet.c
   * source/rdd/dbcmd.c
     ! Changed some xhb C level API calls to Harbour ones.

   * contrib/xhb/Makefile
   * contrib/freeimage/Makefile
   * contrib/apollo/Makefile
   * contrib/firebird/Makefile
   * contrib/libct/Makefile
   * contrib/telepath/Makefile
   * contrib/pgsql/Makefile
   * contrib/gd/Makefile
   * contrib/libnf/Makefile
   * contrib/tip/Makefile
   * contrib/adordd/Makefile
   * contrib/rdd_ads/Makefile
   * contrib/btree/Makefile
   * contrib/samples/Makefile
   * contrib/mysql/Makefile
   * contrib/odbc/Makefile
   * contrib/pdflib/Makefile
     ! Added C and Harbour public headers to GNU makefiles.
     ! Added one missing SVN header.

   * contrib/pdflib/pdfhbdoc.ch
   * contrib/pdflib/pdf.ch
     ! Added missing SVN headers.

   - contrib/pdflib/pdflib.h
     - Removed this file which belongs to the pdflib 
       package. This package is needed anyway to use 
       this contrib. (but the contrib is badly broken)

   * contrib/pdflib/make_b32.bat
   * contrib/pdflib/make_vc.bat
     ! Minor typo.

   * source/rtl/persist.prg
     ! Prefixed static var name with "s_"
2007-11-17 02:26:51 +00:00