int excludeCompressedFiles;
int patchFromMode;
+ int noContentSize;
};
prefs->patchFromMode = value != 0;
}
+void FIO_setNoContentSize(FIO_prefs_t* const prefs, int value)
+{
+ prefs->noContentSize = value != 0;
+}
+
/*-*************************************
* Functions
***************************************/
clock_t const cpuStart = clock();
U64 readsize = 0;
U64 compressedfilesize = 0;
- U64 const fileSize = UTIL_getFileSize(srcFileName);
+ U64 const fileSize = !prefs->noContentSize ? UTIL_getFileSize(srcFileName) : UTIL_FILESIZE_UNKNOWN;
DISPLAYLEVEL(5, "%s: %u bytes \n", srcFileName, (unsigned)fileSize);
/* compression format selection */
void FIO_setNotificationLevel(int level);
void FIO_setExcludeCompressedFile(FIO_prefs_t* const prefs, int excludeCompressedFiles);
void FIO_setPatchFromMode(FIO_prefs_t* const prefs, int value);
+void FIO_setNoContentSize(FIO_prefs_t* const prefs, int value);
/*-*************************************
* Single File functions
setRealTimePrio = 0,
singleThread = 0,
showDefaultCParams = 0,
- ultra=0;
+ ultra=0,
+ noContentSize=0;
double compressibility = 0.5;
unsigned bench_nbSeconds = 3; /* would be better if this value was synchronized from bench */
size_t blockSize = 0;
if (!strcmp(argument, "--priority=rt")) { setRealTimePrio = 1; continue; }
if (!strcmp(argument, "--output-dir-flat")) {nextArgumentIsOutDirName=1; lastCommand=1; continue; }
if (!strcmp(argument, "--show-default-cparams")) { showDefaultCParams = 1; continue; }
+ if (!strcmp(argument, "--no-content-size")) { noContentSize = 1; continue; }
if (!strcmp(argument, "--adapt")) { adapt = 1; continue; }
if (longCommandWArg(&argument, "--adapt=")) { adapt = 1; if (!parseAdaptParameters(argument, &adaptMin, &adaptMax)) { badusage(programName); CLEAN_RETURN(1); } continue; }
if (!strcmp(argument, "--single-thread")) { nbWorkers = 0; singleThread = 1; continue; }
FIO_setMemLimit(prefs, memLimit);
if (operation==zom_compress) {
#ifndef ZSTD_NOCOMPRESS
+ FIO_setNoContentSize(prefs, noContentSize);
FIO_setNbWorkers(prefs, nbWorkers);
FIO_setBlockSize(prefs, (int)blockSize);
if (g_overlapLog!=OVERLAP_LOG_DEFAULT) FIO_setOverlapLog(prefs, (int)g_overlapLog);