Commit Graph

19299 Commits

Author SHA1 Message Date
Viktor Szakats
8d8235ecad 2015-07-03 11:22 UTC+0200 Viktor Szakats (vszakats users.noreply.github.com)
* include/harbour.hbx
  * src/rtl/libnamec.c
    + rename HB_LIBPOSTFIX() to HB_LIBSUFFIX()
      old name is still available, but deprecated.
2015-07-03 11:25:13 +02:00
Przemysław Czerpak
732f81f6dc 2015-06-26 14:50 UTC+0200 Przemyslaw Czerpak (druzus/at/poczta.onet.pl)
* src/rtl/cdpapihb.c
    ! typo in parameter number
2015-06-26 14:50:56 +02:00
Przemysław Czerpak
aa76a355db 2015-06-26 14:18 UTC+0200 Przemyslaw Czerpak (druzus/at/poczta.onet.pl)
* include/harbour.hbx
  * src/rtl/cdpapihb.c
    + added new PRG function:
          hb_cdpIsCharIdx( [ <cCdpID> ] [, <lNewMode>] ) -> <lPrevMode>
      It returns .T. when given codepage uses custom character indexes
      instead of byte indexes.
      If <cCdpID> is not specified then current HVM codepage is used.
      Optional logical parameter <lNewMode> allows to enable/disable
      custom character indexes in codepages which have such functionality,
      i.e. UTF8, BIG5, CP950.

  * src/rtl/rtlshort.c
    * removed __QUITCANCEL() - this function does not exist in Cl*pper.
2015-06-26 14:18:23 +02:00
Przemysław Czerpak
6349d223b4 2015-06-25 16:25 UTC+0200 Przemyslaw Czerpak (druzus/at/poczta.onet.pl)
* src/pp/ppcore.c
    ! fixed compilation of initial files passed without path
      (broken by mistake in recent modifications)
2015-06-25 16:25:14 +02:00
Przemysław Czerpak
db6765d665 2015-06-25 13:49 UTC+0200 Przemyslaw Czerpak (druzus/at/poczta.onet.pl)
* src/pp/ppcore.c
    ! restored previous algorithm for scanning #included files when included
      file is given without path
      Now the following(Cl*pper compatible)  file search algorithm is used
      for files which are not marked as system headers (system headers are
      enclosed in <>):
         1) if file name contains absolute path then open the file from
            the given location. If path starts with drive letter then
            is always used as absolute path regardless of used path separator
            after drive delimiter: ":"
         2) if file name contains relative path then open then:
            a) try to access included file starting from current directory
            b) try to access included file starting from the path taken from
               the first compiled file in list of included files
            c) check INCLUDE paths (paths specified by -I compile switch and
               taken from INCLUDE envvar)
         3) if file name does not contain any path then open then:
            a) try to access included file starting from the path taken from
               the first compiled file in list of included files (if it does
               not have any path then starting from current directory)
            b) check INCLUDE paths (paths specified by -I compile switch and
               taken from INCLUDE envvar)
      For files marked as system headers in #include directive (enclosed in <>)
      the file name is always used as relative path and Harbour scans only
      INCLUDE paths (-I and INCLUDE envvar). It's Harbour extension, Cl*pper
      does not support system headers.
    ; Maybe we should think about adding yet another step between (b) and (c)
      in case 2 above and between (a) and (b) in case 3:
         - try to access included file starting from the path taken from
           the file with #include directive
      It should help to create nested projects using relative paths. Maybe
      it should even have the highest priority. It could be important only
      in case of file name conflicts.
2015-06-25 13:49:33 +02:00
Przemysław Czerpak
cc1c87e756 2015-06-24 21:09 UTC+0200 Przemyslaw Czerpak (druzus/at/poczta.onet.pl)
* contrib/hbmzip/mzip.c
  * src/rtl/filesys.c
    ! initialize tm_isdst member of tm structure with -1 to force correct
      local time to UTC conversion in mktime()
2015-06-24 21:09:58 +02:00
Przemysław Czerpak
f566a9282c 2015-06-24 20:32 UTC+0200 Przemyslaw Czerpak (druzus/at/poczta.onet.pl)
* src/pp/ppcore.c
    ! fixed directory include precedence in #included files which
      are not marked as system headers (system headers are enclosed in <>)
      Now the following order is used:
         1) try to access included file as is starting from current directory
         2) if included file has relative path then check if the first
            compiled file has path and if yes try to access file using this
            path as start point
         3) check INCLUDE paths (envvar and -I parameter)
      Previous version used: 2 for nested files or 1 for first file or when
      first file was given without path then 3.
      Now we are Cl*pper compatible but such version strongly depends on
      current directory which has the highest priority. Personally I do no
      like such behavior because it may give different results when current
      directory is changed.
2015-06-24 20:32:30 +02:00
Przemysław Czerpak
0adb08bdbd 2015-06-24 13:49 UTC+0200 Przemyslaw Czerpak (druzus/at/poczta.onet.pl)
* utils/hbmk2/hbmk2.prg
    ! fix header search algorithm to handle headers specified
      with _absolute paths_.
      This fixed the problem reported by Sergy, here:
         https://groups.google.com/d/msg/harbour-users/EYT9VQ9M7jk/SPtHIxpUB1oJ
      Using absolute path to refer to a headers inside source
      should be avoided and not necessary given properly setup
      header paths.
    ; merged Viktor's patch: 2015-06-23 17:50 UTC+0200 Viktor Szakats
2015-06-24 13:49:06 +02:00
Przemysław Czerpak
c67ac9166a 2015-06-24 00:33 UTC+0200 Przemyslaw Czerpak (druzus/at/poczta.onet.pl)
* src/vm/classes.c
    ! fixed __objGetIVars() to correctly serialize objects without any own
      and inherited instance variables

  * contrib/hbhpdf/3rd/libhpdf/hpdfimac.c
    ! include string.h
  * contrib/hbhpdf/3rd/libhpdf/libhpdf.dif
    * rediffed
2015-06-24 00:33:01 +02:00
Viktor Szakats
e364f8634b 2015-06-17 12:39 UTC+0200 Przemyslaw Czerpak (druzus/at/poczta.onet.pl)
* src/rtl/filesys.c
    ! fixed FXO_TRUNCATE flag used without FXO_SHARELOCK in POSIX systems

  * src/rtl/net.c
    ! typo in variable name

  * src/vm/task.c
    ! variable scope

  * src/compiler/compi18n.c
    * minor variable type update

  * ChangeLog.txt
    ! formatting
2015-06-17 13:30:50 +02:00
Przemysław Czerpak
a7ad431c1d 2015-06-02 13:31 UTC+0200 Przemyslaw Czerpak (druzus/at/poczta.onet.pl)
* contrib/hbtip/client.prg
    * eliminated hb_UserName() from initial random seed

  * contrib/hbwin/win_prn2.c
    ! fixed memory leak and potentially wrong handle usage
      fix borrowed from Viktor's branch:
      2015-06-02 12:39-57 UTC+0200 Viktor Szakats

  * src/rdd/dbf1.c
    * variable localization
2015-06-02 13:31:31 +02:00
Przemysław Czerpak
c402ce1350 2015-05-27 13:56 UTC+0200 Przemyslaw Czerpak (druzus/at/poczta.onet.pl)
* src/rtl/Makefile
  * src/rtl/net.c
  + src/rtl/netusr.c
    * moved hb_UserName() to separate file. It uses internally getpwuid()
      in *nix builds and access to this function adds additional library
      dependency which may block static builds in some cases.
      TODO: eliminate hb_UserName() from things like initial random seed
            to not create unnecessary dependency.

  * contrib/gtqtc/gtqtc1.cpp
    + enable software input panel (virtual keyboard) in iOS builds
2015-05-27 13:56:31 +02:00
Przemysław Czerpak
5576a9721b 2015-05-19 15:17 UTC+0200 Przemyslaw Czerpak (druzus/at/poczta.onet.pl)
* src/common/hbprintf.c
    * removed modfl() protection with old HB_OS_IPHONE macro.
      If someone will need it for some old iOS versions then please read
      it protected by HB_OS_IOS and __IPHONE_OS_VERSION_MIN_REQUIRED
      macros or inform me about the exact iOS version which do not support
      modfl() and I'll add it.

  * include/hbatomic.h
    * disable GCC atomic macros for GCC <= 4.5 in OS2 builds.
      They can be manually enabled by users using:
         set HB_USER_CFLAGS=-DHB_USE_GCCATOMIC
2015-05-19 15:17:41 +02:00
Przemysław Czerpak
e8601dacaa 2015-05-18 23:01 UTC+0200 Przemyslaw Czerpak (druzus/at/poczta.onet.pl)
* include/hbsetup.h
    * set HB_OS_IOS when __IPHONE_OS_VERSION_MIN_REQUIRED is defined

  * include/hbsetup.h
  * src/common/hbver.c
    * detect 64bit ARM CPUs

  * contrib/hbct/envparam.c
  * contrib/hbnf/getenvrn.c
    ! disabled ENVPARAM() and FT_GETE() in iOS builds
    + added support for FT_GETE() in OS2 builds
2015-05-18 23:01:14 +02:00
Przemysław Czerpak
c3f0ae6015 2015-05-13 16:59 UTC+0200 Przemyslaw Czerpak (druzus/at/poczta.onet.pl)
* contrib/hbct/ctwin.c
    ! added protection against GPF in hb_ctwGetPosWindow() called before
      any window is open. It's correct version of this fix.

  * contrib/hbmemio/memio.c
  * contrib/xhb/xhbfunc.c
    ! fixed size of filename buffer - it should be exactly HB_PATH_MAX
2015-05-13 16:59:44 +02:00
Przemysław Czerpak
141a288ab7 2015-05-07 13:27 UTC+0200 Przemyslaw Czerpak (druzus/at/poczta.onet.pl)
* src/rtl/itemseri.c
    ! fixed stupid typo which could cause buffer overrun during
      serialization of hash items with default value.
      Tanks to Abe for reporting the problem.
2015-05-07 13:27:18 +02:00
Przemysław Czerpak
bbf3bcf147 2015-05-05 20:06 UTC+0200 Przemyslaw Czerpak (druzus/at/poczta.onet.pl)
* src/rtl/disksphb.c
    * added default path setting in hb_fsDiskSpace()

  * src/rtl/vfile.c
    * removed recent modification - it's not longer necessary
2015-05-05 20:06:34 +02:00
Przemysław Czerpak
93623a1528 2015-05-05 19:50 UTC+0200 Przemyslaw Czerpak (druzus/at/poczta.onet.pl)
* src/rtl/vfile.c
    ! do not pass NULL pointer to hb_fileDirSpace()
2015-05-05 19:50:22 +02:00
Przemysław Czerpak
f23cbd0427 2015-05-05 19:35 UTC+0200 Przemyslaw Czerpak (druzus/at/poczta.onet.pl)
* src/rtl/filebuf.c
    ! fixed GPF when NULL filename is passed to Accept() method

  * include/hbclass.ch
    * indenting
2015-05-05 19:35:29 +02:00
Przemysław Czerpak
bec3dd7749 2015-05-04 12:41 UTC+0200 Przemyslaw Czerpak (druzus/at/poczta.onet.pl)
* contrib/hbmemio/memio.c
    ! fixed GPF in hb_VFDirectory( "mem:..." ) - many thanks to Rolf for
      locating the problem and fix.
2015-05-04 12:41:25 +02:00
Przemysław Czerpak
b0b23e0e94 2015-04-27 17:21 UTC+0200 Przemyslaw Czerpak (druzus/at/poczta.onet.pl)
* src/rdd/workarea.c
    ! fixed typo in RDDI_AUTOORDER type - it should be numeric
      just like in  _SET_AUTORDER. Many thanks to Rolf for locating
      the problem
2015-04-27 17:21:07 +02:00
Przemysław Czerpak
5d691b9923 2015-04-09 00:20 UTC+0200 Przemyslaw Czerpak (druzus/at/poczta.onet.pl)
* contrib/hbnetio/netiosrv.c
  * contrib/hbtcpio/tcpio.c
    * call hb_socketShutdown() before hb_socketClose() to force output
      buffer flush in systems like MS-Windows.
2015-04-09 00:20:40 +02:00
Przemysław Czerpak
0b4ed76c12 2015-04-01 14:59 UTC+0200 Przemyslaw Czerpak (druzus/at/poczta.onet.pl)
* src/debug/dbgentry.c
    ! fixed typo in my previous commit for AltD() function detection
      Thanks to Franček Prijatelj for reporting the problem and Abe
      for self contain example

  * src/rdd/dbfcdx/dbfcdx1.c
    * reverted byte order in Harbour CDX signature - by mistake I used
      little endian. When existsing index is open then reverted signatures
      are accepted for backward compatiblity though they will be removed
      in the future.

  * src/rdd/workarea.c
    * move results of EVALBLOCK() RDD method from Harbour stack return item
      to workarea valResult item instead of copping it.
    ; Warning: This modification may exploit problems in code which
               wrongly looks for result of EVALBLOCK() RDD method in
               HVM stack return item instead of workarea valResult item.
2015-04-01 14:59:26 +02:00
Przemysław Czerpak
f817310638 2015-03-27 16:21 UTC+0100 Przemyslaw Czerpak (druzus/at/poczta.onet.pl)
* src/debug/dbgentry.c
    % small optimizations

  * src/rtl/gtwvt/gtwvt.c
    ! fixed extended keycodes generated for ASCII characters

  * src/rtl/gtwin/gtwin.c
    % removed meaningless code

  * src/rtl/inkeyapi.c
    * added translation for extended keycodes to ASCII characters
      in hb_keyChar()
2015-03-27 16:21:38 +01:00
Przemysław Czerpak
4ae0fd9dc6 2015-03-24 14:53 UTC+0100 Przemyslaw Czerpak (druzus/at/poczta.onet.pl)
* src/rtl/hbsocket.c
    * use inet_pton() or inet_aton() if available instead of inet_addr()
2015-03-24 14:53:15 +01:00
Przemysław Czerpak
f7184a48fc 2015-03-24 13:42 UTC+0100 Przemyslaw Czerpak (druzus/at/poczta.onet.pl)
* include/harbour.hbx
  * src/vm/cmdarg.c
    + added new PRG function
         hb_ACmdLine() -> <array>
      borrowed from Viktor's branch (2015-03-12 03:02 UTC+0100 Viktor Szakats)
      It returns array with all command line parameters. Unlike
          hb_AParams( __dbgProcLevel() - 1 )
      hb_ACmdLine() returns all parameters also hidden ones just like
      hb_CmdLine() function and hb_argv()/hb_argc()
      Please also remember that hb_AParams() returns current value of
      parameters which could be changed bu user code so they can be different
      then original parameters passed to given function.

  * src/rtl/gtchrmap.c
    * casting

  * include/std.ch
    * synced casing with Viktor's branch
2015-03-24 13:42:51 +01:00
Przemysław Czerpak
e54036073c 2015-03-23 21:02 UTC+0100 Przemyslaw Czerpak (druzus/at/poczta.onet.pl)
* include/hbsix.ch
  * include/std.ch
    * formatting
2015-03-23 21:02:02 +01:00
Przemysław Czerpak
c177fcb7d4 2015-03-23 16:21 UTC+0100 Przemyslaw Czerpak (druzus/at/poczta.onet.pl)
* include/std.ch
    + added VIA and CODEPAGE parameters to SORT TO and TOTAL TO commands
    * formatting

  * include/hbsix.ch
    * synced SIX3 compatible SORT TO command with core SORT TO parameters
2015-03-23 16:21:50 +01:00
Przemysław Czerpak
c99d950516 2015-03-23 15:03 UTC+0100 Przemyslaw Czerpak (druzus/at/poczta.onet.pl)
* include/hbapirdd.h
  * include/hbusrrdd.ch
    + added DBTF_RECALL flag which disables transferring record DELETED flag

  * src/rdd/dbcmd.c
  * src/rdd/workarea.c
    ! disable transferring DELETED flag to destination area in SORT TO /
      __dbArrange() operations

  * src/rdd/delim1.c
  * src/rdd/sdf1.c
    + added dummy RECALL() methods - now RECALL() can be executed by workarea
      TRANSREC() method when DBTF_RECALL flag is set
2015-03-23 15:03:27 +01:00
Przemysław Czerpak
26c617c979 2015-03-22 17:23 UTC+0100 Przemyslaw Czerpak (druzus/at/poczta.onet.pl)
* src/rdd/dbf1.c
    * pacified warnings
2015-03-22 17:23:43 +01:00
Przemysław Czerpak
3c4c67254c 2015-03-21 12:54 UTC+0100 Przemyslaw Czerpak (druzus/at/poczta.onet.pl)
* src/rdd/dbf1.c
    ! restored the line with initialization of allocated memory buffer
      I deleted by mistake removing my private comments before commit.
      Without this line sort could randomly crash on small tables (less
      then 65537 sorted records)
2015-03-21 12:54:05 +01:00
Przemysław Czerpak
db16cc8861 2015-03-20 16:34 UTC+0100 Przemyslaw Czerpak (druzus/at/poczta.onet.pl)
* include/Makefile
  - include/hbdbsort.h
  * src/rdd/Makefile
  - src/rdd/hbdbsort.c
  * src/rdd/dbf1.c
    - completely removed old code used in DBF* RDDs as low level backend
      for SORT TO ... command and __dbArrange() function.
      It was buggy and extremely inefficient in some cases, i.e. after
      20 hours I killed process which was sorting table with 2'000'000
      records in reverted order so I cannot even say how much time it
      needed.

  * src/rdd/dbf1.c
    + added new code for table sorting in DBF* RDDs
      (SORT TO ... / __dbArrange() backend)
      New code fixes many different problems which existed in previous one
      like missing support for national collation, wrong descending orders,
      wrong sorting of numeric fields with negative values, missing support
      for sorting many field types, missing support for transferring MEMO
      fields, missing support for transferring records to table with different
      field structure or serving by different RDD, etc.
      New code is also many times faster then the old one. In practice it
      means is now usable for tables with more then few thousands records,
      i.e. the test table with 2'000'000 records I used with old code was
      copied in sorted order in 13 secs. when pure COPY TO needed 10 secs.
      Now it's possible to export sorted tables to different RDDs, i.e.
      using DELIM or SDF RDDs in desitnation area.
      New code is written in general form without any local to DBF* RDDs
      extensions so it can be adopted as base in any other RDD. Probably
      I'll move it to default workarea methods so it will be inherited by
      all Harbour RDDs and only if necessary authors of some RDDs may
      overload it, i.e. to move the operation to the server side in remote
      RDDs when source and destination tables are processed by the same
      server.
      This modification closes the last known for years bug or rather bag
      of bugs ;-) in Harbour.
    ; NOTE: For large tables new sorting algorithm may access source records
            more then once. It means that results may be wrongly sorted when
            sorted fields in exported records are modified concurrently by
            other station during exporting. This can be easy eliminated by
            copping source records to temporary file anyhow it will introduce
            additional overhead in all cases and user can easy eliminate the
            problem by simple FLOCK before sort or making export to temporary
            file and then sorting this file or he can simply ignore this
            problem as unimportant in the specific situation so I decided to
            not implement double copping.
            I haven't tested what Cl*pper exactly does in such case so
            I cannot say if current behavior is or isn't Cl*pper compatible.
2015-03-20 16:34:03 +01:00
Przemysław Czerpak
ee5f8ac72f 2015-03-18 23:16 UTC+0100 Przemyslaw Czerpak (druzus/at/poczta.onet.pl)
* include/hbrddcdx.h
  * src/rdd/dbfcdx/dbfcdx1.c
    % small speed improvement during indexing
    * casting

  * src/rdd/dbfnsx/dbfnsx1.c
  * src/rdd/dbfntx/dbfntx1.c
    * casting
2015-03-18 23:16:36 +01:00
Przemysław Czerpak
97d161c683 2015-03-18 13:25 UTC+0100 Przemyslaw Czerpak (druzus/at/poczta.onet.pl)
* src/rtl/teditor.prg
    ! resize missing text on line wrapping (issue #92)
2015-03-18 13:25:45 +01:00
Przemysław Czerpak
c98c7b1597 2015-03-17 13:35 UTC+0100 Przemyslaw Czerpak (druzus/at/poczta.onet.pl)
* src/rdd/workarea.c
    % small simplification
2015-03-17 13:35:57 +01:00
Przemysław Czerpak
66bf4f5867 2015-03-17 12:55 UTC+0100 Przemyslaw Czerpak (druzus/at/poczta.onet.pl)
* src/rdd/dbcmd.c
    ! fixed __dbArrange() to allow record transfer with the same conditions
      as __dbTrans() just like Cl*pper does.
      Low level RDD code should respect it, i.e. it should be possible to
      sort using fields which exist only in source workarea, the order
      and number of fields in source and destination workareas can be
      completely different, etc.
      Low level DBF* SORT() method is completely broken in such cases and
      has to be rewritten.
2015-03-17 12:55:32 +01:00
Przemysław Czerpak
11e823dba2 2015-03-16 23:00 UTC+0100 Przemyslaw Czerpak (druzus/at/poczta.onet.pl)
* contrib/hbtip/smtpcli.prg
    ! do not execute STARTTLS command if server does not report it's supported
      (issue #90)

  * src/rdd/dbcmd.c
    * use DBI_TRANSREC in __dbTrans() and __dbArrange() (pure record copping
      without sorting)
2015-03-16 23:00:13 +01:00
Przemysław Czerpak
f090e652cd 2015-03-13 18:56 UTC+0100 Przemyslaw Czerpak (druzus/at/poczta.onet.pl)
* contrib/hbwin/win_bmp.c
    ! fixed copy and past typo in my last modification - thanks to
      Juan Francolino for reporting the problem and to Alexander
      Czjczyński for locating the reason. It closes issue #91.

  * contrib/hbtip/smtpcli.prg
    * be sure that server answer after HELO command (:open() method) is
      fully consumed

  * contrib/hbtip/sendmail.prg
    ! removed redundant waiting for sever answer after opening connection
      without authentication - it fixes timeout delay in such case
    ! do not create TIPClientSMTP() object twice when it's not necessary
    % small code simplification
2015-03-13 18:56:10 +01:00
Przemysław Czerpak
58bc2c6f00 2015-03-12 09:41 UTC+0100 Przemyslaw Czerpak (druzus/at/poczta.onet.pl)
* contrib/hbtip/sendmail.prg
    ! fixed wrong login conditions - AICS it's old problem which had existed
      from very long time.

  * contrib/hbtip/smtpcli.prg
    ! eliminated redundant processing EHLO processing
2015-03-12 09:41:38 +01:00
Przemysław Czerpak
6c9d48495f 2015-03-11 16:23 UTC+0100 Przemyslaw Czerpak (druzus/at/poczta.onet.pl)
* contrib/hbtip/hbtip.hbx
  * contrib/hbtip/httpcli.prg
  * contrib/hbtip/log.prg
  * contrib/hbtip/sessid.prg
  * contrib/hbtip/smtpcli.prg
  * contrib/hbtip/thtml.ch
  * contrib/hbtip/tip.ch
  * contrib/hbtip/url.prg
    * synced with Viktor's branch.
2015-03-11 16:23:04 +01:00
Przemysław Czerpak
7f80c2e286 2015-03-10 18:06 UTC+0100 Przemyslaw Czerpak (druzus/at/poczta.onet.pl)
* contrib/hbtip/cgi.prg
  * contrib/hbtip/client.prg
  * contrib/hbtip/encb64.prg
  * contrib/hbtip/encoder.prg
  * contrib/hbtip/encqp.prg
  * contrib/hbtip/mail.prg
  * contrib/hbtip/sendmail.prg
    * synced manually with Viktor's branch (not all things).

  * doc/xhb-diff.txt
    ! fixed few typos
2015-03-10 18:06:11 +01:00
Przemysław Czerpak
f832dbe9a4 2015-03-09 19:16 UTC+0100 Przemyslaw Czerpak (druzus/at/poczta.onet.pl)
* contrib/hbtip/smtpcli.prg
    ! consume whole EHLO output after STARTTLS
2015-03-09 19:16:12 +01:00
Przemysław Czerpak
acc1a252e8 2015-03-09 18:33 UTC+0100 Przemyslaw Czerpak (druzus/at/poczta.onet.pl)
* contrib/hbtip/smtpcli.prg
    ! added missing space after AUTH PLAIN
    ! resend EHLO command after STARTTLS
    ; Thanks to Rolf for information about both problems.
2015-03-09 18:33:06 +01:00
Przemysław Czerpak
00717d90b1 2015-03-09 18:17 UTC+0100 Przemyslaw Czerpak (druzus/at/poczta.onet.pl)
* contrib/hbtip/client.prg
    * removed trailing spaces

  * contrib/hbtip/hbtip.hbp
  * contrib/hbtip/encurlc.c
  + contrib/hbtip/mime.c
  + contrib/hbtip/misc.c
  - contrib/hbtip/utils.c
    * synced with Viktor's branch
    * renamed some variables to follow rules used by Harbour
    % use binary search to locate mime extension
    * some minor cleanups and fixes
2015-03-09 18:17:39 +01:00
Przemysław Czerpak
54a8c06190 2015-03-09 15:08 UTC+0100 Przemyslaw Czerpak (druzus/at/poczta.onet.pl)
* contrib/hbtip/smtpcli.prg
    ! fixed typo in my previous commit
2015-03-09 15:08:50 +01:00
Przemysław Czerpak
eaa87a3be9 2015-03-07 20:16 UTC+0100 Przemyslaw Czerpak (druzus/at/poczta.onet.pl)
* contrib/hbtip/smtpcli.prg
    * synced with Viktor's branch - it should fix the problem with
      unconditional bind with HBSSL library after last Jean's patch.
2015-03-07 20:16:55 +01:00
Przemysław Czerpak
b0e3afcdda 2015-03-05 22:35 UTC+0100 Przemyslaw Czerpak (druzus/at/poczta.onet.pl)
* src/rdd/dbf1.c
    ! do not refresh ModTime and RowVer fields just copied during transfer
      operation
2015-03-05 22:35:11 +01:00
Przemysław Czerpak
74c4b51266 2015-03-05 20:46 UTC+0100 Przemyslaw Czerpak (druzus/at/poczta.onet.pl)
* include/hbapi.h
  * src/vm/garbage.c
    + added hb_gcDummyClear() function

  * include/hbapirdd.h
  * include/hbusrrdd.ch
    + added DBTF_CPYCTR constant value - when set in dbTransInfo.uiFlags
      then after record transfer field counters should to be copied from
      source to destination area

  * include/hbapirdd.h
  * src/rdd/wafunc.c
    + added new C functions hb_dbTransInfoPut() and hb_dbTransInfoGet()
      which allow to store and retrieve pointer to DBTRANSINFO structure
      into/from HB_ITEM with strict type verification.

  * src/rdd/wafunc.c
    * pass pointer to DBTRANSINFO structure as argument of DBI_TRANSREC
      action. It allows RDD serving destination area to decide which
      fields and how should be transferred updating uiFlags, uiItemCount
      and lpTransItems members of DBTRANSINFO.
      If RDD removes all fields from DBTRANSINFO structure (uiItemCount==0)
      or does not return HB_SUCCESS for DBI_TRANSREC action (default WA
      implementation returns HB_SUCCESS so it's not necessary to overload
      it if RDD does not make any additional operations) then record
      transfer is interrupted.
    * copy field counters only when destination area asked about it setting
      DBTF_CPYCTR in dbTransInfo.uiFlags in DBI_TRANSREC action.

  * src/rdd/dbf1.c
    * do not copy automatically updated fields when destination area
      is not empty
    * set DBTF_CPYCTR to indicate that counters should be copied from
      source to destination area when original value of automatically
      updated fields are transferred
    ; Now DBF* RDDs in Harbour respects the following rules for record
      transfer operations (COPY TO / APPEND FROM) with automatically
      updated fields:
         - COPY TO transfers original values to destination table and
           finally copy counters from the source table to destination one
           so autoincrement fields in both tables after next append will be
           initialized with the same values regardless of number of copied
           records - even if only single record is copied then counters in
           destination table will inherit next values for new record from
           the source table. Also values of RowVer and ModTime fields are
           copied from source to destination table and not updated during
           transfer operation.
         - APPEND FROM works like COPY TO (original field values and then
           counters are copied to destination table) if the source table
           supports counters and destination table is empty and FLocked()
           or opened in exclusive mode.
           If source table does not support counters for given fields, i.e.
           it is processed by transfer RDD like DELIM or SDF (RDT_TRANSFER)
           or destination table is not empty or opened in shared mode and
           FLock is not set when APPEND FROM is executed then automatically
           updated fields (counters, RowVer, ModTime) are not copied and
           initialized with new values like for each new record added to
           destination table.

  * ChangeLog.txt
    ! typo in last ChangeLog entry
2015-03-05 20:46:23 +01:00
Przemysław Czerpak
6df9526b8d 2015-03-04 11:18 UTC+0100 Przemyslaw Czerpak (druzus/at/poczta.onet.pl)
* include/hbapi.h
    ! fixed HB_ISMEMO() macro, original version was accepting the same
      items as HB_ISCHAR() so it was not compatible with ISMEMO() macro
      in Cl*pper.

  * src/rtl/valtype.c
    * use HB_ISMEMO() macro
2015-03-04 11:18:45 +01:00
Przemysław Czerpak
d3a947bc6f 2015-03-04 09:18 UTC+0100 Przemyslaw Czerpak (druzus/at/poczta.onet.pl)
* src/rdd/dbf1.c
  * src/rtl/hbinet.c
    * pacified warnings (Thanks to Grigory)

  * src/rdd/dbcmd.c
  * src/rdd/wafunc.c
    * small code simplification and cleanup
    ! protection against GPF when wrong parameters are passed to __dbArrange()
    + added support for transferring records using __dbArrange() to area with
      different fields order (low level driver may refuse to finish such
      operation but not it's possible.
2015-03-04 09:18:13 +01:00