[Libreoffice-commits] core.git: 2 commits - external/neon tools/source

Stephan Bergmann sbergman at redhat.com
Wed Jun 3 01:52:12 PDT 2015


 external/neon/UnpackedTarball_neon.mk |    1 +
 external/neon/ubsan.patch             |   11 +++++++++++
 tools/source/stream/stream.cxx        |    2 +-
 3 files changed, 13 insertions(+), 1 deletion(-)

New commits:
commit e0308504b20e0ce8f3964e34104e7d700465980b
Author: Stephan Bergmann <sbergman at redhat.com>
Date:   Wed Jun 3 10:51:13 2015 +0200

    -fsanitize=nonnull-attribute in memcpy call
    
    Change-Id: Ifbba19693ce0182a5d367b1621ade4780f152add

diff --git a/tools/source/stream/stream.cxx b/tools/source/stream/stream.cxx
index b96da82..79c3717 100644
--- a/tools/source/stream/stream.cxx
+++ b/tools/source/stream/stream.cxx
@@ -1908,7 +1908,7 @@ bool SvMemoryStream::ReAllocateMemory( long nDiff )
             if( nEndOfData >= nNewSize )
                 nEndOfData = nNewSize-1L;
         }
-        else
+        else if (nSize != 0)
         {
             memcpy( pNewBuf, pBuf, (size_t)nSize );
         }
commit 9ec9ef471d23ae40a955b3b105d397544b938915
Author: Stephan Bergmann <sbergman at redhat.com>
Date:   Wed Jun 3 10:50:53 2015 +0200

    external/neon: -fsanitize=shift
    
    Change-Id: I82255efc3a4fbcb07b6f747af6ef81124a5fb96f

diff --git a/external/neon/UnpackedTarball_neon.mk b/external/neon/UnpackedTarball_neon.mk
index 1b922df..3a4b58a 100644
--- a/external/neon/UnpackedTarball_neon.mk
+++ b/external/neon/UnpackedTarball_neon.mk
@@ -21,6 +21,7 @@ $(eval $(call gb_UnpackedTarball_add_patches,neon,\
 	external/neon/neon.patch \
 	external/neon/neon_ne_set_request_flag.patch \
 	external/neon/neon_with_gnutls.patch \
+	external/neon/ubsan.patch \
 ))
 
 # vim: set noet sw=4 ts=4:
diff --git a/external/neon/ubsan.patch b/external/neon/ubsan.patch
new file mode 100644
index 0000000..56445fc
--- /dev/null
+++ b/external/neon/ubsan.patch
@@ -0,0 +1,11 @@
+--- src/ne_compress.c
++++ src/ne_compress.c
+@@ -81,7 +81,7 @@
+ };
+ 
+ /* Convert 'buf' to unsigned int; 'buf' must be 'unsigned char *' */
+-#define BUF2UINT(buf) (((buf)[3]<<24) + ((buf)[2]<<16) + ((buf)[1]<<8) + (buf)[0])
++#define BUF2UINT(buf) (((unsigned)((buf)[3])<<24) + ((buf)[2]<<16) + ((buf)[1]<<8) + (buf)[0])
+ 
+ #define ID1 0x1f
+ #define ID2 0x8b


More information about the Libreoffice-commits mailing list