]> git.ipfire.org Git - thirdparty/zstd.git/commitdiff
Makefile: added variable SCANBUILD 1282/head 1285/head
authorYann Collet <cyan@fb.com>
Thu, 16 Aug 2018 22:41:56 +0000 (15:41 -0700)
committerYann Collet <cyan@fb.com>
Thu, 16 Aug 2018 23:44:13 +0000 (16:44 -0700)
so that a different version of scan-build can be selected

Makefile
contrib/seekable_format/examples/seekable_compression.c
lib/decompress/zstd_decompress.c
lib/legacy/zstd_v05.c
lib/legacy/zstd_v06.c

index e338c5ca199b5cc59e9892ffeb8b70ead9efa231..853ceee932571fb3161467db2fcce41e80f4311b 100644 (file)
--- a/Makefile
+++ b/Makefile
@@ -352,7 +352,8 @@ bmi32build: clean
 
 # static analyzer test uses clang's scan-build
 # does not analyze zlibWrapper, due to detected issues in zlib source code
+staticAnalyze: SCANBUILD ?= scan-build
 staticAnalyze:
        $(CC) -v
-       CC=$(CC) CPPFLAGS=-g scan-build --status-bugs -v $(MAKE) allzstd examples contrib
+       CC=$(CC) CPPFLAGS=-g $(SCANBUILD) --status-bugs -v $(MAKE) allzstd examples contrib
 endif
index 9485bf26fc469678018fc5cb9fbcd38e9eafe7b1..9a331a89531e5a4e889829448fe371249c2f88dd 100644 (file)
@@ -101,7 +101,7 @@ static void compressFile_orDie(const char* fname, const char* outName, int cLeve
     free(buffOut);
 }
 
-static const char* createOutFilename_orDie(const char* filename)
+static char* createOutFilename_orDie(const char* filename)
 {
     size_t const inL = strlen(filename);
     size_t const outL = inL + 5;
@@ -109,7 +109,7 @@ static const char* createOutFilename_orDie(const char* filename)
     memset(outSpace, 0, outL);
     strcat(outSpace, filename);
     strcat(outSpace, ".zst");
-    return (const char*)outSpace;
+    return (char*)outSpace;
 }
 
 int main(int argc, const char** argv) {
@@ -124,8 +124,9 @@ int main(int argc, const char** argv) {
     {   const char* const inFileName = argv[1];
         unsigned const frameSize = (unsigned)atoi(argv[2]);
 
-        const char* const outFileName = createOutFilename_orDie(inFileName);
+        char* const outFileName = createOutFilename_orDie(inFileName);
         compressFile_orDie(inFileName, outFileName, 5, frameSize);
+        free(outFileName);
     }
 
     return 0;
index 8fef7e51b4ab4bf0f6b4864797a99f6c00ed7184..7c4769cd84cbdf0736754dda3723b1454bc5b91c 100644 (file)
@@ -542,6 +542,7 @@ size_t ZSTD_getcBlockSize(const void* src, size_t srcSize,
 static size_t ZSTD_copyRawBlock(void* dst, size_t dstCapacity,
                           const void* src, size_t srcSize)
 {
+    if (dst==NULL) return ERROR(dstSize_tooSmall);
     if (srcSize > dstCapacity) return ERROR(dstSize_tooSmall);
     memcpy(dst, src, srcSize);
     return srcSize;
index 89a5fe7e66353f8122a7c9c9210456a01820c056..65f07a3b5023f63b4a4048c68bf146193fb9633c 100644 (file)
@@ -2846,6 +2846,7 @@ size_t ZSTDv05_getcBlockSize(const void* src, size_t srcSize, blockProperties_t*
 
 static size_t ZSTDv05_copyRawBlock(void* dst, size_t maxDstSize, const void* src, size_t srcSize)
 {
+    if (dst==NULL) return ERROR(dstSize_tooSmall);
     if (srcSize > maxDstSize) return ERROR(dstSize_tooSmall);
     memcpy(dst, src, srcSize);
     return srcSize;
index d8de77ca96e73f0a1bd6b196586c5b6f1bfeea70..ca982c35e433c76799e78697806f45d1d346d437 100644 (file)
@@ -3041,6 +3041,7 @@ size_t ZSTDv06_getcBlockSize(const void* src, size_t srcSize, blockProperties_t*
 
 static size_t ZSTDv06_copyRawBlock(void* dst, size_t dstCapacity, const void* src, size_t srcSize)
 {
+    if (dst==NULL) return ERROR(dstSize_tooSmall);
     if (srcSize > dstCapacity) return ERROR(dstSize_tooSmall);
     memcpy(dst, src, srcSize);
     return srcSize;