Initialize UBSAN mismatch data without relying on memset()
Some checks failed
Builds / ExectOS (amd64) (push) Failing after -59m51s
Builds / ExectOS (i686) (push) Failing after 21s

This commit is contained in:
Aiken Harris 2025-07-09 10:40:15 +02:00 committed by CodingWorkshop Signing Team
parent 6729d72322
commit dcb0b8fb4b
Signed by: CodingWorkshop Signing Team
GPG Key ID: 6DC88369C82795D2

View File

@ -1035,13 +1035,13 @@ VOID
__ubsan_handle_type_mismatch_v1(IN PKUBSAN_TYPE_MISMATCH_DATA_V1 Data,
IN ULONG_PTR Pointer)
{
KUBSAN_TYPE_MISMATCH_DATA MismatchData;
/* Prepare UBSAN type mismatch data in old format */
KUBSAN_TYPE_MISMATCH_DATA MismatchData = {
.Location = Data->Location,
.Type = Data->Type,
.Alignment = 1UL << Data->LogAlignment,
.TypeCheckKind = Data->TypeCheckKind,
};
MismatchData.Alignment = 1UL << Data->LogAlignment;
MismatchData.Location = Data->Location;
MismatchData.Type = Data->Type;
MismatchData.TypeCheckKind = Data->TypeCheckKind;
/* Call UBSAN type mismatch handler */
KepHandleUbsanTypeMismatch(&MismatchData, Pointer);