[pzstd] Fix compilation error in MinGW
This commit is contained in:
parent
52a62e46f5
commit
5aa5aa4df7
@ -13,10 +13,10 @@
|
|||||||
|
|
||||||
namespace pzstd {
|
namespace pzstd {
|
||||||
|
|
||||||
constexpr int ERROR = 1;
|
constexpr int kLogError = 1;
|
||||||
constexpr int INFO = 2;
|
constexpr int kLogInfo = 2;
|
||||||
constexpr int DEBUG = 3;
|
constexpr int kLogDebug = 3;
|
||||||
constexpr int VERBOSE = 4;
|
constexpr int kLogVerbose = 4;
|
||||||
|
|
||||||
class Logger {
|
class Logger {
|
||||||
std::mutex mutex_;
|
std::mutex mutex_;
|
||||||
|
@ -94,12 +94,12 @@ static std::uint64_t handleOneInput(const Options &options,
|
|||||||
if (!options.decompress) {
|
if (!options.decompress) {
|
||||||
double ratio = static_cast<double>(bytesWritten) /
|
double ratio = static_cast<double>(bytesWritten) /
|
||||||
static_cast<double>(bytesRead + !bytesRead);
|
static_cast<double>(bytesRead + !bytesRead);
|
||||||
state.log(INFO, "%-20s :%6.2f%% (%6" PRIu64 " => %6" PRIu64
|
state.log(kLogInfo, "%-20s :%6.2f%% (%6" PRIu64 " => %6" PRIu64
|
||||||
" bytes, %s)\n",
|
" bytes, %s)\n",
|
||||||
inputFileName.c_str(), ratio * 100, bytesRead, bytesWritten,
|
inputFileName.c_str(), ratio * 100, bytesRead, bytesWritten,
|
||||||
outputFileName.c_str());
|
outputFileName.c_str());
|
||||||
} else {
|
} else {
|
||||||
state.log(INFO, "%-20s: %" PRIu64 " bytes \n",
|
state.log(kLogInfo, "%-20s: %" PRIu64 " bytes \n",
|
||||||
inputFileName.c_str(),bytesWritten);
|
inputFileName.c_str(),bytesWritten);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -139,12 +139,12 @@ static FILE *openOutputFile(const Options &options,
|
|||||||
auto outputFd = std::fopen(outputFile.c_str(), "rb");
|
auto outputFd = std::fopen(outputFile.c_str(), "rb");
|
||||||
if (outputFd != nullptr) {
|
if (outputFd != nullptr) {
|
||||||
std::fclose(outputFd);
|
std::fclose(outputFd);
|
||||||
if (!state.log.logsAt(INFO)) {
|
if (!state.log.logsAt(kLogInfo)) {
|
||||||
state.errorHolder.setError("Output file exists");
|
state.errorHolder.setError("Output file exists");
|
||||||
return nullptr;
|
return nullptr;
|
||||||
}
|
}
|
||||||
state.log(
|
state.log(
|
||||||
INFO,
|
kLogInfo,
|
||||||
"pzstd: %s already exists; do you wish to overwrite (y/n) ? ",
|
"pzstd: %s already exists; do you wish to overwrite (y/n) ? ",
|
||||||
outputFile.c_str());
|
outputFile.c_str());
|
||||||
int c = getchar();
|
int c = getchar();
|
||||||
@ -170,7 +170,7 @@ int pzstdMain(const Options &options) {
|
|||||||
auto printErrorGuard = makeScopeGuard([&] {
|
auto printErrorGuard = makeScopeGuard([&] {
|
||||||
if (state.errorHolder.hasError()) {
|
if (state.errorHolder.hasError()) {
|
||||||
returnCode = 1;
|
returnCode = 1;
|
||||||
state.log(ERROR, "pzstd: %s: %s.\n", input.c_str(),
|
state.log(kLogError, "pzstd: %s: %s.\n", input.c_str(),
|
||||||
state.errorHolder.getError().c_str());
|
state.errorHolder.getError().c_str());
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
@ -388,7 +388,7 @@ std::uint64_t asyncCompressChunks(
|
|||||||
// Break the input up into chunks of size `step` and compress each chunk
|
// Break the input up into chunks of size `step` and compress each chunk
|
||||||
// independently.
|
// independently.
|
||||||
size_t step = calculateStep(size, numThreads, params);
|
size_t step = calculateStep(size, numThreads, params);
|
||||||
state.log(DEBUG, "Chosen frame size: %zu\n", step);
|
state.log(kLogDebug, "Chosen frame size: %zu\n", step);
|
||||||
auto status = FileStatus::Continue;
|
auto status = FileStatus::Continue;
|
||||||
while (status == FileStatus::Continue && !state.errorHolder.hasError()) {
|
while (status == FileStatus::Continue && !state.errorHolder.hasError()) {
|
||||||
// Make a new input queue that we will put the chunk's input data into.
|
// Make a new input queue that we will put the chunk's input data into.
|
||||||
@ -403,7 +403,7 @@ std::uint64_t asyncCompressChunks(
|
|||||||
});
|
});
|
||||||
// Pass the output queue to the writer thread.
|
// Pass the output queue to the writer thread.
|
||||||
chunks.push(std::move(out));
|
chunks.push(std::move(out));
|
||||||
state.log(VERBOSE, "%s\n", "Starting a new frame");
|
state.log(kLogVerbose, "%s\n", "Starting a new frame");
|
||||||
// Fill the input queue for the compression job we just started
|
// Fill the input queue for the compression job we just started
|
||||||
status = readData(*in, ZSTD_CStreamInSize(), step, fd, &bytesRead);
|
status = readData(*in, ZSTD_CStreamInSize(), step, fd, &bytesRead);
|
||||||
}
|
}
|
||||||
@ -540,14 +540,14 @@ std::uint64_t asyncDecompressFrames(
|
|||||||
if (frameSize == 0) {
|
if (frameSize == 0) {
|
||||||
// We hit a non SkippableFrame ==> not compressed by pzstd or corrupted
|
// We hit a non SkippableFrame ==> not compressed by pzstd or corrupted
|
||||||
// Pass the rest of the source to this decompression task
|
// Pass the rest of the source to this decompression task
|
||||||
state.log(VERBOSE, "%s\n",
|
state.log(kLogVerbose, "%s\n",
|
||||||
"Input not in pzstd format, falling back to serial decompression");
|
"Input not in pzstd format, falling back to serial decompression");
|
||||||
while (status == FileStatus::Continue && !state.errorHolder.hasError()) {
|
while (status == FileStatus::Continue && !state.errorHolder.hasError()) {
|
||||||
status = readData(*in, chunkSize, chunkSize, fd, &totalBytesRead);
|
status = readData(*in, chunkSize, chunkSize, fd, &totalBytesRead);
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
state.log(VERBOSE, "Decompressing a frame of size %zu", frameSize);
|
state.log(kLogVerbose, "Decompressing a frame of size %zu", frameSize);
|
||||||
// Fill the input queue for the decompression job we just started
|
// Fill the input queue for the decompression job we just started
|
||||||
status = readData(*in, chunkSize, frameSize, fd, &totalBytesRead);
|
status = readData(*in, chunkSize, frameSize, fd, &totalBytesRead);
|
||||||
}
|
}
|
||||||
@ -573,7 +573,7 @@ std::uint64_t writeFile(
|
|||||||
bool decompress) {
|
bool decompress) {
|
||||||
auto& errorHolder = state.errorHolder;
|
auto& errorHolder = state.errorHolder;
|
||||||
auto lineClearGuard = makeScopeGuard([&state] {
|
auto lineClearGuard = makeScopeGuard([&state] {
|
||||||
state.log.clear(INFO);
|
state.log.clear(kLogInfo);
|
||||||
});
|
});
|
||||||
std::uint64_t bytesWritten = 0;
|
std::uint64_t bytesWritten = 0;
|
||||||
std::shared_ptr<BufferWorkQueue> out;
|
std::shared_ptr<BufferWorkQueue> out;
|
||||||
@ -602,7 +602,7 @@ std::uint64_t writeFile(
|
|||||||
return bytesWritten;
|
return bytesWritten;
|
||||||
}
|
}
|
||||||
bytesWritten += buffer.size();
|
bytesWritten += buffer.size();
|
||||||
state.log.update(INFO, "Written: %u MB ",
|
state.log.update(kLogInfo, "Written: %u MB ",
|
||||||
static_cast<std::uint32_t>(bytesWritten >> 20));
|
static_cast<std::uint32_t>(bytesWritten >> 20));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -41,7 +41,7 @@ class SharedState {
|
|||||||
auto parameters = options.determineParameters();
|
auto parameters = options.determineParameters();
|
||||||
cStreamPool.reset(new ResourcePool<ZSTD_CStream>{
|
cStreamPool.reset(new ResourcePool<ZSTD_CStream>{
|
||||||
[this, parameters]() -> ZSTD_CStream* {
|
[this, parameters]() -> ZSTD_CStream* {
|
||||||
this->log(VERBOSE, "%s\n", "Creating new ZSTD_CStream");
|
this->log(kLogVerbose, "%s\n", "Creating new ZSTD_CStream");
|
||||||
auto zcs = ZSTD_createCStream();
|
auto zcs = ZSTD_createCStream();
|
||||||
if (zcs) {
|
if (zcs) {
|
||||||
auto err = ZSTD_initCStream_advanced(
|
auto err = ZSTD_initCStream_advanced(
|
||||||
@ -59,7 +59,7 @@ class SharedState {
|
|||||||
} else {
|
} else {
|
||||||
dStreamPool.reset(new ResourcePool<ZSTD_DStream>{
|
dStreamPool.reset(new ResourcePool<ZSTD_DStream>{
|
||||||
[this]() -> ZSTD_DStream* {
|
[this]() -> ZSTD_DStream* {
|
||||||
this->log(VERBOSE, "%s\n", "Creating new ZSTD_DStream");
|
this->log(kLogVerbose, "%s\n", "Creating new ZSTD_DStream");
|
||||||
auto zds = ZSTD_createDStream();
|
auto zds = ZSTD_createDStream();
|
||||||
if (zds) {
|
if (zds) {
|
||||||
auto err = ZSTD_initDStream(zds);
|
auto err = ZSTD_initDStream(zds);
|
||||||
|
Loading…
x
Reference in New Issue
Block a user