[Git][debian-gis-team/laszip][master] 5 commits: New upstream version 3.4.1

Bas Couwenberg gitlab at salsa.debian.org
Sat Apr 13 06:09:19 BST 2019



Bas Couwenberg pushed to branch master at Debian GIS Project / laszip


Commits:
3d8edd11 by Bas Couwenberg at 2019-04-13T04:55:12Z
New upstream version 3.4.1
- - - - -
253f3ed8 by Bas Couwenberg at 2019-04-13T04:55:13Z
Merge tag 'upstream/3.4.1'

Upstream version 3.4.1

- - - - -
bb0edab7 by Bas Couwenberg at 2019-04-13T04:55:30Z
New upstream release.

- - - - -
17add3fc by Bas Couwenberg at 2019-04-13T04:56:52Z
Drop buildflags.patch, applied upstream.

- - - - -
0363e05b by Bas Couwenberg at 2019-04-13T04:57:19Z
Set distribution to experimental.

- - - - -


11 changed files:

- CHANGES.txt
- CMakeLists.txt
- cmake/unix_compiler_options.cmake
- debian/changelog
- − debian/patches/buildflags.patch
- − debian/patches/series
- docs/source/index.rst
- src/arithmeticmodel.hpp
- src/bytestreamout_array.hpp
- src/laszip.hpp
- src/laszip_dll.cpp


Changes:

=====================================
CHANGES.txt
=====================================
@@ -1,3 +1,6 @@
+11 April 2019 -- increase AC_BUFFER_SIZE from 1024 to 4096 to lower chance of ultra-rare propagate_carry() overflow
+10 April 2019 -- fix potential memory leaks found by Connor Manning using valgrind
+31 March 2019 -- better license terms for core arithmetic coder thanks to Amir Said. upgrade to version 3.4 rev 0
 20 March 2019 -- upped to 3.3 r1 for checking consistent legacy and extended classification for new point types
 19 March 2019 -- bug fix when decompressing new point types: zero "legacy classification" if "classification" > 31
  7 March 2019 -- upped to 3.3 r0 because hobu was suggesting it for the next release


=====================================
CMakeLists.txt
=====================================
@@ -7,7 +7,7 @@ set(ROOT_DIR "${PROJECT_SOURCE_DIR}")
 
 # the next line is the ONLY place in the entire laszip system where
 # the version info is hard-coded
-set(LASZIP_API_VERSION_STRING "3.4.0" CACHE STRING "LASzip version" FORCE)
+set(LASZIP_API_VERSION_STRING "3.4.1" CACHE STRING "LASzip version" FORCE)
 
 include (CheckIncludeFileCXX)
 include(${ROOT_DIR}/cmake/common.cmake NO_POLICY_SCOPE)
@@ -41,7 +41,7 @@ set(LASZIP_API_VERSION ${LASZIP_API_VERSION_MAJOR}.${LASZIP_API_VERSION_MINOR}.$
 # libtool SO version naming
 # 8.0.0 for 3.2.1
 # 9.0.0 for 4.0+
-set(LASZIP_SO_VERSION "8.0.3")
+set(LASZIP_SO_VERSION "8.0.4")
 set(LASZIP_COMPATIBILITY_VERSION 8)
 
 check_include_file_cxx ("unordered_map" HAVE_UNORDERED_MAP)


=====================================
cmake/unix_compiler_options.cmake
=====================================
@@ -19,4 +19,4 @@ else()
     message(FATAL_ERROR "Unsupported C++ compiler")
 endif()
 
-set (CMAKE_CXX_FLAGS "${LASZIP_COMMON_CXX_FLAGS} ${CXX_STANDARD}")
+set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${LASZIP_COMMON_CXX_FLAGS} ${CXX_STANDARD}")


=====================================
debian/changelog
=====================================
@@ -1,3 +1,10 @@
+laszip (3.4.1-1~exp1) experimental; urgency=medium
+
+  * New upstream release.
+  * Drop buildflags.patch, applied upstream.
+
+ -- Bas Couwenberg <sebastic at debian.org>  Sat, 13 Apr 2019 06:56:58 +0200
+
 laszip (3.4.0-1~exp1) experimental; urgency=medium
 
   * Initial release. (Closes: #750731)


=====================================
debian/patches/buildflags.patch deleted
=====================================
@@ -1,14 +0,0 @@
-Description: Append CXXFLAGS instead of overwriting them.
- This preserves hardening buildflags set in the environment.
-Author: Bas Couwenberg <sebastic at debian.org>
-Forwarded: https://github.com/LASzip/LASzip/pull/56
-Applied-Upstream: https://github.com/LASzip/LASzip/commit/3732bd03675bf3af7527f1dd7ca635503d22680a
-
---- a/cmake/unix_compiler_options.cmake
-+++ b/cmake/unix_compiler_options.cmake
-@@ -19,4 +19,4 @@ else()
-     message(FATAL_ERROR "Unsupported C++ compiler")
- endif()
- 
--set (CMAKE_CXX_FLAGS "${LASZIP_COMMON_CXX_FLAGS} ${CXX_STANDARD}")
-+set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${LASZIP_COMMON_CXX_FLAGS} ${CXX_STANDARD}")


=====================================
debian/patches/series deleted
=====================================
@@ -1 +0,0 @@
-buildflags.patch


=====================================
docs/source/index.rst
=====================================
@@ -9,15 +9,19 @@ LASzip - a free open source product of `rapidlasso GmbH <http://rapidlasso.com/>
 Source
 ..............................................................................
 
-* **2018-12-27**
+* **2019-04-12**
 
-  - `laszip-3.2.9.tar.gz <https://github.com/LASzip/LASzip/releases/download/3.2.9/laszip-src-3.2.9.tar.gz>`_
-    `(md5) <https://github.com/LASzip/LASzip/releases/download/3.2.9/laszip-src-3.2.9.tar.gz.md5>`__
+  - `laszip-3.4.1.tar.gz <https://github.com/LASzip/LASzip/releases/download/3.4.1/laszip-src-3.4.1.tar.gz>`_
+    `(md5) <https://github.com/LASzip/LASzip/releases/download/3.4.1/laszip-src-3.4.1.tar.gz.sha256sum>`__
 
 
 Past Release(s)
 ~~~~~~~~~~~~~~~~~~~~~~~~~
 
+* **2018-12-27**
+
+  - `laszip-3.2.9.tar.gz <https://github.com/LASzip/LASzip/releases/download/3.2.9/laszip-src-3.2.9.tar.gz>`_
+    `(md5) <https://github.com/LASzip/LASzip/releases/download/3.2.9/laszip-src-3.2.9.tar.gz.md5>`__
 
 * **2018-11-19**
 


=====================================
src/arithmeticmodel.hpp
=====================================
@@ -14,7 +14,7 @@
 
   COPYRIGHT:
 
-    (c) 2007-2014, martin isenburg, rapidlasso - fast tools to catch reality
+    (c) 2007-2019, martin isenburg, rapidlasso - fast tools to catch reality
 
     This is free software; you can redistribute and/or modify it under the
     terms of the GNU Lesser General Licence as published by the Free Software
@@ -25,6 +25,7 @@
   
   CHANGE HISTORY:
   
+    11 April 2019 -- 1024 AC_BUFFER_SIZE to 4096 for propagate_carry() overflow
     10 January 2011 -- licensing change for LGPL release and liblas integration
     8 December 2010 -- unified framework for all entropy coders
     30 October 2009 -- refactoring Amir Said's FastAC code
@@ -41,7 +42,7 @@
 
 /* this header byte needs to change in case incompatible change happen */
 #define AC_HEADER_BYTE 2
-#define AC_BUFFER_SIZE 1024
+#define AC_BUFFER_SIZE 4096
 
 const U32 AC__MinLength = 0x01000000U;   // threshold for renormalization
 const U32 AC__MaxLength = 0xFFFFFFFFU;      // maximum AC interval length


=====================================
src/bytestreamout_array.hpp
=====================================
@@ -11,7 +11,7 @@
   
   COPYRIGHT:
   
-    (c) 2007-2016, martin isenburg, rapidlasso - fast tools to catch reality
+    (c) 2007-2019, martin isenburg, rapidlasso - fast tools to catch reality
 
     This is free software; you can redistribute and/or modify it under the
     terms of the GNU Lesser General Licence as published by the Free Software
@@ -22,6 +22,8 @@
   
   CHANGE HISTORY:
   
+    11 April 2019 -- increase default alloc from 1024 bytes to 4096 bytes
+    10 April 2019 -- fix potential memory leak found by Connor Manning's valgrind
     22 June 2016 -- access to current size for "native LAS 1.4 compressor"
     19 July 2015 -- moved from LASlib to LASzip for "compatibility mode" in DLL
      9 April 2012 -- created after cooking Zuccini/Onion/Potatoe dinner for Mara
@@ -39,7 +41,7 @@
 class ByteStreamOutArray : public ByteStreamOut
 {
 public:
-  ByteStreamOutArray(I64 alloc=1024);
+  ByteStreamOutArray(I64 alloc=4096);
 /* write a single byte                                       */
   BOOL putByte(U8 byte);
 /* write an array of bytes                                   */
@@ -53,7 +55,7 @@ public:
 /* seek to the end of the file                               */
   BOOL seekEnd();
 /* destructor                                                */
-  ~ByteStreamOutArray(){};
+  ~ByteStreamOutArray() { if (data) free(data); };
 /* get access to data                                        */
   inline I64 getSize() const { return size; };
   inline I64 getCurr() const { return curr; };
@@ -69,7 +71,7 @@ protected:
 class ByteStreamOutArrayLE : public ByteStreamOutArray
 {
 public:
-  ByteStreamOutArrayLE(I64 alloc=1024);
+  ByteStreamOutArrayLE(I64 alloc=4096);
 /* write 16 bit low-endian field                             */
   BOOL put16bitsLE(const U8* bytes);
 /* write 32 bit low-endian field                             */
@@ -89,7 +91,7 @@ private:
 class ByteStreamOutArrayBE : public ByteStreamOutArray
 {
 public:
-  ByteStreamOutArrayBE(I64 alloc=1024);
+  ByteStreamOutArrayBE(I64 alloc=4096);
 /* write 16 bit low-endian field                             */
   BOOL put16bitsLE(const U8* bytes);
 /* write 32 bit low-endian field                             */
@@ -109,7 +111,7 @@ private:
 inline ByteStreamOutArray::ByteStreamOutArray(I64 alloc)
 {
   this->data = (U8*)malloc((U32)alloc);
-  this->alloc = 1024;
+  this->alloc = alloc;
   this->size = 0;
   this->curr = 0;
 }
@@ -118,7 +120,7 @@ inline BOOL ByteStreamOutArray::putByte(U8 byte)
 {
   if (curr == alloc)
   {
-    alloc += 1024;
+    alloc += 4096;
     data = (U8*)realloc(data, (U32)alloc);
     if (data == 0)
     {
@@ -135,7 +137,7 @@ inline BOOL ByteStreamOutArray::putBytes(const U8* bytes, U32 num_bytes)
 {
   if ((curr+num_bytes) > alloc)
   {
-    alloc += (1024+num_bytes);
+    alloc += (4096+num_bytes);
     data = (U8*)realloc(data, (U32)alloc);
     if (data == 0)
     {


=====================================
src/laszip.hpp
=====================================
@@ -74,8 +74,8 @@ typedef long long SIGNED_INT64;
 
 #define LASZIP_VERSION_MAJOR                3
 #define LASZIP_VERSION_MINOR                4
-#define LASZIP_VERSION_REVISION             0
-#define LASZIP_VERSION_BUILD_DATE      190401
+#define LASZIP_VERSION_REVISION             1
+#define LASZIP_VERSION_BUILD_DATE      190411
 
 #define LASZIP_COMPRESSOR_NONE              0
 #define LASZIP_COMPRESSOR_POINTWISE         1


=====================================
src/laszip_dll.cpp
=====================================
@@ -13,7 +13,7 @@
 
   COPYRIGHT:
 
-    (c) 2007-2017, martin isenburg, rapidlasso - fast tools to catch reality
+    (c) 2007-2019, martin isenburg, rapidlasso - fast tools to catch reality
 
     This is free software; you can redistribute and/or modify it under the
     terms of the GNU Lesser General Licence as published by the Free Software
@@ -2794,7 +2794,13 @@ setup_laszip_items(
 
   // compute offsets (or points item pointers) for data transfer from the point items
 
+  if (laszip_dll->point_items)
+  {
+    delete [] laszip_dll->point_items;
+  }
+
   laszip_dll->point_items = new U8*[laszip->num_items];
+
   if (laszip_dll->point_items == 0)
   {
     sprintf(laszip_dll->error, "could not alloc point_items");
@@ -3971,6 +3977,11 @@ laszip_read_header(
   }
 
   // create point's item pointers
+  
+  if (laszip_dll->point_items)
+  {
+    delete [] laszip_dll->point_items;
+  }
 
   laszip_dll->point_items = new U8*[laszip->num_items];
 



View it on GitLab: https://salsa.debian.org/debian-gis-team/laszip/compare/d4962667f838e7d20e5df5fe031581dc36649b8f...0363e05b35e4b6a4b585cf8deb5c6bd4c5ffe277

-- 
View it on GitLab: https://salsa.debian.org/debian-gis-team/laszip/compare/d4962667f838e7d20e5df5fe031581dc36649b8f...0363e05b35e4b6a4b585cf8deb5c6bd4c5ffe277
You're receiving this email because of your account on salsa.debian.org.

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://alioth-lists.debian.net/pipermail/pkg-grass-devel/attachments/20190413/0f0a5f98/attachment-0001.html>


More information about the Pkg-grass-devel mailing list