Linux unlink implementation (#1347)
Some checks are pending
Build and Release / reuse (push) Waiting to run
Build and Release / clang-format (push) Waiting to run
Build and Release / get-info (push) Waiting to run
Build and Release / windows-sdl (push) Blocked by required conditions
Build and Release / windows-qt (push) Blocked by required conditions
Build and Release / macos-sdl (push) Blocked by required conditions
Build and Release / macos-qt (push) Blocked by required conditions
Build and Release / linux-sdl (push) Blocked by required conditions
Build and Release / linux-qt (push) Blocked by required conditions
Build and Release / pre-release (push) Blocked by required conditions

This commit is contained in:
Lander Gallastegi 2024-10-11 20:45:26 +02:00 committed by GitHub
parent 87a76af86f
commit b412cb4cca
No known key found for this signature in database
GPG key ID: B5690EEEBB952194

View file

@ -231,7 +231,7 @@ void IOFile::Unlink() {
// Mark the file for deletion // Mark the file for deletion
// TODO: Also remove the file path? // TODO: Also remove the file path?
#if _WIN64 #ifdef _WIN64
FILE_DISPOSITION_INFORMATION disposition; FILE_DISPOSITION_INFORMATION disposition;
IO_STATUS_BLOCK iosb; IO_STATUS_BLOCK iosb;
@ -242,7 +242,11 @@ void IOFile::Unlink() {
NtSetInformationFile(hfile, &iosb, &disposition, sizeof(disposition), NtSetInformationFile(hfile, &iosb, &disposition, sizeof(disposition),
FileDispositionInformation); FileDispositionInformation);
#else #else
UNREACHABLE_MSG("Missing Linux implementation"); if (unlink(file_path.c_str()) != 0) {
const auto ec = std::error_code{errno, std::generic_category()};
LOG_ERROR(Common_Filesystem, "Failed to unlink the file at path={}, ec_message={}",
PathToUTF8String(file_path), ec.message());
}
#endif #endif
} }