diff options
author | Yann Collet <cyan@fb.com> | 2024-04-01 11:12:26 -0700 |
---|---|---|
committer | Yann Collet <cyan@fb.com> | 2024-04-01 11:49:21 -0700 |
commit | a2f145f059150744132639cf30a918ceadac9b77 (patch) | |
tree | 373bd41a49f0f45cca09b80e0e2f88031c298594 | |
parent | 72c16b187d27016b7634f5c6b7290e7c66ba44b3 (diff) | |
download | zstd-a2f145f059150744132639cf30a918ceadac9b77.tar.gz |
decompression errors always display the full origin filename
instead of the truncated size-limited version.
-rw-r--r-- | programs/fileio.c | 27 | ||||
-rw-r--r-- | programs/fileio_asyncio.c | 2 |
2 files changed, 11 insertions, 18 deletions
diff --git a/programs/fileio.c b/programs/fileio.c index e3012a71..c6af36fb 100644 --- a/programs/fileio.c +++ b/programs/fileio.c @@ -1494,7 +1494,7 @@ FIO_compressZstdFrame(FIO_ctx_t* const fCtx, int compressionLevel, U64* readsize) { cRess_t const ress = *ressPtr; - IOJob_t *writeJob = AIO_WritePool_acquireJob(ressPtr->writeCtx); + IOJob_t* writeJob = AIO_WritePool_acquireJob(ressPtr->writeCtx); U64 compressedfilesize = 0; ZSTD_EndDirective directive = ZSTD_e_continue; @@ -1526,8 +1526,7 @@ FIO_compressZstdFrame(FIO_ctx_t* const fCtx, CHECK( ZSTD_CCtx_setPledgedSrcSize(ress.cctx, prefs->streamSrcSize) ); } - { - int windowLog; + { int windowLog; UTIL_HumanReadableSize_t windowSize; CHECK(ZSTD_CCtx_getParameter(ress.cctx, ZSTD_c_windowLog, &windowLog)); if (windowLog == 0) { @@ -1542,7 +1541,6 @@ FIO_compressZstdFrame(FIO_ctx_t* const fCtx, windowSize = UTIL_makeHumanReadableSize(MAX(1ULL, MIN(1ULL << windowLog, pledgedSrcSize))); DISPLAYLEVEL(4, "Decompression will require %.*f%s of memory\n", windowSize.precision, windowSize.value, windowSize.suffix); } - (void)srcFileName; /* Main compression loop */ do { @@ -2439,12 +2437,14 @@ FIO_decompressZstdFrame(FIO_ctx_t* const fCtx, dRess_t* ress, U64 alreadyDecoded) /* for multi-frames streams */ { U64 frameSize = 0; - IOJob_t *writeJob = AIO_WritePool_acquireJob(ress->writeCtx); + const char* srcFName20 = srcFileName; + IOJob_t* writeJob = AIO_WritePool_acquireJob(ress->writeCtx); + assert(writeJob); /* display last 20 characters only when not --verbose */ { size_t const srcFileLength = strlen(srcFileName); if ((srcFileLength>20) && (g_display_prefs.displayLevel<3)) - srcFileName += srcFileLength-20; + srcFName20 += srcFileLength-20; } ZSTD_DCtx_reset(ress->dctx, ZSTD_reset_session_only); @@ -2471,19 +2471,12 @@ FIO_decompressZstdFrame(FIO_ctx_t* const fCtx, dRess_t* ress, AIO_WritePool_enqueueAndReacquireWriteJob(&writeJob); frameSize += outBuff.pos; if (fCtx->nbFilesTotal > 1) { - size_t srcFileNameSize = strlen(srcFileName); - if (srcFileNameSize > 18) { - const char* truncatedSrcFileName = srcFileName + srcFileNameSize - 15; - DISPLAYUPDATE_PROGRESS( - "\rDecompress: %2u/%2u files. Current: ...%s : %.*f%s... ", - fCtx->currFileIdx+1, fCtx->nbFilesTotal, truncatedSrcFileName, hrs.precision, hrs.value, hrs.suffix); - } else { - DISPLAYUPDATE_PROGRESS("\rDecompress: %2u/%2u files. Current: %s : %.*f%s... ", - fCtx->currFileIdx+1, fCtx->nbFilesTotal, srcFileName, hrs.precision, hrs.value, hrs.suffix); - } + DISPLAYUPDATE_PROGRESS( + "\rDecompress: %2u/%2u files. Current: %s : %.*f%s... ", + fCtx->currFileIdx+1, fCtx->nbFilesTotal, srcFName20, hrs.precision, hrs.value, hrs.suffix); } else { DISPLAYUPDATE_PROGRESS("\r%-20.20s : %.*f%s... ", - srcFileName, hrs.precision, hrs.value, hrs.suffix); + srcFName20, hrs.precision, hrs.value, hrs.suffix); } AIO_ReadPool_consumeBytes(ress->readCtx, inBuff.pos); diff --git a/programs/fileio_asyncio.c b/programs/fileio_asyncio.c index ae6db69e..42a47201 100644 --- a/programs/fileio_asyncio.c +++ b/programs/fileio_asyncio.c @@ -268,7 +268,7 @@ static void AIO_IOPool_destroy(IOPoolCtx_t* ctx) { /* AIO_IOPool_acquireJob: * Returns an available io job to be used for a future io. */ static IOJob_t* AIO_IOPool_acquireJob(IOPoolCtx_t* ctx) { - IOJob_t *job; + IOJob_t* job; assert(ctx->file != NULL || ctx->prefs->testMode); AIO_IOPool_lockJobsMutex(ctx); assert(ctx->availableJobsCount > 0); |