Files
harbour-core/harbour/contrib/hbmzip
Viktor Szakats d93eb500c9 2010-02-22 14:43 UTC+0100 Viktor Szakats (harbour.01 syenar.hu)
* src/vm/extrap.c
  * src/vm/dynlibhb.c
  * src/common/hbgete.c
  * src/common/hbffind.c
  * src/common/hbver.c
  * src/rtl/filesys.c
  * src/rtl/diskspac.c
  * src/rtl/gtos2/gtos2.c
  * src/rtl/cputime.c
  * src/rtl/disksphb.c
  * include/hbthread.h
  * contrib/hbmzip/hbmzip.c
    ! Fixed to setup all OS/2 INCL_* constants and
      to #include os2.h by themselves, and not to rely
      on Harbour headers to do this job for them.
    ; TODO: Do the same for dos.h.

  * doc/hdr_tpl.txt
    - Deleted local changelog.
    ! Fixes to .prg function docs
    + Update copyright year to 2010.
    + Added fact that $SEEALSO$ should be comma separated.
    + Added .c function example (far from perfect)

  * examples/hbdoc2/tmplates.prg
  * doc/hdr_tpl.txt
    + Added $VERSION$ tag. (pls update HBIDE. We haven't finalized
      the format yet, to it's little bit premature to create
      new and new parsers/generators for it yet)

  * include/hbdefs.h
    ! Fixed to not unconditionally include OS/2 headers with
      an arbitrary selection of INCL_ macros.
      Now OS/2 headers will only be included if legacy types
      are requested (off by default), and no INCL_ macros
      are defined. This latter change may affect 3rd party
      code written for OS/2, so I'm marking it INCOMPATIBLE.

  * contrib/hbqt/generator/hbqtgen.prg
  * contrib/hbqt/hbqt.h
    * Changed to #include hbapi.h from hbqt.h. It needs it,
      so this is the clean way. Changed generator to leave
      out hbapi.h from each source file and refer to hbqt.h
      only. (untested)
    + Added logic to #include OS/2 headers with some INCL_
      macros defined, to make QT on OS/2 happy. (copied them
      from the dev. list)
    ; TODO: Regenerate HBQT sources.

  * utils/hbtest/hbtest.prg
    ! Cleaned old problem reported by Chen. It seems like
      a feature which was never finished, and it's not even
      hugely needed, so I deleted it.

  * config/global.mk
    + Will now provide HB_COMP_PATH_PUB value for os2-gcc, os2-gccomf
      compilers. This value can be used to manually form ld.exe
      command line.
      (NOTE: This may be deleted in the future, when sorting
      out line-length limit problems for these compilers.
2010-02-22 13:45:07 +00:00
..

/*
 * $Id$
 */


This folder contains compression related files including:
 * zip file support based on minizip library (http://www.winimage.com/zLibDll/minizip.html)
   including:
   * minizip version 1.01e source files
   * wrapper functions for minizip
   * some additionl functions to provide a higher level API for zip files

Some small changes (to fix compile time warning and errors) are applied to original
source of minizip 1.01e:

  * harbour/contrib/hbzlib/zip.c
    * added forward definitions of allocate_new_datablock(),
      free_datablock(), init_linkedlist(), add_data_in_datablock(),
      ziplocal_TmzDateToDosDate()
    * pacified warnings of unused args dosDate and crcForCrypting
    * fixed 2 warnings: assigned value is not used. See, TOFIX
      comment for one of the fixes
    * fixed BCC warning "function call with no prototype" by changing
           local int zipFlushWriteBuffer(zi)
              zip_internal* zi;
           {
      to
           local int zipFlushWriteBuffer(zip_internal* zi)
           {
      I expected this code be equivavlent! ??? :/

  * harbour/contrib/hbzlib/unzip.c
    * added forward definitions of strcmpcasenosensitive_internal(),
      unzlocal_DosDateToTmuDate(), unzlocal_CheckCurrentFileCoherencyHeader()
    * fixed 8 warnings: assigned value is not used. See, TOFIX
      comment for one of the fixes

  * harbour/contrib/hbzlib/ioapi.c
    * pacified 7 warnings: unused args opaque
    * fixed warning: assigned value is not used


Harbour functions to mange ZIP files:
=====================================

HB_ZipOpen( cFileName, [ iMode = HB_ZIP_CREATE ],
            [ @cGlobalComment ] ) --> hZip
HB_ZipClose( hZip, [ cGlobalComment ] ) --> nError
HB_ZipFileCreate( hZip, cZipName, tDateTime, cTime,
                  nInternalAttr, nExternalAttr,
                  [ nMethod = HB_ZLIB_METHOD_DEFLATE ],
                  [ nLevel = HB_ZLIB_COMPRESSION_DEFAULT ],
                  [ cPassword, ulFileCRC32 ], [ cComment ] ) --> nError
HB_ZipFileWrite( hZip, cData [, nLen ] ) --> nError
HB_ZipFileClose( hZip ) --> nError
HB_ZipStoreFile( hZip, cFileName, [ cZipName ], ;
                 [ cPassword ], [ cComment ] ) --> nError
HB_ZipStoreFileHandle( hZip, fhnd, cZipName, ;
                 [ cPassword ], [ cComment ] ) --> nError
HB_zipFileCRC32( cFileName ) --> nError


HB_UnzipOpen( cFileName ) --> hUnzip
HB_UnzipClose( hUnzip ) --> nError
HB_UnzipGlobalInfo( hUnzip, @nEntries, @cGlobalComment ) --> nError
HB_UnzipFileFirst( hUnzip ) --> nError
HB_UnzipFileNext( hUnzip ) --> nError
HB_UnzipFilePos( hUnzip ) --> nPosition
HB_UnzipFileGoto( hUnzip, nPosition ) --> nError
HB_UnzipFileInfo( hUnzip, @cZipName, @tDateTime, @cTime,
                  @nInternalAttr, @nExternalAttr,
                  @nMethod, @nSize, @nCompressedSize,
                  @lCrypted, @cComment ) --> nError
HB_UnzipFileOpen( hUnzip, [ cPassword ] ) --> nError
HB_UnzipFileRead( hUnzip, @cBuf [, nLen ] ) --> nRead
HB_UnzipFileClose( hUnzip ) --> nError
HB_UnzipExtractCurrentFile( hUnzip, [ cFileName ], [ cPassword ] ) --> nError
HB_UnzipExtractCurrentFileToHandle( hZip, fhnd, [ cPassword ] ) --> nError


HB_ZipDeleteFile( cZipFile, cFileMask ) --> nError