From 3d1de11a9fd5fde8a1584d0bd855dc06298dedb2 Mon Sep 17 00:00:00 2001 From: RadWolfie Date: Tue, 5 Feb 2019 02:01:53 -0600 Subject: [PATCH 1/2] Fixed macro bug for pointer Before: 0x0000000x0AFEF598 Now: 0x0AFEF598 --- src/common/Logging.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/common/Logging.h b/src/common/Logging.h index 893d828f7..45a869bc7 100644 --- a/src/common/Logging.h +++ b/src/common/Logging.h @@ -508,7 +508,7 @@ hexstring32(std::basic_ostream<_CharT, _Traits>&os) #define LOGRENDER(Type) \ LOGRENDER_HEADER_BY_PTR(Type) \ { \ - os << hexstring32 << (void*)(value); \ + os << hexstring32 << reinterpret_cast(value); \ if (value) \ os << " -> "#Type"* {" << *value << "}"; \ \ From ff4da755245e21e5bc2703a4b15802c0f335df16 Mon Sep 17 00:00:00 2001 From: RadWolfie Date: Tue, 5 Feb 2019 02:36:37 -0600 Subject: [PATCH 2/2] Remove duplicate code ENUM2STR_CASE_DEF is exactly the same as ENUM2STR_CASE Since ENUM2STR_CASE is being used as primary, no longer need a reason to have duplicate maco method. --- src/common/Logging.h | 2 -- src/core/kernel/exports/EmuKrnlLogging.cpp | 24 +++++++++++----------- 2 files changed, 12 insertions(+), 14 deletions(-) diff --git a/src/common/Logging.h b/src/common/Logging.h index 45a869bc7..8cd553f3d 100644 --- a/src/common/Logging.h +++ b/src/common/Logging.h @@ -457,8 +457,6 @@ extern thread_local std::string _logThreadPrefix; #define ENUM2STR_HEADER(EnumType) extern TYPE2PCHAR_HEADER(EnumType); LOGRENDER_HEADER_BY_REF(EnumType); #define ENUM2STR_START(EnumType) TYPE2PCHAR_HEADER(EnumType) { switch (value) { #define ENUM2STR_CASE(a) case a: return #a; -// ENUM2STR_CASE_DEF is needed for #define'd symbols -#define ENUM2STR_CASE_DEF(a) case a: return #a; #define ENUM2STR_END(EnumType) default: return "Unknown_"#EnumType; } } #define ENUM2STR_END_and_LOGRENDER(EnumType) ENUM2STR_END(EnumType) LOGRENDER_TYPE(EnumType) diff --git a/src/core/kernel/exports/EmuKrnlLogging.cpp b/src/core/kernel/exports/EmuKrnlLogging.cpp index 941b2290a..ed08390d8 100644 --- a/src/core/kernel/exports/EmuKrnlLogging.cpp +++ b/src/core/kernel/exports/EmuKrnlLogging.cpp @@ -122,12 +122,12 @@ ENUM2STR_START(BUS_DATA_TYPE) ENUM2STR_END_and_LOGRENDER(BUS_DATA_TYPE) ENUM2STR_START(CREATE_DISPOSITION) - ENUM2STR_CASE_DEF(FILE_SUPERSEDE) - ENUM2STR_CASE_DEF(FILE_OPEN) - ENUM2STR_CASE_DEF(FILE_CREATE) - ENUM2STR_CASE_DEF(FILE_OPEN_IF) - ENUM2STR_CASE_DEF(FILE_OVERWRITE) - ENUM2STR_CASE_DEF(FILE_OVERWRITE_IF) + ENUM2STR_CASE(FILE_SUPERSEDE) + ENUM2STR_CASE(FILE_OPEN) + ENUM2STR_CASE(FILE_CREATE) + ENUM2STR_CASE(FILE_OPEN_IF) + ENUM2STR_CASE(FILE_OVERWRITE) + ENUM2STR_CASE(FILE_OVERWRITE_IF) // ENUM2STR_CASE_DEF(FILE_MAXIMUM_DISPOSITION) Skip, identical to FILE_OVERWRITE_IF ENUM2STR_END_and_LOGRENDER(CREATE_DISPOSITION) @@ -239,12 +239,12 @@ ENUM2STR_START(KINTERRUPT_MODE) ENUM2STR_END_and_LOGRENDER(KINTERRUPT_MODE) ENUM2STR_START(KIRQL_TYPE) - ENUM2STR_CASE_DEF(PASSIVE_LEVEL) - ENUM2STR_CASE_DEF(APC_LEVEL) - ENUM2STR_CASE_DEF(DISPATCH_LEVEL) - ENUM2STR_CASE_DEF(PROFILE_LEVEL) - ENUM2STR_CASE_DEF(SYNC_LEVEL) - ENUM2STR_CASE_DEF(HIGH_LEVEL) + ENUM2STR_CASE(PASSIVE_LEVEL) + ENUM2STR_CASE(APC_LEVEL) + ENUM2STR_CASE(DISPATCH_LEVEL) + ENUM2STR_CASE(PROFILE_LEVEL) + ENUM2STR_CASE(SYNC_LEVEL) + ENUM2STR_CASE(HIGH_LEVEL) ENUM2STR_END_and_LOGRENDER(KIRQL_TYPE) ENUM2STR_START(KWAIT_REASON)