Commit Graph

531 Commits

Author SHA1 Message Date
Viktor Szakats
2cb717f820 2010-12-11 17:52 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
* src/rtl/gtwin/gtwin.c
    + Attempt to enable HB_GTI_PALETTER support for MSVC 2005/2008
      combined with Longhorn SDK. (also reverted prev change)
      Please retest in above environments, plus old MSVC and
      BCC 5.9.

  * config/hbc.cfg
    + More tweaks to make it Harbour-ready.
2010-12-11 16:55:05 +00:00
Viktor Szakats
6785f0b732 2010-12-11 16:17 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
* src/rtl/gtwin/gtwin.c
    ! Disabled HB_GTI_PALETTE support for MSVC 2005/2008
      versions combined with certain (older) SDK versions.
      The symptom is missing NDDI_* detection support, yet
      present CONSOLE_SCREEN_BUFFER_INFOEX structure.
      (Most pbly SDK 6.x. SDK 7.0a is fine)
      Thanks to Andi for the tests.

  * config/hbc.cfg
    + Few tweaks to make it more Harbour compliant.
      F.e. for hblzf.c it now generated perfect result.

  * contrib/hblzf/hblzf.c
  * contrib/hblzf/tests/test.prg
    ! Added missing EOL at EOF.
    ! Restored my formatting fixes from previous commits.
    ! Refixed wrong formatting. (for the ~5th time)
    - Deleted synonym added in previous commit.
      I suggest to write a few words of reasoning for
      changes not having obviously apparent reason.
      It's brand new lib, so we should decide about _one_
      (the best) initial name and stick to it. Let's use
      synonyms if we later find out that we did some
      mistakes in the past, or other special occasion.
2010-12-11 15:21:47 +00:00
Viktor Szakats
eb65ad9c48 2010-12-11 11:15 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
* src/rtl/gtwin/gtwin.c
    + Added HB_GTI_PALETTE support to GTWIN for all non-msvc 
      compilers.
      (solution is hackish so it may need revision as future
      non-msvc, non-watcom compiler versions implement this
      feature in their own WinAPI headers.
2010-12-11 10:18:16 +00:00
Przemyslaw Czerpak
3a71036691 2010-12-05 01:04 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/include/hbapicdp.h
  * harbour/include/hbcdpreg.h
  * harbour/src/rtl/cdpapi.c
  * harbour/tests/cpinfo.prg
    + added support to define CPs using different letter case sorting
      in human readable form. Now it's possible to use:
         // uppers before lowers: ABCDE...abcde...
         #define HB_CP_CSSORT    HB_CDP_CSSORT_UPLO
         // uppers and lowers are mixed: AaBbCcDdEe....
         #define HB_CP_CSSORT    HB_CDP_CSSORT_MIXED
         // ignore case
         #define HB_CP_CSSORT    HB_CDP_CSSORT_IGNORE
2010-12-05 00:04:47 +00:00
Viktor Szakats
1e8ce2e200 2010-12-04 12:53 UTC+0100 Viktor Szakats (harbour.01 syenar.hu)
* src/rtl/hbsocket.c
    ! Fixed typo breaking MS-DOS builds.
2010-12-04 11:54:22 +00:00
Viktor Szakats
25bffb2a7d 2010-12-02 21:42 UTC+0100 Viktor Szakats (harbour.01 syenar.hu)
* src/rtl/hbinet.c
    * Do not set SO_EXCLUSIVEADDRUSE on Windows in
      HB_INETSERVER(), HB_INETDGRAMBIND() calls.
    ; NOTE: INET API is compatibility API, it's deprecated and
            not recommended. Use SOCKET API instead, where
            you have full control of above options and it's
            also much superior API.
2010-12-02 20:42:33 +00:00
Viktor Szakats
514c3a2d00 2010-12-02 14:41 UTC+0100 Viktor Szakats (harbour.01 syenar.hu)
* include/harbour.hbx
  * include/hbsocket.h
  * src/rtl/hbsocket.c
  * src/rtl/hbinet.c
  * src/rtl/hbsockhb.c
    + Added hb_socketSetExclusiveAddr() on .c level.
    + Added hb_socketSetExclusiveAddr() on .prg level.
    * hb_socketSetReuseAddr() cleaned from SO_EXCLUSIVEADDRUSE (Windows-only)
      logic.
    * Changed HB_INETSERVER(), HB_INETDGRAMBIND() to call
      hb_socketSetExclusiveAddr()(). We may delete these if they
      cause problems on some Windows platforms, though we must
      absolutely use this option (for security reasons) in every
      server component, if Windows host supports it.
    ; TODO: Call hb_socketSetExclusiveAddr() from hbnetio server,
            hbhttpd server.

  * include/hbcpage.hbx
  * src/codepage/Makefile
  + src/codepage/cpcs852c.c
  * src/codepage/cpsk852c.c
  - src/codepage/cpcskam.c
  + src/codepage/cpcskamc.c
  - src/codepage/cpskkam.c
  + src/codepage/cpskkamc.c
    ! Fixed SK852C to be fully Clipper compatible. (generated with cpinfo)
    ! Added Clipper compatible CS852C CP. (generated with cpinfo)
    * SK/CS Kamenicky CP moved to Clipper compatibility status.
      Updated to be Clipper compatible. (generated with cpinfo)
      INCOMPATIBLE. Pls update CP names if you used these.
      Thanks to Jaroslav Janik for the help.
      Please test all these.
2010-12-02 13:44:51 +00:00
Viktor Szakats
a623c4232f 2010-11-30 08:37 UTC+0100 Viktor Szakats (harbour.01 syenar.hu)
* src/rtl/hbsocket.c
    ! hb_socketSetReuseAddr() changed on win platforms to use
      SO_EXCLUSIVEADDRUSE instead of SO_REUSEADDR. See http://paste.lisp.org/display/59751.
      Rough patch, maybe the logic isn't applied to the right place,
      maybe extra win version checks are required, please test it
      and patch it further if needed.

  * src/rtl/hbinet.c
    * s_inetBind() changed back to call hb_socketSetReuseAddr() also
      on win platforms.

  * contrib/hbwin/tests/testole.prg
    + Added shortcut creation example.

  * contrib/hbide/idemisc.prg
    ! Fixed HBIDE_PATHNORMALIZED() to _never_ lowercase passed
      filename. As discussed very long time ago, such behavior
      is not portable. For comparison purposes HB_FILEMATCH()
      should be used, for other purposes _no_ change should be
      done by hbide in filename casing. Ever.
      This is brute force fix only applied to low-level code.
      It will cause regressions on the higher level, which have
      to be fixed.
    ; TODO: Delete this second parameter from all calls, now
            the value is ignored.
    ; TOFIX: Review all
             HBIDE_PATHNORMALIZED() and
             HBIDE_PATHNORMALIZED( p, .T. )
             calls if they are used in comparison context and change
             caller code to use HB_FILEMATCH().
    ; TOFIX: All current code which uses LOWER()/UPPER() to
             "normalize" filename before comparison with '=='
             operator should also be changed to HB_FILEMATCH().
             (except for cases where extension is used in the
             sense of file type).
    ; TOFIX: Rest of cases where LOWER()/UPPER() is applied to
             filenames.
    ! Fixed HBIDE_PATHFILE() to never uppercase drive letter.
      It's not strictly required since all so far known systems
      supporting drive letter are case insensitive, but it's
      nevertheless not the job of hbide to reformat pathnames.

  * contrib/hbide/ideactions.prg
  * contrib/hbide/idesaveload.prg
  * contrib/hbide/ideharbourhelp.prg
  * contrib/hbide/ideeditor.prg
  * contrib/hbide/ideprojmanager.prg
  * contrib/hbide/idesources.prg
    ! Fixed some code to use HB_FILEMATCH() instead of unconditional
      uppercasing/lowercasing. Please review and finish this modification, 
      there might be more hidden places and might have overlooked anything 
      in this patch.
2010-11-30 07:46:52 +00:00
Przemyslaw Czerpak
f65ef41176 2010-11-29 15:42 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/src/rtl/cdpapi.c
    ! fixed character sort weight calculation for digraphs
2010-11-29 14:42:51 +00:00
Viktor Szakats
4a22ee33f7 2010-11-26 13:44 UTC+0100 Viktor Szakats (harbour.01 syenar.hu)
* include/hbapi.h
  * src/common/hbver.c
    + Added hb_iswin2k3().

  * src/rtl/hbsocket.c
    + Comment.
    ; TOFIX: Use SO_EXCLUSIVEADDRUSE on Windows.
             See: http://paste.lisp.org/display/59751

  - examples/udpds
  + contrib/hbmisc/tests/udpdstst.prg
  + contrib/hbmisc/udpds.prg
  * contrib/hbmisc/hbmisc.hbp
    + Moved UDPDS functions to hbmisc lib. Added hb_ prefix to names,
      plus formatted with hbformat.

  * contrib/hbhttpd/tests/webapp.prg
    * Formatting.

  ; Patch from Tamas:

  * config/bsd/gcc.mk
  * config/bsd/clang.mk
    * switch bsd to -fPIC, otherwise not even core builds (on 8.1/amd64)
    * while there, bring bsd/gcc.mk in line with linux/gcc.mk (now they
      are identical)
    * ditto for bsd/clang.mk

  * contrib/hbqt/hbqt_common.hbc
    * for hbqt, switch static supc++ to dynamic stdc++, otherwise dyn hbqt
      doesn't build. this is because on at least fbsd supc++ is apparently
      not pic; but switching from static supc++ to dynamic stdc++ easily
      fixes it.
2010-11-26 12:46:14 +00:00
Przemyslaw Czerpak
b244822532 2010-11-25 11:51 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/src/rtl/hbinet.c
    * restored old behavior of listen sockets used by hb_inet*() functions
      for non Windows platforms (SO_REUSEADDR)
2010-11-25 10:51:56 +00:00
Przemyslaw Czerpak
69bab2430e 2010-11-24 18:20 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/src/rtl/fstemp.c
    * enabled mkstemp() usage in *nix OpenWatcom 1.8 and newer builds

  * harbour/src/rtl/hbsocket.c
    * disabled getpeername() and shutdown() usage in OpenWatcom *nix
      builds only for OpenWatcom <= 1.9

  * harbour/src/rtl/diskspac.c
    * minor formatting

  * harbour/src/rtl/hbproces.c
    * enabled sysconf() hack only for OpenWatcom <= 1.9

  * harbour/src/rtl/hbcom.c
    * disabled OpenWatcom *nix builds only for OpenWatcom <= 1.9

  ; it's possible that above modifications will cause error if problems
    are not fixed in newer OpenWatcom releases but in such case we can
    simply change to OW number in #if condition.
2010-11-24 17:20:18 +00:00
Przemyslaw Czerpak
d3b7a3a61b 2010-11-21 17:35 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/src/vm/thread.c
    * cover s_fThreadInit declaration by HB_MT_VM macro

  * harbour/src/rtl/hbsocket.c
    ! added missing const to 1-st parameter of hb_inet_ntoa()
2010-11-21 16:35:24 +00:00
Viktor Szakats
e20e7bc4d9 2010-11-21 12:36 UTC+0100 Viktor Szakats (harbour.01 syenar.hu)
* contrib/hbodbc/odbc.c
    ! SQLEXECUTESCALAR() marked with HB_LEGACY_LEVEL3. Do no use this
      function. It's not a direct ODBC function wrapper and it
      internally calls SQLGetData with a fixed SQL_CHAR type, which
      is wrong.
    ! SQLGETDATA() fixed to default some parameters properly (so far
      it was checking for zero value instead of looking at Harbour
      type). Potentially incompatible change.
    ! SQLROWCOUNT() fixed to always return value by reference.
      (it's not wrapper's job to check success value and act anything
      depending on it).
    ; TOFIX: There are some more wrappers which do that: SQLDESCRIBECOL(), 
             SQLCOLATTRIBUTES(), SQLGETCONNECTATTR(), SQLGETSTMTATTR().
    % SQLROWCOUNT(), SQLGETINFO(), SQLNUMRESULTCOLS(), SQLCOLATTRIBUTE(): Minor optimization.
    ! SQLGETINFO(), SQLNUMRESULTCOLS(), SQLGETSTMTATTR(), SQLSETCONNECTATTR(),
      SQLGETCONNECTATTR(), SQLDESCRIBECOL(): Setting initial value to parameter retrieved by reference.
    ! SQLDESCRIBECOL(), SQLCOLATTRIBUTE(): fixed to not crash if wrong length is passed.

  * contrib/hbodbc/todbc.prg
    % TODBC:LoadData() got some minor optimizations.
    * TODBC:LoadData() changed to be able to retrieve fields with
      length of 256, instead of 64. This is still hack and should
      be fixed to retrieve full length.
    ! TOFIX: TODBC:LoadData() to pull data in its original type
             instead of pulling everything as string, then trying
             to convert it back to original type.

  * src/rtl/dircmd.prg
    ! Typo in comment.
2010-11-21 11:38:39 +00:00
Viktor Szakats
82c2c97a65 2010-11-20 17:27 UTC+0100 Viktor Szakats (harbour.01 syenar.hu)
* src/rtl/sha1.c
    * Settling back to original version of some lines.

  - contrib/hbgd/tests/tpoly.hbp
  - contrib/hbgd/tests/tpolyc.c
    - Using hbct functions with same name, so this is not needed.

  * contrib/hbgd/tests/tpoly.prg
    * Applied patch from Tamas.
    * Since final patch didn't apply I went on to rename static 
      vars to have s_ prefix.

  * contrib/hbgd/tests/gdtest.prg
  * contrib/hbgd/tests/barms.prg
  * contrib/hbgd/tests/bartest.prg
  * contrib/hbgd/tests/gdtestcl.prg
  * contrib/hbgd/tests/tostring.prg
  * contrib/hbgd/tests/animgif.prg
  * contrib/hbgd/tests/testdpi.prg
  * contrib/hbgd/tests/test.prg
  * contrib/hbgd/tests/counter.prg
  * contrib/hbgd/tests/antialia.prg
    * Using hb_ps(). Patch from Tamas.
2010-11-20 16:28:13 +00:00
Przemyslaw Czerpak
166131f652 2010-11-20 13:22 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/src/rtl/sha1.c
    * cleaned casting to not drop canst attribute
2010-11-20 12:22:46 +00:00
Viktor Szakats
d9fa4aa703 2010-11-20 12:14 UTC+0100 Viktor Szakats (harbour.01 syenar.hu)
* src/rtl/sha1hmac.h
  * src/rtl/sha1hmac.c
  * src/rtl/hbsha1.c
  * src/rtl/hbsha1hm.c
  * src/rtl/sha1.c
  * src/rtl/sha1.h
    * Reverted previous two fix attempts (for the most part) and replaced 
      it with patch posted by Przemek. This fixes low level SHA1 code, 
      and it's the efficient solution.
2010-11-20 11:15:44 +00:00
Viktor Szakats
d3e93632b2 2010-11-20 11:28 UTC+0100 Viktor Szakats (harbour.01 syenar.hu)
* src/rtl/sha1hmac.h
  * src/rtl/sha1hmac.c
  * src/rtl/hbsha1.c
  * src/rtl/hbsha1hm.c
    ! Futher fixes to 'const controversy' (which in my terms meant
      'wrong usage of const'). Didn't make extensive tests (pls do)
      and this change makes SHA1 functions very inefficient for large
      input buffers. Either we should remove this, or find a proper
      implementation which doesn't tamper with the input buffer
      internally.
      Pls note that after these changes SHA1 functions will RTE if 
      any input parameter is not string.

  + contrib/hbgd/tests/tpoly.hbp
  + contrib/hbgd/tests/tpoly.prg
  + contrib/hbgd/tests/tpolyc.c
    + Added GD sample submitted to the list by Tamas.
      (I converted tabs to spaces, rename a file, cleaned the hbp file,
      and changed to std SVN header format)
2010-11-20 10:30:25 +00:00
Viktor Szakats
3530a2a0e7 2010-11-19 14:49 UTC+0100 Viktor Szakats (harbour.01 syenar.hu)
* src/rtl/sha1.c
  * src/rtl/sha1.h
    ! Fixed some const controversy and writing to read-only memory area.
    ; Please review me.
2010-11-19 13:50:19 +00:00
Przemyslaw Czerpak
3134021021 2010-11-19 11:10 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/ChangeLog
    * marked may last TODO note as DONE - thanks to Viktor and Mindaugas

  * harbour/include/hbmacro.h
    ! added missing const in hb_macroGenPCodeN() declaration

  * harbour/include/hbapi.h
    * added const to HB_CODEBLOCK.pCode

  * harbour/include/hbcompdf.h
    ! added missing const to HB_MACRO.string

  * harbour/src/pp/ppcore.c
  * harbour/src/common/hbstr.c
  * harbour/src/compiler/hbmain.c
  * harbour/src/compiler/hbfix.c
  * harbour/src/compiler/complex.c
  * harbour/src/compiler/hbdead.c
  * harbour/src/compiler/genc.c
  * harbour/src/compiler/hbident.c
  * harbour/src/compiler/gencc.c
  * harbour/src/compiler/hblbl.c
  * harbour/src/compiler/harbour.yyc
  * harbour/src/compiler/harbour.y
  * harbour/src/compiler/harbour.yyh
  * harbour/src/vm/macro.c
  * harbour/src/vm/codebloc.c
  * harbour/src/vm/itemapi.c
  * harbour/src/vm/hvm.c
  * harbour/src/rtl/hbjson.c
  * harbour/src/rtl/sha1.c
  * harbour/src/rtl/sha2hmac.c
  * harbour/src/rtl/hbsocket.c
  * harbour/src/rtl/hbbffnc.c
  * harbour/src/rtl/itemseri.c
  * harbour/src/rtl/filebuf.c
  * harbour/src/rtl/hbbfish.c
  * harbour/src/rtl/gttrm/gttrm.c
  * harbour/src/rdd/workarea.c
  * harbour/src/macro/macrolex.c
  * harbour/src/rdd/usrrdd/usrrdd.c
    * cleaned const pointer casting

  * harbour/src/rdd/usrrdd/usrrdd.c
    ! fixed very serious bug located during const pointer cleanup
      which should cause GPF on user code creating indexes

  * harbour/src/rtl/sha2.c
    * minor formatting

   ; TOFIX: Seems that there is sth wrong with src/rtl/sha1.c.
            Function SHA1_Transform() wrongly declares 2-nd parameter
            buffer[64] as const when in fact it changes it what can be
            seen if
               BYTE64QUAD16    *block;
            is changed to:
               const BYTE64QUAD16 *block;
            This casting which removes const hides potentially very serious
            bug - modifying readonly memory area. SHA1_Transform() changes
            the buffer so the 2-nd parameter must be declared without const.
            After such modification C compiler should warn when const buffers
            are passed to this function and such places should be fixed.
            In fact it seems to be only line 136:
               SHA1_Transform(context->state, &data[i]);
            Viktor can you look at it and fix the code?
2010-11-19 10:11:29 +00:00
Mindaugas Kavaliauskas
7ff7dd1703 2010-11-18 14:42 UTC+0300 Mindaugas Kavaliauskas (dbtopas/at/dbtopas.lt)
+ harbour/include/hbjson.h
    + added missing include file

  * harbour/include/hbjson.c
    * deleted comment line. It is no valid for current code

  * harbour/src/codepage/Makefile
  + harbour/src/codepage/cplt775.c
    + added Lithuanian CP-775 (DOS) codepage support

  * harbour/contrib/hbzebra/code39.c
    * removed unused commented code
2010-11-18 12:42:54 +00:00
Przemyslaw Czerpak
4aed30bd2b 2010-11-18 12:21 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/contrib/hbct/bitnum.c
    ! fixed && operator wrongly used instead of & in function NumMirr()

  * harbour/contrib/rddads/ads1.c
    * removed variable declaration which was hiding other one
      with the same name

  * harbour/src/rtl/hbdyn.c
  * harbour/src/rtl/gtsln/mousesln.c
  * harbour/src/rtl/gtsln/kbsln.c
  * harbour/tests/bldtest/bldtest.c
    ! aded mising ( void ) to declarations of functions
       without parameters ()
2010-11-18 11:22:11 +00:00
Viktor Szakats
0d2defaf8b 2010-11-17 21:59 UTC+0100 Viktor Szakats (harbour.01 syenar.hu)
* src/common/hbver.c
    * Commented not-yet-implemented function hb_verHostCPU()

  * src/rtl/sha2.c
    ! Two local functions made static.
2010-11-17 20:59:53 +00:00
Przemyslaw Czerpak
bc30cabde4 2010-11-17 21:11 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/include/hbpp.h
    ! removed repeated declaration of hb_pp_eof()

  * harbour/include/hbapicdp.h
  * harbour/include/hbapilng.h
  * harbour/include/hbgtcore.h
    * added extern declaration to HB_*_REQUEST() macros to pacify
      undeclared global functions warnings

  * harbour/include/hbstack.h
    ! added missing hb_stackDec() declaration

  * harbour/include/hbdefs.h
    ! added missing const in some endian macros
    * removed some unnecessary casting which may hide bugs
      in the code

  * harbour/include/hbapi.h
    ! removed repeated declaration of hb_strVal()

  * harbour/include/hbznet.h
    ! removed repeated declaration of hb_znetError()

  * harbour/include/hbcompdf.h
    * minor comment

  * harbour/src/vm/hvm.c
    ! added missing static to hb_vmTSVarClean() declaration
    * added extern hb_vmForceLink() declaration to pacify
      undeclared global functions warnings

  * harbour/src/vm/thread.c
    * make hb_threadInit() and hb_threadExit() internal HVM
      functions available only in MT mode

  * harbour/src/rtl/dates.c
    ! added missing static to hb_dateUnformatRaw() declaration

  * harbour/src/macro/macrolex.c
    * added extern hb_macro_yylex() declaration to pacify
      undeclared global functions warnings

  * harbour/src/rdd/workarea.c
    * added extern _hb_rddWorkAreaForceLink() declaration to pacify
      undeclared global functions warnings

  * harbour/src/compiler/complex.c
    * added extern hb_comp_yylex() declaration to pacify
      undeclared global functions warnings

  * harbour/contrib/hbnetio/netiocli.c
    ! added missing static to s_fileFlush() declaration

  * harbour/contrib/hbct/tempfile.prg
    ! respect in TmepFile() function default file attributes set by
      SetFCreate()

  * harbour/contrib/hbct/ctstrfil.h
    ! added missing declarations for ct_getfcreate() and ct_setfcreate()

  * harbour/contrib/hbwin/legacy.prg
    * removed dummy RETURN statement

  * harbour/contrib/xhb/fparse.c
    ! added missing static to hb_ParseLine() declaration

  * harbour/contrib/xhb/freadlin.c
    ! added missing static to hb_fsReadLine() declaration

  * harbour/contrib/xhb/txtline.c
    ! added missing static to hb_readLine() and hb_tabexpand() declarations
    ! fixed uninitialized variable warning exploited by above modification
      (static function was automatically inlined increasing optimizations)

  * harbour/contrib/xhb/hbserv.c
    ! removed repeated declaration of hb_isService() and hb_serviceExit()

  * harbour/contrib/xhb/cstructc.c
    * disabled public C functions hb_retclenAdoptRaw() and hb_retclenStatic()

  * harbour/contrib/xhb/xhbat.c
    * declare C function hb_AtSkipStrings() as static
      Warning: this functions is part of public xHarbour C API.

   ; TODO: The following functions are declared as public but without
           any prototypes in header files so they should be made static
           or we should add them to some header files:
               hbver.c:143:  hb_verHostCPU()
               hbjson.c:640: hb_jsonEncode()
               hbjson.c:665: hb_jsonDecode()
               sha2.c:228:   sha256_transf()
               sha2.c:445:   sha512_transf()
           I would like to ask authors to look at them and chose
           best solution.
2010-11-17 20:12:12 +00:00
Przemyslaw Czerpak
4e5a819c80 2010-11-15 16:13 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/src/rtl/gtclip.c
    ! fixed bug in calculation of maximum unicode clipboard buffer size

  * harbour/src/compiler/complex.c
    ! recognize BREAK( [<exp>] ) as BREAK [<exp>] statement
      not function call - it enables some addiitonal compiler
      logic like warning for unreachable code, i.e.:
         proc main()
            break()
            ? "Hello World!!!"
         return

  * harbour/contrib/xhb/xhb.hbp
  * harbour/contrib/xhb/xhb.hbx
  + harbour/contrib/xhb/xhbmvinf.c
    + added __MVSYMBOLINFO() xHarbour compatible function

  * harbour/src/rdd/dbfntx/dbfntx1.c
  * harbour/src/rdd/dbfnsx/dbfnsx1.c
  * harbour/src/rdd/dbfcdx/dbfcdx1.c
    ! fixed INDEX ON ... command with USECURRENT clause to
      ignore active filter on internal GOTOP operation.
      Many thanks to Oleg for bug report and self contain
      code example illustrating the problem.
2010-11-15 15:14:01 +00:00
Przemyslaw Czerpak
49e0b8e4e0 2010-11-09 10:47 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/src/rdd/sdf1.c
    ! fixed bug in SDF import procedure - many thanks
      to Enrico Maria Giordano for reporting the problem
      and to Vicente Guerra for locating the reason
      BTW fix committed to xHarbour may work but it's not correct,
      I suggest to update it.

  * harbour/src/rtl/hbdyn.c
  * harbour/src/rtl/hbsocket.c
  * harbour/src/rdd/dbfnsx/dbfnsx1.c
  * harbour/src/rdd/dbfcdx/dbfcdx1.c
  * harbour/src/rdd/dbffpt/dbffpt1.c
  * harbour/contrib/hbct/bitnum.c
  * harbour/contrib/hbwin/olecore.c
    * pacified some of MSVC6 warnings reported by Andi

  * harbour/utils/Makefile
    * added internal/developers build switch
2010-11-09 09:47:51 +00:00
Viktor Szakats
ec301342b7 2010-11-09 10:01 UTC+0100 Viktor Szakats (harbour.01 syenar.hu)
* src/rtl/hbdyn.c
    ! Added casts to silence msvc6 warnings.
2010-11-09 09:01:42 +00:00
Viktor Szakats
7022118152 2010-11-07 18:15 UTC+0100 Viktor Szakats (harbour.01 syenar.hu)
- external/zlib
  - external/png
  - external/jpeg
  - external/hbpmcom
  - external/pcre
  - external/Makefile
  + src/3rd
  + src/3rd/zlib
  * src/3rd/zlib/Makefile
  + src/3rd/png
  * src/3rd/png/Makefile
  + src/3rd/hbpmcom
  * src/3rd/hbpmcom/Makefile
  + src/3rd/jpeg
  * src/3rd/jpeg/Makefile
  + src/3rd/pcre
  * src/3rd/pcre/Makefile
  + src/3rd/Makefile
    * Moved /external to /src/3rd
    ; This way all core components reside in core.
    ; NOTE: png, jpeg are not referenced by core components,
            so they may be moved to contrib area in the future.

  * config/detect.mk
  * Makefile
  * src/Makefile
  * src/rtl/hbcom.c
  * contrib/hbmzip/hbmzip.hbp
  * contrib/hbmzip/3rd/minizip/minizip.hbp
  * contrib/hbhpdf/hbhpdf.hbp
  * contrib/hbhpdf/3rd/libhpdf/libhpdf.hbp
  * contrib/hbhpdf/3rd/libhpdf/hpdf.h
  * contrib/hbwin/hbwin.hbp
    * Updated to reflect above change.
    ; NOTE: Now -j builds can be optimized to better overlap with 
            3rd component builds. Please do it in src/Makefile.

  * contrib/hbplist
    * Updated.
2010-11-07 17:17:05 +00:00
Viktor Szakats
575b574c53 2010-11-07 15:58 UTC+0100 Viktor Szakats (harbour.01 syenar.hu)
* src/rtl/version.c
    + HB_VERSION( HB_VERSION_PLATFORM ) changed to use hb_verPlatformMacro().
      This means it will now supported recently added platforms.
    ; NOTE: For consistency, __PLATFORM__WINDOWS should pbly be changed to __PLATFORM__WIN,
            and __PLATFORM__WINCE to __PLATFORM__WCE.

  * utils/hbmk2/hbmk2.prg
    + Added HB_HOST_PLAT macro, returning: hb_Version( HB_VERSION_PLATFORM )
    + Added HB_HOST_PLAT_UNIX macro.
    ! Fixed cygwin to be detected as cross target platform.
    ! Few cygwin related TOFIX-es cleared.

  * external/Makefile
  - external/sqlite3
  + contrib/3rd
  + contrib/3rd/sqlite3
  * contrib/3rd/sqlite3/sqlite3.hbc
  + contrib/3rd/sqlite3/sqlite3.hbp
  - contrib/3rd/sqlite3/Makefile
    * Moved sqlite3 foreign code to contrib/3rd dir from
      global 3rd party code dir.
    + Migrated remaining platform tweaks from Makefile to sqlite3.hbp
      Bumps are expected, pls test.

  * contrib/hbsqlit3/hbsqlit3.hbp
  * contrib/sddsqlt3/sddsqlt3.hbp
    * Changed sqlite3 position.
    + Added sqlite3 reference.
    ; Please note that after above changes sqlite3 will only be built
      if required.

  * src/common/hbver.c
    * Formatting.
2010-11-07 15:02:55 +00:00
Viktor Szakats
99a99c0a16 2010-11-06 23:12 UTC+0100 Viktor Szakats (harbour.01 syenar.hu)
* src/rtl/gete.c
    % Optimized out memory allocation on non-dos/os2 platforms.

  + contrib/hbexpat/3rd/expat/_hbconf.h
    + Added config file placeholder. Not yet used and empty.

  * contrib/hbqt/hbqt_hbmk2_plugin.hbs
    * Formatting.
    % More StrTran() minor opt.

  * utils/hbmk2/hbmk2.prg
  * config/linux/gcc.mk
  * config/linux/icc.mk
  * config/linux/clang.mk
    * -fpic -> -fPIC for linux dynamic libs.
    ; From Tamas.

  * INSTALL
    + Added expat related information.
2010-11-06 22:13:28 +00:00
Viktor Szakats
47952c23b3 2010-11-04 22:44 UTC+0100 Viktor Szakats (harbour.01 syenar.hu)
* src/rtl/hbjson.c
  * src/rtl/hblpp.c
    ! Silenced msvc64 warnings.

  * utils/hbrun/hbrun.prg
    * Moved creation of header hash to separate function.
    + Added HBRUN_NOHEAD envver to disable embedded headers.
      Any non-empty value will have this effect.

  * utils/hbrun/Makefile
    + Enabled embedded headers.

  * contrib/make.hbs
  * config/postinst.hbs
  * bin/hbxpatch.hbs
    ! Resolved TOFIX notes: now the headers can be used
      just like in any .prg, and no need to locally #define
      core constants.
      Also hbqt_hbmk2_plugin.hbs should work now in stdalone 
      mode, with all the OOP code.
2010-11-04 21:46:37 +00:00
Przemyslaw Czerpak
73ba6d20a6 2010-11-04 13:06 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/src/rtl/cdpapi.c
    + added internal macro for developers making tests with C compilers
      which can make some character translations in compiler strings.
      This macro (__HB_IGNORE_CP_ERRORS) disables 9994 internal error.
      ("Harbour CP (%s) initialization failure").
      It should not be used in production builds.
2010-11-04 12:06:29 +00:00
Viktor Szakats
3179ac92bf 2010-11-04 05:02 UTC+0100 Viktor Szakats (harbour.01 syenar.hu)
* include/hbwmain.c
  * src/vm/cmdarg.c
    + Cygwin HB_PROGNAME()/HB_ARGV(0) patch from Tamas.

  * src/rtl/hbcom.c
    * Cygwin related comment added. Patch by Tamas.

  * hbqt/qtgui/qth/*.qth
  * hbqt/qtwebkit/qth/*.qth
  * hbqt/qtcore/qth/*.qth
  * hbqt/qtnetwork/qth/*.qth
  * hbqt/qscintilla/qth/*.qth
  * hbqt/qtuitools/qth/*.qth
  * hbqt/qtdesigner/qth/*.qth
    % Harbour license text changed to a one-liner reference to
      COPYING file. Copyright message kept as is.
      Overal .qth file size dropped to half.
    ! Deleted multiple empty lines at EOL.
2010-11-04 04:19:36 +00:00
Viktor Szakats
a7710b224d 2010-11-03 29:59 UTC+0100 Viktor Szakats (harbour.01 syenar.hu)
* include/harbour.hbx
  * src/rtl/dateshb.c
    + Added HB_DATE( [<nYear>, <nMonth>, <nDay>] ) -> <dDate>
      If called without options, it returns current date, just like DATE().
    * Changed HB_DATETIME() to work like above except for timestamps.

  * contrib/hbqt/hbqt_all.hbp
    - Deleted wrong MS-DOS fix.

  * contrib/hbqt/utils/hbqtgen.prg
    % Optimized to not read each input file twice.

  * contrib/hbqt/hbqt_hbmk2_plugin.hbs
    + Added #include "hbclass.ch". After 2010-11-03 23:28 UTC+0100
      it works as expect. Thanks a lot Przemek!
      Header dir is setup correctly now by hbmk2, so hbmk2 plugins
      can safely use Harbour headers. (in hbmk2 context the headers
      should be present anyway, so this is square)
2010-11-03 23:00:35 +00:00
Przemyslaw Czerpak
329ca84269 2010-11-02 15:42 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/include/hbstack.h
    * minor improvement in #include "hbthread.h" condition

  * harbour/external/minizip/ioapi.h
  * harbour/external/png/Makefile
  * harbour/src/common/hbffind.c
  * harbour/src/rtl/hbsocket.c
    * updated to compile with DMC
2010-11-02 14:43:05 +00:00
Viktor Szakats
8cc76097c5 2010-11-02 14:35 UTC+0100 Viktor Szakats (harbour.01 syenar.hu)
* src/rtl/gete.c
    % Deleted very old code to satisfy Borland C++ getenv()
      requirement, and which turned out to be a mere Borland
      documentation error (confirmed by Borland).
      Thanks to Tamas Tevesz for getting to end of this and
      the patch.

  * utils/hbmk2/hbmk2.prg
    * Formatting.

  * ChangeLog
    ! Fixed bloody daylight saving timezone in recent commits.
2010-11-02 13:36:07 +00:00
Viktor Szakats
5e0daa68f6 2010-11-01 13:53 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
* src/vm/Makefile
  * src/vm/mainwin.c
  * src/vm/hvm.c
  * src/vm/cmdarg.c
  * src/vm/vmmt/Makefile
  * utils/hbmk2/hbmk2.prg
  * config/global.mk
  * config/cygwin/global.mk
    + Cygwin related patch from Tamas Tevesz.
      - Fixing cygwin dynamic lib name
      - Dynamic lib linking
      - defining __PLATFORM__CYGWIN in cross-platform builds

  * src/rtl/dateshb.c
  + tests/dttest.prg
    + HB_DATETIME() got new, optional nYear, nMonth, nDay, nHour, nMinute, nSecond, nFragment
      parameters. If passed, it will return date or timestamp based on passed parameters
      instead of current timestamp.
      Based on initiative and code by Carlos Bacco. Thank you!

  * contrib/hbsqlit3/hbsqlit3.c
    - Reverted UTF8 patch in 2010-11-01 00:05 UTC+0200.
    + Replaced above solution with transparent one, using
      Str API usage and extended it for all places where UTF8
      strings are expected or returned by sqlite3 API.
      Please test. This clears an old TOFIX.
    + Added TOFIX for raw pointer usage.

  * contrib/hbqt/qtgui/g/QApplication.cpp
  * contrib/hbqt/qtgui/qth/QApplication.qth
    ! Fixed to wrap one declaration in HB_EXTERN_BEGIN/END.
2010-11-01 12:58:15 +00:00
Petr Chornyj
0353de304c 2010-10-31 22:50 UTC+0200 Petr Chornyj (myorg63 at mail.ru)
* harbour/src/rtl/hbinet.c
    ! HB_INETSERVER fixed to use parameters properly
      Syntax of HB_INETSERVER is
      hb_inetSrver( nPort, [pSocket | NIL], [cBindAddr], [nListenLimit] )
2010-10-31 20:53:09 +00:00
Przemyslaw Czerpak
4acf8c4c16 2010-10-29 14:50 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/src/rtl/hbcom.c
    * added patches created by Tamas TEVESZ
      and default port name for AIX
2010-10-29 12:50:19 +00:00
Viktor Szakats
df3b848bf6 2010-10-29 10:22 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
* include/hb_io.h
  * include/hbthread.h
  * include/hbsetup.h
  * src/vm/thread.c
  * src/vm/dynlibhb.c
  * src/common/hbgete.c
  * src/common/hbprintf.c
  * src/rtl/gttrm/Makefile
  * src/rtl/hbsocket.c
  * src/rtl/filesys.c
  * src/rtl/hbcom.c
  * config/global.mk
  - config/win/cygwin.mk
  + config/cygwin
  + config/cygwin/libs.mk
  + config/cygwin/gcc.mk
  + config/cygwin/global.mk
    + Applied cygwin patch from Tamas Tevesz.
      The goal is to migrate win/cygwin to cygwin/gcc, IOW to make cygwin
      a distinct platform (which is primarily unixy with option to access 
      winapi) as it should be.
      Changes made by me compared to original patch:
        - Fixed to HB_HOST_PLAT stay 'win'. Cygwin is not a host platform.
        - Fixed to set HB_COMPILER to gcc and HB_PLATFORM to cygwin when cygwin
          is detected on win platform.
        - Consequently some changes in global.mk could be dropped.
        - Deleted hbcom patches not related to cygwin.
        - Removed hbmk2 patch until we solve the 'plat $ 'cygwin' problem.
2010-10-29 08:24:01 +00:00
Viktor Szakats
872abe845b 2010-10-27 05:21 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
* src/rtl/gete.c
    % Optimization to GETENV()/HB_GETENV(). Patch by Tamas Tevesz.
    + Added more details to comment on why it's needed to strip '='
      part from envvar name.

  * contrib/hbqt/tests/demoqt.prg
  * contrib/hbqt/tests/dialogqt.prg
  * contrib/hbqt/tests/testqaim.prg
    ! Fixed external files' references to use executable's
      directory as a base, instead of current dir.

  * contrib/hbhpdf/harupdf.c
    ! HPDF_Page_CreateStampAnnot(): Fixed wrongly passed 3rd parameter.

  * contrib/hbssl/evpmd.c
    ! EVP_SIGNFINAL(): Fixed wrong returned buffer size.

  * config/postinst.hbs
    * Implemented GetEnv() caching, based on patch sent by
      Tamas Tevesz and further optimized.
2010-10-27 03:23:49 +00:00
Przemyslaw Czerpak
5afc7f78ad 2010-10-25 17:20 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/src/rtl/hbjson.c
    * modified the if() condition to pacify some compiler warnings
2010-10-25 15:20:28 +00:00
Przemyslaw Czerpak
b762a398eb 2010-10-25 15:21 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/src/rtl/hbstrfmt.c
    + added support for 'x' and 'X' specifiers in hb_strFormat() function
2010-10-25 13:21:18 +00:00
Przemyslaw Czerpak
90f2f097ef 2010-10-23 08:20 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/src/rtl/hbcom.c
    ! fixed path to PMCOM header files
2010-10-23 06:20:58 +00:00
Mindaugas Kavaliauskas
8d19033374 2010-10-24 02:21 UTC+0300 Mindaugas Kavaliauskas (dbtopas/at/dbtopas.lt)
* harbour/rtl/hbjson.c
    + added support for date and timestamp type encoding
2010-10-22 23:23:19 +00:00
Mindaugas Kavaliauskas
c7c5d14460 2010-10-24 02:10 UTC+0300 Mindaugas Kavaliauskas (dbtopas/at/dbtopas.lt)
* harbour/rtl/hbjson.c
    + added human readable JSON encoding support
        char * hb_jsonEncode( PHB_ITEM pValue, HB_SIZE * pnLen, HB_BOOL fHuman );
        hb_jsonEncode( xValue [, lHuman = .F. ] ) --> cJSON
    ! removed UTF8 encoding from JSON functions. These function should 
      return/accept data in VM codepage, just like any other string 
      function. If JSON string is to be stored as some binary stream 
      (ex., file), HB_StrToUTF8() should be applied on the hb_jsonEncode() 
      result. This conversion removal fixes code when returned JSON string is used 
      not as a binary stream. Ex.:
        oIE:document:getElementById("data_div"):innerHtml := hb_jsonEncode(xValue)
2010-10-22 23:10:37 +00:00
Mindaugas Kavaliauskas
a6e74ed2b9 2010-10-23 21:15 UTC+0300 Mindaugas Kavaliauskas (dbtopas/at/dbtopas.lt)
- harbour/include/hbnsctp.ch
  - harbour/include/hbnsctp.h
  - harbour/src/rtl/hbnsctp.c
  - harbour/src/rtl/hbnsctph.c
  + harbour/include/hblpp.ch
  + harbour/include/hblpp.h
  + harbour/src/rtl/hblpp.c
  + harbour/src/rtl/hblpphb.c
  * harbour/src/rtl/Makefile
    * NSCTP -> LPP
2010-10-22 18:16:35 +00:00
Przemyslaw Czerpak
6dc33b15c3 2010-10-22 15:09 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/external/Makefile
  + harbour/external/hbpmcom
  + harbour/external/hbpmcom/Makefile
  + harbour/external/hbpmcom/wrap_ow.c
  + harbour/external/hbpmcom/com.c
  + harbour/external/hbpmcom/irq.h
  + harbour/external/hbpmcom/irq_ow.c
  + harbour/external/hbpmcom/irq_g.c
  + harbour/external/hbpmcom/com.h
  + harbour/external/hbpmcom/wrap_g.sx
  + harbour/external/hbpmcom/irqwrap.h
  + harbour/external/hbpmcom/doc
  + harbour/external/hbpmcom/doc/readme.txt
  + harbour/external/hbpmcom/doc/com.txt
    + added PMCOM library - RS-232 DOS communication library by Peter Marinov.
      The original PMCOM 1.0 library has not been updated for very long
      time and this code is quite strongly modified so I haven't tried to
      generate any .diff files. I do not think it will be possible to make
      autoamtic merege with newwer version (if any appears).
      This is also the reason I decided to use HBPMCOM name instead of
      PMCOM to avoid potential conflicts with some local versions of
      this library.
      TODO: add support for flow control - now flow control functions are
            dummy and do not enable any handshaking.

  * harbour/src/rtl/hbcom.c
  * harbour/config/dos/watcom.mk
  * harbour/config/dos/djgpp.mk
    + added support for serial port in DOS builds (hb_com*() PRG and C API)
      using HBPMCOM library.
2010-10-22 13:09:55 +00:00
Przemyslaw Czerpak
ef2d74889f 2010-10-22 11:24 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/src/rtl/gtwvt/gtwvt.c
    ! use ERROR_CLASS_ALREADY_EXISTS instead of hardcoded 1410 value
    * allow to use GTWVT in programs linked as non GUI ones
      (console programs)
2010-10-22 09:24:34 +00:00
Mindaugas Kavaliauskas
9e0d85ce43 2010-10-21 19:05 UTC+0300 Mindaugas Kavaliauskas (dbtopas/at/dbtopas.lt)
* harbour/src/rtl/hbnsctph.c
    * changes to make compilers happy
2010-10-21 16:05:31 +00:00