Merge pull request 'ArchiveReader bugfixes & tests for ArchiveReader/ArchiveWriter' (#144) from archive_reader_bugfix into master
Reviewed-on: https://git.madvoxel.net/OpenVulkano/OpenVulkano/pulls/144 Reviewed-by: Georg Hagen <georg.hagen@madvoxel.com>
This commit is contained in:
@@ -57,6 +57,14 @@ namespace OpenVulkano
|
||||
|
||||
bool ArchiveReader::Open(const char* archiveFile)
|
||||
{
|
||||
if (archiveFile[0] == '\0')
|
||||
{
|
||||
if (m_logger)
|
||||
{
|
||||
m_logger->error("Unable to open archive file with an empty name!");
|
||||
}
|
||||
return false;
|
||||
}
|
||||
PrepOpen();
|
||||
ChkErr(archive_read_open_filename(m_archive, archiveFile, BUFFER_SIZE));
|
||||
ReadNextHeader();
|
||||
|
||||
@@ -88,7 +88,7 @@ namespace OpenVulkano
|
||||
else if (archiveResult <= ARCHIVE_FAILED) lvl = spdlog::level::level_enum::err;
|
||||
const char* errorString = archive_error_string(arch);
|
||||
if (logger) logger->log(lvl, errorString ? errorString : "Unknown error while handling archive");
|
||||
if (archiveResult == ARCHIVE_FAILED) throw std::runtime_error(errorString);
|
||||
if (archiveResult == ARCHIVE_FAILED || archiveResult == ARCHIVE_FATAL) throw std::runtime_error(errorString);
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -19,7 +19,7 @@ namespace OpenVulkano
|
||||
std::string path;
|
||||
size_t size;
|
||||
std::filesystem::perms permissions;
|
||||
time_t createTime, modTime;
|
||||
time_t createTime = {}, modTime = {};
|
||||
|
||||
static FileDescription MakeDescriptionForFile(const char* path, size_t size)
|
||||
{
|
||||
|
||||
Reference in New Issue
Block a user