fix for linux building

This commit is contained in:
gb 2023-11-20 15:13:19 +08:00
parent 6ea26c7b80
commit 080f617442
2 changed files with 3 additions and 41 deletions

View File

@ -8,7 +8,8 @@ aux_source_directory(${PROJECT_SOURCE_DIR} DIR_SRCS)
file(GLOB DIR_HEADS "${PROJECT_SOURCE_DIR}/*.h" "${PROJECT_SOURCE_DIR}/*.hpp"
"${PROJECT_SOURCE_DIR}/user-opt/*.h" "${PROJECT_SOURCE_DIR}/user-opt/*.cpp"
"${PROJECT_SOURCE_DIR}/imgproc-pak/*.h" "${PROJECT_SOURCE_DIR}/imgproc-pak/*.cpp"
"${PROJECT_SOURCE_DIR}/../../sdk/hginclude/*.h" "${PROJECT_SOURCE_DIR}/../../sdk/hginclude/*.cpp"
"${PROJECT_SOURCE_DIR}/scanner/*.h" "${PROJECT_SOURCE_DIR}/scanner/*.cpp"
"${PROJECT_SOURCE_DIR}/../../sdk/base/*.h" "${PROJECT_SOURCE_DIR}/../../sdk/base/*.cpp"
"${PROJECT_SOURCE_DIR}/../../sdk/json/*.h" "${PROJECT_SOURCE_DIR}/../../sdk/json/*.c*"
"${PROJECT_SOURCE_DIR}/../../sdk/imgprc/*.h" "${PROJECT_SOURCE_DIR}/../../sdk/imgprc/*.c*"
"${PROJECT_SOURCE_DIR}/../../sdk/sane_opt_json/*.h" "${PROJECT_SOURCE_DIR}/../../sdk/sane_opt_json/*.c*"

View File

@ -4,46 +4,7 @@
#include <string.h>
#if defined(WIN32) || defined(_WIN64)
#include <Windows.h>
namespace sys_util
{
int get_disk_size(const char* path, uint64_t* total, uint64_t* avail, uint64_t* blocksize)
{
std::string disk(path);
size_t pos = disk.find("\\");
DWORD spc = 0, bps = 0, avc = 0, tot = 0;
if (pos++ != std::string::npos)
disk.erase(pos);
if (GetDiskFreeSpaceA(disk.c_str(), &spc, &bps, &avc, &tot))
{
if (total)
{
*total = tot;
*total *= bps * spc;
}
if (avail)
{
*avail = avc;
*avail *= bps * spc;
}
if (blocksize)
{
*blocksize = bps;
*blocksize *= spc;
}
return 0;
}
else
{
return GetLastError();
}
}
}
#else
#include "common/sys_util.h"
#include <sys/fcntl.h>
#include <unistd.h>
#endif
@ -199,7 +160,7 @@ int file_saver::open(const char* path, uint64_t size, const char* check)
{
uint64_t space = 0;
err = sys_util::get_disk_size(path, nullptr, &space, nullptr);
err = utils::get_disk_space(path, nullptr, &space, nullptr);
if (err || space < size * 1.5)
{
fclose(dst_);