Commit Graph

19 Commits

Author SHA1 Message Date
Viktor Szakats
e00f50079e 2017-09-11 13:12 UTC Viktor Szakats (vszakats users.noreply.github.com)
* contrib/gtqtc/gtqtc1.cpp
  * contrib/gtwvg/gtwgud.c
  * contrib/gtwvw/wvwdraw.c
  * contrib/hbamf/amfdec.c
  * contrib/hbamf/amfstdio.c
  * contrib/hbbz2io/bz2io.c
  * contrib/hbgzio/gzio.c
  * contrib/hbhpdf/core.c
  * contrib/hbmemio/memio.c
  * contrib/hbmisc/irm.c
  * contrib/hbmisc/spd.c
  * contrib/hbnetio/netiosrv.c
  * contrib/hbssl/ssl_sock.c
  * contrib/hbwin/olecore.c
  * contrib/hbwin/wapi_commctrl.c
  * contrib/hbwin/wapi_winuser.c
  * contrib/hbwin/win_bmpd.c
  * contrib/hbwin/win_misc.c
  * contrib/hbzebra/qrcode.c
  * contrib/rddads/ads1.c
  * contrib/rddads/adsfunc.c
  * contrib/rddsql/sqlmix.c
  * contrib/sddfb/core.c
  * contrib/xhb/cstructc.c
  * contrib/xhb/hboutdbg.c
  * contrib/xhb/hbserv.c
  * include/hbdefs.h
  * include/hbexprb.c
  * include/hbrddcdx.h
  * include/hbthread.h
  * include/hbwmain.c
  * src/common/hbffind.c
  * src/compiler/complex.c
  * src/compiler/hbmain.c
  * src/compiler/hbopt.c
  * src/debug/dbgentry.c
  * src/rdd/dbf1.c
  * src/rdd/dbfcdx/dbfcdx1.c
  * src/rdd/dbffpt/dbffpt1.c
  * src/rdd/dbfnsx/dbfnsx1.c
  * src/rdd/dbfntx/dbfntx1.c
  * src/rdd/hbsix/sxcompr.c
  * src/rdd/wacore.c
  * src/rdd/workarea.c
  * src/rtl/cputime.c
  * src/rtl/dates.c
  * src/rtl/gtchrmap.c
  * src/rtl/gtcrs/gtcrs.c
  * src/rtl/gtpca/gtpca.c
  * src/rtl/gtsln/gtsln.c
  * src/rtl/gtsln/kbsln.c
  * src/rtl/gtsln/keytrans.c
  * src/rtl/gtstd/gtstd.c
  * src/rtl/gttrm/gttrm.c
  * src/rtl/gtwvt/gtwvt.c
  * src/rtl/gtxwc/gtxwc.c
  * src/rtl/hbcom.c
  * src/rtl/hbproces.c
  * src/rtl/itemseri.c
  * src/rtl/langapi.c
  * src/rtl/run.c
  * src/rtl/sha1.c
  * src/rtl/space.c
  * src/vm/classes.c
  * src/vm/hvm.c
  * src/vm/itemapi.c
  * src/vm/set.c
  * src/vm/thread.c
    * convert commented C code to #if 0 blocks, or clean them up in
      different ways
2017-09-11 13:27:12 +00:00
Viktor Szakats
5a2a287752 2017-09-08 16:00 UTC Viktor Szakats (vszakats users.noreply.github.com)
* *
    * partial sync with the 3.4 fork codebase. These are the things
      synces for the most part:
      - copyright headers
      - grammar/typos in comments and some readmes
      - comment/whitespace/decorations
      - variable scoping in C files
      - DO CASE/SWITCH and some other alternate syntax usage
      - minimal amount of human readable text in strings
      - minor code updates
      - HB_TRACE() void * casts for pointers and few other changes to
        avoid C compiler warnings
      - various other, minor code cleanups
      - only Harbour/C code/headers were touched in src, utils, contrib,
        include. No 3rd party code, no make files, and with just a few
        exceptions, no 'tests' code was touched.
      - certain components were not touched were 3.4 diverged too much
        already, like f.e. hbmk2, hbssl, hbcurl, hbexpat
      - the goal was that no actual program logic should be altered by
        these changes. Except some possible minor exceptions, any such
        change is probably a bug in this patch.
      It's a massive patch, if you find anything broken after it, please
      open an Issue with the details. Build test was done on macOS.
      The goal is make it easier to see what actual code/logic was changed
      in 3.4 compared to 3.2 and to make patches easier to apply in both
      ways.
2017-09-08 16:25:13 +00:00
Viktor Szakats
9f16c2bf8e 2017-08-13 18:27 UTC Viktor Szakats (vszakats users.noreply.github.com)
* *
    * update copyright headers with new FSF postal address
    * COPYING.txt -> LICENSE.txt (rest of repo to be synced)
2017-08-13 18:38:59 +00:00
Przemysław Czerpak
34418933fa 2017-03-15 14:39 UTC+0100 Przemyslaw Czerpak (druzus/at/poczta.onet.pl)
* include/hbdefs.h
    + added macros HB_CAST_*( double ) for conversions of double values
      to integer types - they are designed to hide some differences
      between C compilers and platforms in such conversions

  * src/common/expropt2.c
  * src/vm/extend.c
  * src/vm/itemapi.c
    * use new HB_CAST_*() macros
2017-03-15 14:39:47 +01:00
Przemysław Czerpak
a7e0e45857 2016-06-23 00:54 UTC+0200 Przemyslaw Czerpak (druzus/at/poczta.onet.pl)
* include/hbapiitm.h
  * src/vm/itemapi.c
    + added new C function:
         PHB_ITEM hb_itemPutNil( PHB_ITEM pItem );

  * src/rdd/dbf1.c
    ! fixed yet another RDDI_SETHEADER clearing in internal DBF RDD code
    * clear few passed variables before internal SELF_INFO() and
      SELF_RDDINFO() read calls - they were safe in current code but
      potentially may badly interact with 3-rd party DBF RDD wrappers.
2016-06-23 00:54:16 +02:00
Przemysław Czerpak
6df7fc6132 2016-06-20 21:59 UTC+0200 Przemyslaw Czerpak (druzus/at/poczta.onet.pl)
* doc/cmpopt.txt
    * enumeration
    ! typos

  * src/codepage/uckam.c
    + added info about Kamenicky codepage number: CP895

  * include/hbapi.h
  * src/common/hbstr.c
    + added new C function:
         char * hb_dblToStr( char * szBuf, HB_SIZE nSize,
                             double dNumber, int iMaxDec );
      it converts numeric value to string trying to keep all significant
      digits in double numbers

  * include/harbour.hbx
  * src/rtl/hbntos.c
    + added new PRG function:
         hb_ntoc( <nValue> ) -> cValue
      it converts numeric value to string trying to keep all significant
      digits in double numbers

  * src/rtl/hbsocket.c
    + added support for error codes returned by
      getaddrinfo() / getnameinfo() and gethostbyname() / gethostbyaddr()

  * src/rtl/hbinet.c
    + set HB_SOCKET_ERR_WRONGADDR error code if hb_socketResolveAddr()
      returns NULL without setting error code

  * src/vm/arrays.c
  * src/vm/hashfunc.c
    ! fix hb_HScan(), AScan(), hb_AScan() and hb_RAScan() for very large
      integers with more then 53 significant bits. Such bits were lost
      after conversion to double value used in scan process

  * src/vm/itemapi.c
    * formatting

  * src/rtl/gtwvt/gtwvt.c
    ! do not convert characters received with ALTGR or ALT+CTRL flags to
      extended keycodes - some national keyboards may use such combination
      for national characters and even pure ASCII ones
2016-06-20 21:59:34 +02:00
Przemysław Czerpak
c209c27120 2016-02-09 18:11 UTC+0100 Przemyslaw Czerpak (druzus/at/poczta.onet.pl)
* contrib/hbnetio/hbnetio.hbx
  * contrib/hbnetio/netiocli.c
  * contrib/hbnetio/readme.txt
    + added new client side function:
         netio_SetPath( <pConnection> [, <cPath>] ) -> [<cPrevPath>]
      It set/get path prefix for automatic file redirection to HBNETIO.
      If automatic redirection is activated then <cPath> is removed
      from file name passed to HBNETIO server, i.e.:

         netio_SetPath( netio_GetConnection(), "//myserver/myshare" )
         [...]
         /* open "/data/table" on HBNETIO server */
         use "//myserver/myshare/data/table"
    * allow to pass filename to netio_Decode() with "net:" prefix
    * allow to pass to use "net:" prefix in function names passed
      to netio_{Proc|Func}*() when <pConnection> parameter is not used
    ! fixed possible GPF trap when connection cannot be set

  * src/vm/memvars.c
    % do not create reference chain when memvars are passed by reference
      and called function uses PARAMETERS statement
    ! do not return references from __mvDbgInfo() but destination values

  * doc/xhb-diff.txt
    ! typo

  * src/vm/itemapi.c
    ! typo in debug trace message
2016-02-09 18:11:42 +01:00
Przemysław Czerpak
c6316a4578 2016-01-26 15:44 UTC+0100 Przemyslaw Czerpak (druzus/at/poczta.onet.pl)
* include/hbapierr.h
  * include/hbdefs.h
  * src/debug/dbgentry.c
  * src/rtl/filesys.c
  * src/rtl/gtcgi/gtcgi.c
  * src/rtl/gtcrs/gtcrs.c
  * src/rtl/gtos2/gtos2.c
  * src/rtl/gtpca/gtpca.c
  * src/rtl/gtsln/gtsln.c
  * src/rtl/gtstd/gtstd.c
  * src/rtl/gttrm/gttrm.c
  * src/rtl/gtwin/gtwin.c
  * src/rtl/gtwvt/gtwvt.c
  * src/rtl/gtxwc/gtxwc.c
  * src/rtl/hbhex.c
  * src/rtl/hbproces.c
  * src/rtl/hbsocket.c
  * src/vm/classes.c
  * src/vm/extrap.c
  * src/vm/itemapi.c
  * src/vm/runner.c
  * src/vm/task.c
  * contrib/gtalleg/gtallegd.c
  * contrib/gtqtc/gtqtc1.cpp
  * contrib/gtwvg/gtwgud.c
  * contrib/gtwvg/gtwvgd.c
  * contrib/gtwvg/wvgcore.c
  * contrib/gtwvg/wvgcuig.c
  * contrib/gtwvg/wvgutils.c
  * contrib/gtwvg/wvgwin.c
  * contrib/gtwvg/wvgwing.c
  * contrib/hbfbird/firebird.c
  * contrib/hbwin/axcore.c
  * contrib/hbwin/wapi_commctrl.c
  * contrib/hbwin/wapi_shellapi.c
  * contrib/hbwin/wapi_winbase.c
  * contrib/hbwin/wapi_wingdi.c
  * contrib/hbwin/win_misc.c
  * contrib/hbxdiff/core.c
  * contrib/rddads/ads1.c
  * contrib/rddads/adsx.c
  * contrib/xhb/cstructc.c
  * contrib/xhb/freadlin.c
  * extras/gtwvw/gtwvwd.c
  * extras/gtwvw/wvwfuncs.c
    * use HB_PTRUINT instead of HB_PTRDIFF in castings between pointers
      and numbers - it makes some C compilers happy and in few cases it
      also fixed bugs
2016-01-26 15:45:00 +01:00
Przemysław Czerpak
ae90545eb1 2016-01-21 20:42 UTC+0100 Przemyslaw Czerpak (druzus/at/poczta.onet.pl)
* contrib/gtalleg/gtallegd.c
  * contrib/hbamf/amfdec.c
  * contrib/hbamf/amfenc.c
  * contrib/hbbz2/core.c
  * contrib/hbbz2io/bz2io.c
  * contrib/hbct/atrepl.c
  * contrib/hbct/charrepl.c
  * contrib/hbct/envparam.c
  * contrib/hbct/pack.c
  * contrib/hbct/token2.c
  * contrib/hbfimage/fi_wrp.c
  * contrib/hbgd/gdwrp.c
  * contrib/hbgs/core.c
  * contrib/hbgzio/gzio.c
  * contrib/hbhpdf/core.c
  * contrib/hbhpdf/image.c
  * contrib/hbmlzo/core.c
  * contrib/hbmxml/core.c
  * contrib/hbodbc/odbc.c
  * contrib/hbsqlit3/core.c
  * contrib/hbssl/bio.c
  * contrib/hbssl/ssl.c
  * contrib/rddads/ads1.c
  * contrib/rddads/adsfunc.c
  * contrib/rddads/adsmgmnt.c
  * contrib/rddads/adsx.c
  * contrib/rddads/rddads.h
  * contrib/sddodbc/core.c
  * contrib/xhb/cstructc.c
  * include/hbapi.h
  * include/hbdefs.h
  * src/common/expropt1.c
  * src/common/expropt2.c
  * src/common/hbmem.c
  * src/compiler/complex.c
  * src/compiler/harbour.y
  * src/compiler/harbour.yyc
  * src/compiler/harbour.yyh
  * src/compiler/hbident.c
  * src/macro/macrolex.c
  * src/nortl/nortl.c
  * src/pp/ppcore.c
  * src/rdd/hbsix/sxcompr.c
  * src/rdd/hbsix/sxfname.c
  * src/rdd/usrrdd/usrrdd.c
  * src/rtl/cdpapi.c
  * src/rtl/filebuf.c
  * src/rtl/filesys.c
  * src/rtl/fslink.c
  * src/rtl/gtcrs/gtcrs.c
  * src/rtl/gtsln/gtsln.c
  * src/rtl/gtsln/mousesln.c
  * src/rtl/gtxwc/gtxwc.c
  * src/rtl/hbbfsock.c
  * src/rtl/hbgtcore.c
  * src/rtl/hbsocket.c
  * src/rtl/hbzlib.c
  * src/rtl/hbznet.c
  * src/rtl/hbzsock.c
  * src/rtl/iousr.c
  * src/rtl/langapi.c
  * src/vm/cmdarg.c
  * src/vm/codebloc.c
  * src/vm/hvm.c
  * src/vm/itemapi.c
  * src/vm/macro.c
  * src/vm/set.c
  * src/vm/strapi.c
    * cleaned const qualifier dropping
    ! fixed few bugs I found analyzing related code
    ; I left untouched two places in HBSSL which IMO should be fixed yet
2016-01-21 20:42:30 +01:00
Viktor Szakats
58faf91453 2016-01-14 19:17 UTC+0100 Viktor Szakats (vszakats users.noreply.github.com)
* *
    % remove brandings and homepage [1] from copyright header. Pass 1 - using script.
      [1] nobody has access to it anymore AFAIK - and it's also just
          a redirect since long
    ! update url in copyright header
    ; this should make the diff between 3.4 and 3.2 easier to manage
2016-01-14 19:18:17 +01:00
Przemysław Czerpak
7abf3b836d 2016-01-09 03:16 UTC+0100 Przemyslaw Czerpak (druzus/at/poczta.onet.pl)
* src/vm/hvm.c
    + allow to compare symbol items with == operator, i.e.:
         ? @QOut() == &( "@QOut()" )

  * include/hbapiitm.h
  * src/vm/itemapi.c
    + added new C function:
         hb_itemCompare( PHB_ITEM pItem1, PHB_ITEM pItem2,
                         HB_BOOL bForceExact, int * piResult );
      For compatible types it compares pItem1 with pItem2 setting piResult
      to -1, 0 or 1 if pItem1 is <, == or > then pItem2 and returns true
      otherwise it returns false and does not touch piResult.
    + allow to compare symbol items in hb_itemEqual()
2016-01-09 03:16:20 +01:00
Przemysław Czerpak
001939d5db 2014-09-14 20:48 UTC+0200 Przemyslaw Czerpak (druzus/at/poczta.onet.pl)
* contrib/hbmysql/tmysql.prg
    * added support for nFlags in TMySQLServer constructor as
      suggested by Fernando Athayde

  * src/rtl/gtcgi/gtcgi.c
    % replaced hb_cdpnDup() with hb_cdpnDup3() to eliminate unnecessary
      memory block duplicating when translation is not activated.

  * src/vm/itemapi.c
    * removed old ugly hack used to mark infinite or undefined double
      value using double item length field. The code which created such
      item have been eliminated many years ago.
    * use HB_DEFAULT_WIDTH instead of hardcoded 99 to force numeric value
      length recalculation.
2014-09-14 20:48:14 +02:00
Przemysław Czerpak
2e65a28363 2014-08-27 18:19 UTC+0200 Przemyslaw Czerpak (druzus/at/poczta.onet.pl)
* include/hbserial.ch
  * src/rtl/itemseri.c
    + added HB_SERIALIZE_IGNOREREF flag.
      This flag fully disables logic used to detect multireferences to the
      same complex (sub)items like arrays or hashes. It increses the speed
      of serialization but serialized data does not contain any information
      about refences, i.e. aVal[ 1 ] and aVal[ 2 ] in code below:
         aSub := { 1, 2, 3 }
         aVal := { aSub, aSub }
      are serialized as separated arrays. Additionally items with cyclic
      references like:
         aSub[ 2 ] := aSub
      cannot be serialized at all with HB_SERIALIZE_IGNOREREF flag because
      it will create infinite serialization loop and crash with out of
      memory message.

  * src/rtl/itemseri.c
    % rewritten algorithm used to detect cyclic and multi references in
      serialized items. The original algorithm has very high overhead when
      huge arrays were serialized, i.e. serialization of array with 1'000'000
      of subarrays needed about 30 minutes on my i5@3.30GHz. Now it needs
      less then a second and this time is only a little bit bigger then
      used by serialization with HB_SERIALIZE_IGNOREREF flag.
      This modification improve performance also in other code using Harbour
      serialization mechanism like I18N files, HBNETIO, GTNET, ... when large
      arrays or hashes are saved or transmitted.

  * include/hbapi.h
  * include/hbapicls.h
  * src/vm/arrays.c
  * src/vm/classes.c
  * src/vm/hashes.c
  * src/vm/itemapi.c
    * replaced algorithm used to detect cyclic and multi references in
      array and hash clone operations with new one similar to current
      item serial code. The speed improvement for very large arrays is
      the same as in case of serialization code.

  * src/rtl/gtsln/mousesln.c
    ! typo in while loop - synced with Viktor's branch
2014-08-27 18:19:36 +02:00
Przemysław Czerpak
e222fc9080 2014-08-22 14:41 UTC+0200 Przemyslaw Czerpak (druzus/at/poczta.onet.pl)
* src/vm/hvm.c
    * map 0 and 1 byte length strings to the same addresses

  * src/vm/itemapi.c
    ! check also size if string addresses are the same
2014-08-22 14:41:21 +02:00
Przemysław Czerpak
24ae545b3e 2014-08-21 01:11 UTC+0200 Przemyslaw Czerpak (druzus/at/poczta.onet.pl)
* contrib/hbtip/mail.prg
    ! fixed missing 1-st adress in CC and BCC parameters - many
       for information about the bug and patch

  * contrib/hbtip/sendmail.prg
    ! typo in comment - thanks to Heinz V Bergen too

  * src/rtl/gtwvt/gtwvt.c
    * some minor modification to sync code with Vitkor's branch

  * src/vm/hvm.c
  * src/vm/itemapi.c
    * small optimization in string comparison
2014-08-21 01:11:26 +02:00
Przemysław Czerpak
e842b7f788 2014-01-09 02:01 UTC+0100 Przemyslaw Czerpak (druzus/at/poczta.onet.pl)
* src/vm/itemapi.c
    ! clear destination item in hb_itemParamStore*() functions if passed
      source item is NULL
2014-01-09 02:01:38 +01:00
Viktor Szakáts
6752936b57 use web url instead of obfuscated email 2013-10-09 20:08:24 +02:00
vszakats
9687850865 2013-03-16 02:10 UTC+0100 Viktor Szakats (harbour syenar.net)
* (all files)
    * stripped svn header
    * minor cleanups
    ; use following command to find out the history of files:
       git log
       git log --follow
       git blame
       git annotate
2013-03-16 02:11:42 +01:00
vszakats
a4a357a18b 2013-03-15 11:12 UTC+0100 Viktor Szakats (harbour syenar.net)
* /harbour/* -> /*
    * moved whole Harbour source tree one level up to
      avoid single 'harbour' top dir
2013-03-15 11:13:30 +01:00