]> git.ipfire.org Git - thirdparty/zstd.git/commitdiff
Merge branch 'dev' into shorterTests
authorYann Collet <cyan@fb.com>
Thu, 28 Sep 2017 19:19:28 +0000 (12:19 -0700)
committerYann Collet <cyan@fb.com>
Thu, 28 Sep 2017 19:19:28 +0000 (12:19 -0700)
fixed conflicts

1  2 
lib/compress/zstd_compress.c
lib/compress/zstdmt_compress.c
lib/zstd.h
tests/playTests.sh
tests/zstreamtest.c

Simple merge
index d83abaf39bfded476ca63aed6aca34c20739f73f,b15bf05afe8fdb13c8cb248568cfeb48d09147bd..bc7d1e540c65a1c169c11eba65edf953ac9ca590
@@@ -494,21 -496,6 +496,21 @@@ static void ZSTDMT_releaseAllJobResourc
      mtctx->allJobsCompleted = 1;
  }
  
-         PTHREAD_MUTEX_LOCK(&zcs->jobCompleted_mutex);
 +static void ZSTDMT_waitForAllJobsCompleted(ZSTDMT_CCtx* zcs)
 +{
 +    DEBUGLOG(4, "ZSTDMT_waitForAllJobsCompleted");
 +    while (zcs->doneJobID < zcs->nextJobID) {
 +        unsigned const jobID = zcs->doneJobID & zcs->jobIDMask;
-             pthread_cond_wait(&zcs->jobCompleted_cond, &zcs->jobCompleted_mutex);
++        ZSTD_PTHREAD_MUTEX_LOCK(&zcs->jobCompleted_mutex);
 +        while (zcs->jobs[jobID].jobCompleted==0) {
 +            DEBUGLOG(5, "waiting for jobCompleted signal from chunk %u", zcs->doneJobID);   /* we want to block when waiting for data to flush */
-         pthread_mutex_unlock(&zcs->jobCompleted_mutex);
++            ZSTD_pthread_cond_wait(&zcs->jobCompleted_cond, &zcs->jobCompleted_mutex);
 +        }
++        ZSTD_pthread_mutex_unlock(&zcs->jobCompleted_mutex);
 +        zcs->doneJobID++;
 +    }
 +}
 +
  size_t ZSTDMT_freeCCtx(ZSTDMT_CCtx* mtctx)
  {
      if (mtctx==NULL) return 0;   /* compatible with free on NULL */
diff --cc lib/zstd.h
Simple merge
Simple merge
index f69cdd646adae22769c5175ab57605b405851adf,f395d7ec5f38f6a0c2fc389294bf63fd7ab9fbea..6ae4ef96c2e11c26fb17a992eb906196a6089c54
@@@ -1505,8 -1507,8 +1505,8 @@@ static int fuzzerTests_newAPI(U32 seed
                  size_t const randomDstSize = FUZ_randomLength(&lseed, maxSampleLog);
                  size_t const dstBuffSize = MIN(dstBufferSize - totalGenSize, randomDstSize);
                  inBuff.size = inBuff.pos + readCSrcSize;
-                 outBuff.size = inBuff.pos + dstBuffSize;
+                 outBuff.size = outBuff.pos + dstBuffSize;
 -                DISPLAYLEVEL(5, "ZSTD_decompressStream input %u bytes (pos:%u/%u)\n",
 +                DISPLAYLEVEL(6, "ZSTD_decompressStream input %u bytes (pos:%u/%u)\n",
                              (U32)readCSrcSize, (U32)inBuff.pos, (U32)cSize);
                  decompressionResult = ZSTD_decompressStream(zd, &outBuff, &inBuff);
                  CHECK (ZSTD_isError(decompressionResult), "decompression error : %s", ZSTD_getErrorName(decompressionResult));