Commit Graph

105 Commits

Author SHA1 Message Date
Viktor Szakats
f6515c6b1d 2009-11-23 00:46 UTC+0100 Viktor Szakats (harbour.01 syenar.hu)
* src/vm/arrays.c
  * src/debug/dbgentry.c
  * contrib/xhb/xhbarr.c
  * contrib/xhb/xhberrc.c
  * contrib/xhb/cstructc.c
    * Changed to use native Harbour API function names instead of
      xhb compatibility ones:
         hb_itemForwardValue() -> hb_itemMove()
         hb_itemPutCStatic()   -> hb_itemPutCConst()

  * contrib/hbbmcdx/bmdbfcdx.c
  * contrib/rddsql/sqlbase.c
  * contrib/rddads/adsfunc.c
  * contrib/hbwin/wce_simc.c
  * contrib/hbwin/win_prn1.c
  * contrib/hbwin/win_prn2.c
    % hb_itemNew() + hb_arrayNew() combination replaced
      with single hb_itemArrayNew() call.

  * include/hbapi.h
  * include/hbapiitm.h
    * Marked some legacy/compatibility functions with HB_LEGACY_LEVEL2.
      This means they will be deleted in next major release version:
        LEGACY/DEPRECATED        RECOMMENDED EQUIVALENT
        ----------------------   -----------------------
        hb_retcAdopt()           hb_retc_buffer()
        hb_retclenAdopt()        hb_retclen_buffer()
        hb_retcStatic()          hb_retc_const()
        hb_storclenAdopt()       hb_storclen_buffer()
        hb_itemPutCRawStatic()   hb_itemPutCLConst()
        hb_itemForwardValue()    hb_itemMove()
        hb_itemPutCStatic()      hb_itemPutCConst()
        hb_arraySetCPtr()        hb_arraySetCLPtr()

  * contrib/hbwin/win_tprn.prg
    * Minor formatting.

  * contrib/hbwin/win_osc.c
    * Using HB_BOOL.
    * Varible type notation fixed.
2009-11-22 23:46:57 +00:00
Przemyslaw Czerpak
dc9128c46b 2009-11-22 12:38 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
+ harbour/config/linux/clang.mk
    + added support for CLANG in LINUX builds

  * harbour/include/hbatomic.h
    + added assembler code for SPINLOCKs in WATCOM x86 builds

  * harbour/src/vm/fm.c
    * enabled HB_FM_DLMT_ALLOC by default in MT HVM if HB_FM_DL_ALLOC is
      also enabled

  * harbour/src/vm/dlmalloc.c
    * modifications for non MS-Windows WATCOM builds
      TOFIX: now it compiles in Linux and OS2 builds but it still does not
             work
2009-11-22 11:38:17 +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
0033856cc7 2009-11-20 16:51 UTC+0100 Viktor Szakats (harbour.01 syenar.hu)
* src/rdd/usrrdd/usrrdd.c
    ! USHORT -> HB_ERRCODE.
2009-11-20 15:52:58 +00:00
Przemyslaw Czerpak
c2629e2939 2009-11-20 14:30 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/src/vm/dlmalloc.c
    ! removed hack with overlapped structures with small chunks to not
      confuse C compilers which can make strict-aliasing optimizations

  * harbour/src/vm/set.c
    ! removed old casting left by mistake in hb_conSetCursor() calls
2009-11-20 13:30:53 +00:00
Viktor Szakats
eb8c4798ea 2009-11-20 13:56 UTC+0100 Viktor Szakats (harbour.01 syenar.hu)
* src/vm/set.c
    ! USHORT -> HB_ERRCODE.
2009-11-20 12:57:07 +00:00
Viktor Szakats
b3f6a7d8ee 2009-11-20 13:18 UTC+0100 Viktor Szakats (harbour.01 syenar.hu)
* src/rtl/errapi.c
    * Renamed error variables to use new prefix.

  * ChangeLog
    ! Typo.

  * contrib/hbwin/win_osc.c
    + Added OS_WIN7. Borrowed from xhb / Patrick Mast.
2009-11-20 12:18:58 +00:00
Przemyslaw Czerpak
6ff31964b5 2009-11-20 02:38 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/src/vm/maindllp.c
    ! fixed return value in hb_parvdsbuff() used when original
      hb_parvdsbuff() cannot be found
2009-11-20 01:38:32 +00:00
Przemyslaw Czerpak
496972d91e 2009-11-20 00:18 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/src/rtl/gtcrs/gtcrs.c
    * pacified warning caused by wrong tigetnum() declarations in some
      curses versions

  * harbour/src/rtl/gtsln/gtsln.c
    ! fixed non ANSI-C variable declarations

  * harbour/include/hbsetup.h
    + added macros for PURE and CONST function attributes

  * harbour/contrib/hbct/ctc.c
    * modified variable names
2009-11-19 23:18:42 +00:00
Viktor Szakats
cf888ae565 2009-11-19 19:57 UTC+0100 Viktor Szakats (harbour.01 syenar.hu)
* contrib/hbqt/detect.mk
    ! Fix attempt to handle cross-build situations.

  * src/rtl/errintlo.c
    * Minor formatting.
2009-11-19 18:57:55 +00:00
Viktor Szakats
8a0a7a5d77 2009-11-19 17:06 UTC+0100 Viktor Szakats (harbour.01 syenar.hu)
* src/rtl/errapi.c
  * contrib/hbct/ctc.c
    ! Fixed printf() format strings after recent HB_ERRCODE change.

  * contrib/hbqt/tests/demoqt.prg
    % Deleted hb_idleSleep( 1 ) after main window creation.
      Please advise if it was put there with some reason.

  * contrib/hbqt/hbqt_slots.cpp
    ! Fixed to use hb_releaseCPU() instead of hb_idleSleep( 0.2 ).
      I'm not sure whether this code part was active, but looked like 
      a very bad workaround if the 0.2 sec sleep was really needed there.
2009-11-19 16:06:58 +00:00
Przemyslaw Czerpak
bdc2357f35 2009-11-19 13:34 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/src/rdd/dbfcdx/dbfcdx1.c
    ! minor typo in comment

  * harbour/contrib/rddsql/sddmy/mysqldd.c
  * harbour/contrib/rddsql/sddpg/pgsqldd.c
  * harbour/contrib/rddsql/sddfb/fbirddd.c
  * harbour/contrib/rddsql/sddodbc/odbcdd.c
    ! small fix for include dirs in XCC builds
2009-11-19 12:34:57 +00:00
Przemyslaw Czerpak
a5d2777f5c 2009-11-18 20:15 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/src/vm/strapi.c
    ! fixed return value in hb_itemCopyStr()

  * harbour/contrib/hbct/files.c
  * harbour/contrib/hbct/disk.c
    ! fixed to work with HB_ERRCODE declared as unsigned int
2009-11-18 19:16:08 +00:00
Przemyslaw Czerpak
78158362fd 2009-11-18 18:40 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/src/vm/dlmalloc.c
    ! added workaround for unnecessary checking results of function which
      always have to success
2009-11-18 17:40:35 +00:00
Przemyslaw Czerpak
f111e35a0c 2009-11-18 16:33 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/include/hbthread.h
     * minor cleanup in comment

  * harbour/src/vm/dlmalloc.c
    * use harbour spinlocks in windows builds to eliminate calling
      InterlockedCompareExchange[Pointer]() function

  * harbour/include/hbstack.h
    ! disabled TLS ASM inline code which seems to not work with Win9x.
2009-11-18 15:33:38 +00:00
Przemyslaw Czerpak
ee46919af2 2009-11-17 19:37 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/include/Makefile
  + harbour/include/hbapistr.h
  * harbour/src/vm/Makefile
  * harbour/src/vm/hvmall.c
  + harbour/src/vm/strapi.c
    + added new C functions to extract strings in different encoding:
         void * hb_itemGetStr( PHB_ITEM pItem, void * cdp,
                               const char ** pStrPtr, ULONG * pulLen );
         void * hb_itemGetStrUTF8( PHB_ITEM pItem,
                                   const char ** pStrPtr, ULONG * pulLen );
         void * hb_itemGetStrU16( PHB_ITEM pItem, int iEndian,
                                  const HB_WCHAR ** pStrPtr, ULONG * pulLen );
      extract from given item string in requested encoding and store pointer
      to this string and its size in characters in last two parameters.
      These functions return handler which is used to lock memory buffer
      with result or NULL if given item does not contain string. All not NULL
      handles returned by above functions have to be free by hb_strfree()
      function:
         void hb_strfree( void * hString );
      As long as they are not freed memory buffer set in pStrPtr is valid
      even if other code overwrote given item.
      The second parameter in hb_itemGetStr() can specify expected CP
      encoding, i.e.:
         hStr = hb_itemGetStr( pItem, hb_setGetOSCP(), &pszText, &ulLen );
         if( hStr )
         {
            ...
            hb_strfree( hStr );
         }
      extracts string in encoding set by Set( _SET_OSCODEPAGE, <cCPID> )
      The second parameter in hb_itemGetStrU16() define endian encoding
      and can be one of the following values:
         #define HB_CDP_ENDIAN_NATIVE        0
         #define HB_CDP_ENDIAN_LITTLE        1
         #define HB_CDP_ENDIAN_BIG           2
      defined in hbapicdp.h

    + added new C functions to copy part of strings to given buffers in
      different encoding:
         ULONG hb_itemCopyStr( PHB_ITEM pItem, void * cdp,
                               char * pStrBuffer, ULONG ulSize );
         ULONG hb_itemCopyStrUTF8( PHB_ITEM pItem,
                                   char * pStrBuffer, ULONG ulSize );
         ULONG hb_itemCopyStrU16( PHB_ITEM pItem, int iEndian,
                                  HB_WCHAR * pStrBuffer, ULONG ulSize );
      hb_itemCopyStr*() functions works in similar way to hb_itemGetStr*()
      ones but they copy the strings to given buffer and return the number
      of characters (not bytes) copied to the buffer.

    + added new C functions to store given strings in different encoding in
      HVM item:
         PHB_ITEM hb_itemPutStrLen( PHB_ITEM pItem, void * cdp,
                                    const char * pStr, ULONG ulLen );
         PHB_ITEM hb_itemPutStrLenUTF8( PHB_ITEM pItem,
                                        const char * pStr, ULONG ulLen );
         PHB_ITEM hb_itemPutStrLenU16( PHB_ITEM pItem, int iEndian,
                                       const HB_WCHAR * pStr, ULONG ulLen );
      These functions accepts strings in different encoding, made some
      conversions (if necessary and internal string representation in HVM is
      different) and then store them as HVM string items.

    + added few extended API functions to operate on strings in different
      encoding:
         void * hb_parstr( int iParam, void * cdp,
                           const char ** pStrPtr, ULONG * pulLen );
         void * hb_parstr_utf8( int iParam,
                                const char ** pStrPtr, ULONG * pulLen );
         void * hb_parstr_u16( int iParam, int iEndian,
                               const HB_WCHAR ** pStrPtr, ULONG * pulLen );

         void hb_retstr( void * cdp, const char * szText );
         void hb_retstr_utf8( const char * szText );
         void hb_retstr_u16( int iEndian, const HB_WCHAR * szText );

         void hb_retstrlen( void * cdp, const char * szText, ULONG ulLen );
         void hb_retstrlen_utf8( const char * szText, ULONG ulLen );
         void hb_retstrlen_u16( int iEndian,
                                const HB_WCHAR * szText, ULONG ulLen );

         int hb_storstr( void * cdp, const char * szText, int iParam );
         int hb_storstr_utf8( const char * szText, int iParam );
         int hb_storstr_u16( int iEndian,
                             const HB_WCHAR * szText, int iParam );

         int hb_storstrlen( void * cdp,
                            const char * szText, ULONG ulLen, int iParam );
         int hb_storstrlen_utf8( const char * szText, ULONG ulLen, int iParam );
         int hb_storstrlen_u16( int iEndian,
                                const HB_WCHAR * szText, ULONG ulLen, int iParam );

      They can be used instead of hb_parc*()/hb_retc*()/hb_storc*() ones and
      allow to easy create code which operates on strings in different
      encoding, i.e.:

            HB_FUNC( MY_STRTOUTF8 )
            {
               const char * str;
               ULONG len;
               void * h;
               h = hb_parstr_utf8( 1, &str, &len );
               if( h )
               {
                  hb_retclen( str, len );
                  hb_strfree( h );
               }
            }

    The above functions allows to create code which operates on different
    string encoding, i.e. UTF8, UCS2/UTF16, some CPs and such code is
    independent from internal HVM string representation so we can use
    internally Unicode or not and it will not effect existing code.
2009-11-17 18:38:12 +00:00
Viktor Szakats
5a0350795a 2009-11-17 10:32 UTC+0100 Viktor Szakats (harbour.01 syenar.hu)
* src/rtl/errapi.c
  * src/rtl/philes.c
  * src/rtl/dirdrive.c
  * contrib/hbnf/fttext.c
    * Changed back long versions of Harbour APIs to int version.
      It was an oversight.
2009-11-17 09:33:02 +00:00
Przemyslaw Czerpak
b85179dad9 2009-11-17 03:42 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/config/win/bcc.mk
    ! fixed "" quoting in recent modification - please test

  * harbour/src/rdd/workarea.c
  * harbour/src/rdd/dbf1.c
  * harbour/src/rdd/delim1.c
  * harbour/src/rdd/sdf1.c
  * harbour/src/rdd/dbfntx/dbfntx1.c
  * harbour/src/rdd/dbfnsx/dbfnsx1.c
  * harbour/src/rdd/dbfcdx/dbfcdx1.c
  * harbour/src/rdd/dbffpt/dbffpt1.c
  * harbour/src/rdd/hbsix/sxsem.c
  * harbour/src/rdd/usrrdd/usrrdd.c
  * harbour/contrib/rddads/adsx.c
  * harbour/contrib/rddads/ads1.c
    * modified to use HB_ERRCODE instead of USHORT and updated some
      variable names
2009-11-17 02:42:46 +00:00
Viktor Szakats
500a63d956 2009-11-17 01:05 UTC+0100 Viktor Szakats (harbour.01 syenar.hu)
* src/rdd/dbfntx/dbfntx1.c
  * src/rdd/dbfnsx/dbfnsx1.c
  * src/rdd/dbfcdx/dbfcdx1.c
  * src/rdd/dbffpt/dbffpt1.c
  * contrib/xhb/xhbfunc.c
  * contrib/hbnf/fttext.c
  * contrib/hbbmcdx/bmdbfcdx.c
    + Changed to use HB_ERRCODE.

  * contrib/hbmzip/hbmzip.c
    * Minor formatting.
    ; NOTE/TOFIX: Here there is again 'int' used as error code.

  * contrib/rddsql/sddodbc/tests/test1.prg
  * contrib/rddsql/sddodbc/tests/test2.prg
    ! Fixed to use manifest constants instead of literals in SET() calls.
2009-11-17 00:06:04 +00:00
Przemyslaw Czerpak
264684f356 2009-11-16 19:52 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/src/nortl/nortl.c
    ! fixed left by mistake ULONG ulIntCode in non HVM hb_errInternal()
2009-11-16 18:53:05 +00:00
Przemyslaw Czerpak
1dd0ad3408 2009-11-16 17:44 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/src/rtl/errapi.c
  * harbour/include/hbapierr.h
    * renamed ulGenCode to errGenCode and ulSubCode to errSubCode
2009-11-16 16:45:11 +00:00
Przemyslaw Czerpak
ba7b29409f 2009-11-16 17:35 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/include/hbapierr.h
  * harbour/src/rtl/errint.c
  * harbour/src/rtl/errintlo.c
  * harbour/src/lang/msghuiso.c
  * harbour/src/lang/msgskiso.c
  * harbour/src/lang/msgrukoi.c
  * harbour/src/lang/msghuwin.c
  * harbour/src/lang/msgzhgb.c
  * harbour/src/lang/msgskwin.c
  * harbour/src/lang/msg_tpl.c
  * harbour/src/lang/msgruwin.c
  * harbour/src/lang/msgelwin.c
  * harbour/src/lang/msgro.c
  * harbour/src/lang/msgpt.c
  * harbour/src/lang/msghriso.c
  * harbour/src/lang/msghrwin.c
  * harbour/src/lang/msgsliso.c
  * harbour/src/lang/msgbe866.c
  * harbour/src/lang/msgslwin.c
  * harbour/src/lang/msghe862.c
  * harbour/src/lang/msgcskam.c
  * harbour/src/lang/msggl.c
  * harbour/src/lang/msgtrwin.c
  * harbour/src/lang/msgbgiso.c
  * harbour/src/lang/msgeo.c
  * harbour/src/lang/msgskkam.c
  * harbour/src/lang/msgbgwin.c
  * harbour/src/lang/msges.c
  * harbour/src/lang/msguakoi.c
  * harbour/src/lang/msgzhb5.c
  * harbour/src/lang/msgeu.c
  * harbour/src/lang/msgpl852.c
  * harbour/src/lang/msguados.c
  * harbour/src/lang/msgsr852.c
  * harbour/src/lang/msguawin.c
  * harbour/src/lang/msgde.c
  * harbour/src/lang/msgtr857.c
  * harbour/src/lang/msgru866.c
  * harbour/src/lang/msgcs852.c
  * harbour/src/lang/msgfr.c
  * harbour/src/lang/msgis850.c
  * harbour/src/lang/msgnl.c
  * harbour/src/lang/msghu852.c
  * harbour/src/lang/msgsk852.c
  * harbour/src/lang/msgplmaz.c
  * harbour/src/lang/msgca.c
  * harbour/src/lang/msgpliso.c
  * harbour/src/lang/msgplwin.c
  * harbour/src/lang/msgbgmik.c
  * harbour/src/lang/msgid.c
  * harbour/src/lang/msgbg866.c
  * harbour/src/lang/msgltwin.c
  * harbour/src/lang/msgptiso.c
  * harbour/src/lang/msgsriso.c
  * harbour/src/lang/msgel.c
  * harbour/src/lang/msgsrwin.c
  * harbour/src/lang/msgbewin.c
  * harbour/src/lang/msgdewin.c
  * harbour/src/lang/msghr437.c
  * harbour/src/lang/msghr852.c
  * harbour/src/lang/msgua866.c
  * harbour/src/lang/msgko.c
  * harbour/src/lang/msghewin.c
  * harbour/src/lang/msgsl437.c
  * harbour/src/lang/msgit.c
  * harbour/src/lang/msgsl852.c
  * harbour/src/lang/msghucwi.c
  * harbour/src/lang/msgcsiso.c
  * harbour/src/lang/msgcswin.c
  * harbour/src/lang/msgeswin.c
    * changed ULONG ulIntCode to HB_ERRCODE errCode in internal errors
2009-11-16 16:38:25 +00:00
Viktor Szakats
59cb78d63e 2009-11-16 12:34 UTC+0100 Viktor Szakats (harbour.01 syenar.hu)
* src/rtl/filesys.c
    ! Typo in r12896.
2009-11-16 11:35:32 +00:00
Viktor Szakats
6f361dd22c 2009-11-16 12:32 UTC+0100 Viktor Szakats (harbour.01 syenar.hu)
* src/rtl/errapi.c
    ! Changed some more ULONG to HB_ERRCODE.

  * contrib/hbxbp/Makefile
  * contrib/hbssl/Makefile
    + Added skip reason text.
2009-11-16 11:33:12 +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
Viktor Szakats
10a1a48504 2009-11-16 09:52 UTC+0100 Viktor Szakats (harbour.01 syenar.hu)
* config/beos/gcc.mk
  * config/bsd/gcc.mk
  * config/wce/mingwarm.mk
  * config/wce/poccarm.mk
  * config/wce/msvcarm.mk
  * config/darwin/gcc.mk
  * config/darwin/icc.mk
  * config/darwin/clang.mk
  * config/hpux/gcc.mk
  * config/dos/watcom.mk
  * config/dos/djgpp.mk
  * config/win/xcc.mk
  * config/win/mingw.mk
  * config/win/pocc.mk
  * config/win/bcc.mk
  * config/win/watcom.mk
  * config/win/icc.mk
  * config/win/cygwin.mk
  * config/win/msvc.mk
  * config/linux/gcc.mk
  * config/os2/watcom.mk
  * config/os2/gcc.mk
  * config/sunos/gcc.mk
  * config/sunos/sunpro.mk
    + Added HB_USER_LIBS support to dynamic libs.

  * config/globsh.mk
    ! Attempt to fix dynamic lib .tds deletion on clean for bcc.

  * src/codepage/cpno865.c
  * src/codepage/cphu852c.c
  * src/codepage/cpfr850.c
  * src/codepage/cpde850.c
  * src/codepage/cpit850.c
    + Marked as VERIFIED.
2009-11-16 08:52:59 +00:00
Viktor Szakats
05a60ef478 2009-11-15 23:33 UTC+0100 Viktor Szakats (harbour.01 syenar.hu)
* src/rtl/errapi.c
    ! Typo in comment.
    * Deleted unnecessary casting.
    % Minor opt in hb_errPutOperation() string parameter defaulting.

  * ChangeLog
  * contrib/hbqt/hbqt_misc.prg
  * contrib/hbxbp/xbpgeneric.prg
    % Minor opt.
    ! Fixed variable name prefixes of STATIC/THREAD STATIC vars.
    ! Fixed to create mutex directly in STATIC var assignment instead of INIT function.
    % Fixed to use hb_releaseCPU() instead of hb_idleSleep( 0.01 ).
      Notice that latter actually slows down execution unnecessarily, 
      so it should only be used when we do actually want to wait.

  * contrib/hbxbp/tests/demoxbp.prg
    ! Eliminated warnings after latest changes.
2009-11-15 22:35:57 +00:00
Viktor Szakats
8d0fd3dc5a 2009-11-15 08:21 UTC+0100 Viktor Szakats (harbour.01 syenar.hu)
* src/rtl/hbi18n1.c
    ! Fixed bcc warning in recent commit.

  * contrib/gtwvg/tests/demoxbp.prg
    ! Fixed to use HB_SYMBOL_UNUSED() instead of local solution.

  * contrib/gtwvg/tests/demowvg.prg
    + Added dirbase to icon filenames

  * contrib/gtwvg/Makefile
    + Enabled for msvc64 and pocc64.
2009-11-15 07:22:25 +00:00
Viktor Szakats
2bf21ca21e 2009-11-15 05:12 UTC+0100 Viktor Szakats (harbour.01 syenar.hu)
* src/compiler/genc.c
  * src/compiler/gencc.c
    * Using HB_BYTE instead of BYTE in generated .c sources.

  * contrib/Makefile
  + contrib/hbsms
  + contrib/hbsms/Makefile
  + contrib/hbsms/hbsms.hbc
  + contrib/hbsms/hbsms.prg
  + contrib/hbsms/tests
  + contrib/hbsms/tests/hbmk.hbm
  + contrib/hbsms/tests/send.prg
    + Added SMS library. Currently sending is implemented.
      SMS_SEND( <cPort>, <cPhoneNumber>, <cText>, [<lDeliveryReport>], [<cPIN>] ) -> <nErrorCode. 0 = success>
    ; Uses hbtpathy.

  * contrib/hbwin/tests/hbmk.hbm
    ! Missing -es2.
2009-11-15 04:22:05 +00:00
Viktor Szakats
396dff8431 2009-11-14 18:08 UTC+0100 Viktor Szakats (harbour.01 syenar.hu)
* src/rtl/hbi18n1.c
    + Added plural form support for these languages:
      CS, FR, GA, HR, HU, JA, KO, LV, PT-BR, RO, SK, SL, SR, TR, UK, VI

  * src/rtl/cputime.c
    * Minor formatting.
2009-11-14 17:11:06 +00:00
Przemyslaw Czerpak
5de455b929 2009-11-14 16:00 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/src/rtl/cdpapi.c
    * updated to work well with CPs where CHR( 0 ) is not sorted as 1-st
      character

  * harbour/tests/cpinfo.prg
    * chose binary form for CPs where upper and lower letters are sorted
      in different order

  * harbour/src/codepage/cpnl850.c
    * updated to binary form
2009-11-14 15:00:50 +00:00
Viktor Szakats
8d11d45221 2009-11-14 05:06 UTC+0100 Viktor Szakats (harbour.01 syenar.hu)
* src/codepage/cp_tpl.c
  * src/codepage/cpbg866.c
  * src/codepage/cpbgiso.c
  * src/codepage/cpbgmik.c
  * src/codepage/cpbgwin.c
  * src/codepage/cpcs852.c
  * src/codepage/cpcsiso.c
  * src/codepage/cpcskam.c
  * src/codepage/cpcswin.c
  * src/codepage/cpdeiso.c
  * src/codepage/cpdewin.c
  * src/codepage/cpel737.c
  * src/codepage/cpeliso.c
  * src/codepage/cpelwin.c
  * src/codepage/cpes850.c
  * src/codepage/cpesiso.c
  * src/codepage/cpeswin.c
  * src/codepage/cpeswinm.c
  * src/codepage/cpfriso.c
  * src/codepage/cpfrwin.c
  * src/codepage/cphr437.c
  * src/codepage/cphr852.c
  * src/codepage/cphrwin.c
  * src/codepage/cphuiso.c
  * src/codepage/cphuwin.c
  * src/codepage/cpit437.c
  * src/codepage/cpitisb.c
  * src/codepage/cpitiso.c
  * src/codepage/cpitwin.c
  * src/codepage/cpltwin.c
  * src/codepage/cppl852.c
  * src/codepage/cppliso.c
  * src/codepage/cpplmaz.c
  * src/codepage/cpplwin.c
  * src/codepage/cppt850.c
  * src/codepage/cpptiso.c
  * src/codepage/cpro852.c
  * src/codepage/cproiso.c
  * src/codepage/cprowin.c
  * src/codepage/cpru866.c
  * src/codepage/cpruiso.c
  * src/codepage/cprukoi.c
  * src/codepage/cpruwin.c
  * src/codepage/cpsk852.c
  * src/codepage/cpskiso.c
  * src/codepage/cpskkam.c
  * src/codepage/cpskwin.c
  * src/codepage/cpsl437.c
  * src/codepage/cpsl852.c
  * src/codepage/cpsliso.c
  * src/codepage/cpslwin.c
  * src/codepage/cpsrwin.c
  * src/codepage/cpsv437c.c
  * src/codepage/cpsviso.c
  * src/codepage/cpsvwin.c
  * src/codepage/cptr857.c
  * src/codepage/cptriso.c
  * src/codepage/cptrwin.c
  * src/codepage/cpua1125.c
  * src/codepage/cpua866.c
  * src/codepage/cpuakoi.c
  * src/codepage/cpuawin.c
  * src/codepage/Makefile
    % Deleted now redundant comments.
2009-11-14 04:07:58 +00:00
Viktor Szakats
fcb59fd813 2009-11-14 04:57 UTC+0100 Viktor Szakats (harbour.01 syenar.hu)
* src/codepage/cpde850.c
  * src/codepage/cpes850c.c
  * src/codepage/cpfi850.c
  * src/codepage/cpfr850.c
  * src/codepage/cphu852.c
  * src/codepage/cphu852c.c
  * src/codepage/cpis850.c
  * src/codepage/cpis861.c
  * src/codepage/cpit850.c
  * src/codepage/cpnl850.c
  * src/codepage/cpno865.c
  * src/codepage/cppt860.c
  * src/codepage/cpsv850.c
    + Regenerated using latest cpinfo.prg in C5.2e Intl.
2009-11-14 03:58:36 +00:00
Przemyslaw Czerpak
4be6249a73 2009-11-14 04:21 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/include/hbdefs.h
    * added small hack to eliminate negative handles from 32 bit windows
      builds. Please remember that this trick can work only in 32 bit
      windows version. In 64 bit ones valid handle after casting to integer
      value can give negative 64 bit number so checking for wrong handle
      please compare them with FS_ERROR (-1) instead of using < 0 or sth
      like that. Otherwise your code may not work properly with some new
      windows versions or may even suddenly stop to work with existing
      ones even if they worked for some time without problems.

  * harbour/src/rdd/dbf1.c
    * pacified warning after adding above hack

  * harbour/tests/cpinfo.prg
    ! removed unnecessary EOL reported by Viktor
2009-11-14 03:22:09 +00:00
Mindaugas Kavaliauskas
8bb0bab87c 2009-11-13 14:28 UTC+0200 Mindaugas Kavaliauskas (dbtopas/at/dbtopas.lt)
* harbour/src/rtl/hbi18n1.c
    ! fixed Lithuanian plural form index
2009-11-13 12:31:34 +00:00
Przemyslaw Czerpak
b7a1bda9c0 2009-11-10 18:24 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/tests/cpinfo.prg
  * harbour/include/hbapicdp.h
  * harbour/include/hbcdpreg.h
    * modified format used for CP definition using binary tables
    + added Latin character striping from non Latin based CPs
    * changed warning message to be more clear. In most of cases when
      this message is shown:
         Warning: irregular CP which needs verification for human
                  readable definition in Harbour
      it should be possible to create human non binary CP definition.
      Usually it should be enough to copy HB_CP_UPPER and HB_CP_LOWER
      strings and verify if final result are compatible by comparing
      automatically generated .c file with binary tables. If you will
      find some CPs where it's not compatible then please inform me
      about it and I'll try to update cpinfo.prg
      When this message is shown:
         Warning: irregular CP which needs special definition in Harbour
                  using binary tables generated by this program
      then binary tables have to be used to replicate exact CP conditions.
      If no warning message is shown then human readable form of CP
      definition can be used without (I hope ;)) additional verification.

  * harbour/src/codepage/cpno865.c
  * harbour/src/codepage/cpit850m.c
  * harbour/src/codepage/cpis850.c
  * harbour/src/codepage/cpfr850.c
  * harbour/src/codepage/cpes850c.c
  * harbour/src/codepage/cpsv850m.c
  * harbour/src/codepage/cpde850m.c
  * harbour/src/codepage/cppt860.c
  * harbour/src/codepage/cpnl850m.c
  * harbour/src/codepage/cpnl850.c
  * harbour/src/codepage/cpde850.c
  * harbour/src/codepage/cpfi850.c
  * harbour/src/codepage/cpit850.c
  * harbour/src/codepage/cpis861.c
  * harbour/src/codepage/cpes850m.c
  * harbour/src/codepage/cpfr850m.c
  * harbour/src/codepage/cpsv437c.c
  * harbour/src/codepage/cpdk865.c
  * harbour/src/codepage/cpgr437.c
    * updated for new format
2009-11-10 17:25:29 +00:00
Viktor Szakats
79764499f2 2009-11-10 16:55 UTC+0100 Viktor Szakats (harbour.01 syenar.hu)
* src/codepage/cpit850m.c
  * src/codepage/cpde850m.c
  * src/codepage/cpsv850m.c
  * src/codepage/cpnl850m.c
  * src/codepage/cpes850m.c
  * src/codepage/cpfr850m.c
    ! Deleted Chr(26) EOL.

  * src/codepage/Makefile
  - src/codepage/cpgr851.c
  * include/hbextcdp.ch
    - Deleted this CP as we miss CP 851 definition.
2009-11-10 15:55:33 +00:00
Viktor Szakats
29d86ceea5 2009-11-10 15:25 UTC+0100 Viktor Szakats (harbour.01 syenar.hu)
* include/hbextcdp.ch
    * Updated to reflect recent couple of commits.

  * src/codepage/Makefile
  + src/codepage/cpit850m.c
  + src/codepage/cpde850m.c
  + src/codepage/cpsv850m.c
  + src/codepage/cpnl850m.c
  + src/codepage/cpes850m.c
  + src/codepage/cpfr850m.c
    + Added mdx*.obj compatible CPs, created by cpinfo.prg.
    ; TOFIX: I didn't added mdxuk and mdxusa, simply because 
             it cannot fit in current filename scheme, which 
             uses only two chars to denote language.
2009-11-10 14:29:32 +00:00
Viktor Szakats
6e88027684 2009-11-10 15:15 UTC+0100 Viktor Szakats (harbour.01 syenar.hu)
* src/codepage/cpes850c.c
  * src/codepage/cpnl850.c
  * src/codepage/cpde850.c
  * src/codepage/cpfi850.c
  * src/codepage/cpit850.c
    ! Wrong CP in descriptions.
2009-11-10 14:15:53 +00:00
Viktor Szakats
66468dc258 2009-11-10 15:05 UTC+0100 Viktor Szakats (harbour.01 syenar.hu)
* codepage/Makefile
  - codepage/cpesisoc.c
  - codepage/cpeswinc.c
    - Deletes ISO and Win pairs of ES850C.

  * codepage/Makefile
  + codepage/cpgr437.c
  + codepage/cpgr851.c
  + codepage/cpis850.c
  + codepage/cpis861.c
  + codepage/cpdk865.c
  + codepage/cpfi850.c
  + codepage/cpnl850.c
  + codepage/cpno865.c
  + codepage/cppt860.c
    + Added CPs generated via cpinfo.prg from ntx*.obj (C5.2e).
      For these language, I've only 'guessed' the CP assigment:
          cpdk865
          cpfi850
          cpnl850
          cpno865
          cppt860
      TOFIX: Any mistakes in above.

  * codepage/Makefile
  - codepage/cpsvclip.c
  + codepage/cpsv437c.c
    * Renamed to use naming scheme like all others.
    ; TOFIX: 437 is most certainly wrong CP assigment, and 
             it should probably be 850 or 865.

  * codepage/cpfr850.c
  * codepage/cpes850c.c
  * codepage/cpde850.c
  * codepage/cpit850.c
    * Replaced with versions generated by cpinfo.prg.

  ; TODO: cpinfo.prg isn't generating short format of CP source files, 
          so all above may need to be converted to it for better readability.
2009-11-10 14:11:46 +00:00
Przemyslaw Czerpak
24e09f396f 2009-11-10 13:34 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/tests/cpinfo.prg
    + added additional information that binary tables generated by cpinfo.prg
      have to be used instead of human readable form when such situation can
      be easy detected

  * harbour/src/codepage/cpsvclip.c
    * replaced old definition with binary tables generated by cpinfo.prg
      to fully replicate wrong Clipper NTXSWE.OBJ definition.
2009-11-10 12:34:49 +00:00
Mindaugas Kavaliauskas
e607a388df 2009-11-10 13:02 UTC+0200 Mindaugas Kavaliauskas (dbtopas/at/dbtopas.lt)
* harbour/src/rtl/cdpapi.c
    * removed unnecessary assignment to pacify BCC warning
2009-11-10 11:01:54 +00:00
Przemyslaw Czerpak
afe718b590 2009-11-10 11:54 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/include/hbset.h
  * harbour/src/vm/set.c
    + added new C function hb_setGetOSCP()
2009-11-10 10:55:05 +00:00
Przemyslaw Czerpak
38029fd7c9 2009-11-10 09:43 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/src/codepage/cphu852c.c
    * converted to use human readable form which I think should better
      show what exactly Clipper's ntxhu852.obj does
2009-11-10 08:43:56 +00:00
Viktor Szakats
402ef31cf4 2009-11-10 09:20 UTC+0100 Viktor Szakats (harbour.01 syenar.hu)
* src/codepage/cphu852.c
  + src/codepage/cphu852c.c
  - src/codepage/cphu852s.c
  * src/codepage/Makefile
  * include/hbextcdp.ch
    * Changed HU852 CP to be the same as HUISO and HUWIN.
      I kept the extra non-Hungarian char, which makes this CP 
      fully compatible with sixhu852.obj.
    + Added HU852C which is fully C5.2e compatible, this file 
      was generated by cpinfo using C5.2e Intl + ntxhu852.obj.
      This may fix some C5.2e incompatibilities that existed 
      in former HU852 CP.
    - Deleted HU852S, it's now called HU852.
    ; NOTE: Since there is no 'default' HU852 CP in Harbour I 
            find it ok to provide C5.2e compatible CP by the 
            name 'HU852C'. If this seems bothering to Hungarian 
            users in general, we may think out something.
2009-11-10 08:21:50 +00:00
Viktor Szakats
d7191fbbe1 2009-11-10 07:15 UTC+0100 Viktor Szakats (harbour.01 syenar.hu)
* src/codepage/Makefile
  * include/hbextcdp.ch
    ! Deleted references to deleted CPs.
2009-11-10 06:16:15 +00:00
Viktor Szakats
f305183b75 2009-11-10 03:37 UTC+0100 Viktor Szakats (harbour.01 syenar.hu)
- src/codepage/cphuisos.c
  - src/codepage/cphuwins.c
    - Deleted these variants which are no longer needed.

  * src/codepage/cphuiso.c
  * src/codepage/cphuwin.c
    * Updated comments.
    ; TOFIX: Remove or not remove ASCII 196/228 char pair?
             It's not a Hungarian accented char, it was present 
             in sixhu852, but since we don't have any obligations
             to keep compatibility as the CP is different anyway, 
             maybe the best would be to clean it.
             What is the general opinion in this regard in Harbour?
2009-11-10 02:39:28 +00:00
Przemyslaw Czerpak
e14470365f 2009-11-10 02:35 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/src/rtl/cdpapi.c
  * harbour/include/hbapicdp.h
    + added new C functions:
         hb_cdpU16AsStrLen(), hb_cdpU16ToStr(),
         hb_cdpStrAsU16Len(), hb_cdpStrToU16()

  * harbour/contrib/gtwvg/wvgutils.c
    ! fixed NULL used by mistake instead of 0
2009-11-10 01:35:49 +00:00
Przemyslaw Czerpak
bebed22350 2009-11-09 21:18 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/ChangeLog
    * marked last TOFIX note as [DONE] - thanks to Mindaugas

  * harbour/src/rtl/cdpapi.c
    * use 1-st upper<->lower conversion pair instead of last one
      if more then one conversion pair exist - it's more natural
      form in most of cases
    % skip translation code when two different CDP modules use
      the same Unicode table

  * harbour/tests/cpinfo.prg
    + detect CPs which have corresponding upper or lower characters
      for non alpha characters and inform about it.
      Such situations is in NTXSPA.OBJ so such CP can be fully
      replicated in Harbour using alternative CP definition only
      which uses static tables.

  * harbour/src/codepage/cpes850c.c
  * harbour/src/codepage/cpesisoc.c
  * harbour/src/codepage/cpeswinc.c
    ! removed the hack with changed order for characters which do not
      have corresponding upper latter.
      Now there is only one difference between ES850C and Clipper NTXSPA.OBJ
      In NTXSPA 'UPPER( Chr( 163 ) )' gives "U" though Chr( 163 ) is not
      marked as letter and not sorted with other letters. For me it looks
      like a bug anyhow if you want to fully replicate NTXSPA.OBJ in Harbour
      then current cpes850c.c code should be replaced by code generated
      using tests/cpinfo.prg compiler by clipper and linked with ntxspa.obj.
      Such code should be generated using:
         cpinfo.exe es850c "Spanish CP-850 (ntxspa.obj compatible)" 850

      Now translations can be done between CPs using different number of
      letters or even defined for different languages so I have question
      to Spanish users: Do you need ESISOC and ESWINC for anything?
      If not then I would like to remove them.
      Similar situation is with HUISOS and HUWINS.

  * harbour/include/hbapicdp.h
  * harbour/src/rtl/cdpapi.c
  * 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/cpesisoc.c
  * harbour/src/codepage/uc866.c
  * harbour/src/codepage/uc8859_3.c
  * harbour/src/codepage/cpes850c.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/cpeswinc.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
    % declare Unicode tables with 'const' qualifier
2009-11-09 20:22:48 +00:00