From 2c5c99ec71e808679ac4763f82ad876f440e0b2c Mon Sep 17 00:00:00 2001 From: Lioncash Date: Tue, 15 Sep 2015 12:13:13 -0400 Subject: [PATCH] Common: Get rid of a few pointer casts --- Source/Core/Common/LinearDiskCache.h | 9 +++++---- Source/Core/Common/x64CPUDetect.cpp | 6 +++--- 2 files changed, 8 insertions(+), 7 deletions(-) diff --git a/Source/Core/Common/LinearDiskCache.h b/Source/Core/Common/LinearDiskCache.h index 6b71508969..a00eb7ab37 100644 --- a/Source/Core/Common/LinearDiskCache.h +++ b/Source/Core/Common/LinearDiskCache.h @@ -170,14 +170,15 @@ private: struct Header { Header() - : id(*(u32*)"DCAC") - , key_t_size(sizeof(K)) + : key_t_size(sizeof(K)) , value_t_size(sizeof(V)) { - memcpy(ver, scm_rev_git_str, 40); + // Null-terminator is intentionally not copied. + std::memcpy(&id, "DCAC", sizeof(u32)); + std::memcpy(ver, scm_rev_git_str, 40); } - const u32 id; + u32 id; const u16 key_t_size, value_t_size; char ver[40]; diff --git a/Source/Core/Common/x64CPUDetect.cpp b/Source/Core/Common/x64CPUDetect.cpp index 8bce493b5a..23b279dbb8 100644 --- a/Source/Core/Common/x64CPUDetect.cpp +++ b/Source/Core/Common/x64CPUDetect.cpp @@ -82,9 +82,9 @@ void CPUInfo::Detect() // Detect CPU's CPUID capabilities, and grab CPU string __cpuid(cpu_id, 0x00000000); u32 max_std_fn = cpu_id[0]; // EAX - *((int *)brand_string) = cpu_id[1]; - *((int *)(brand_string + 4)) = cpu_id[3]; - *((int *)(brand_string + 8)) = cpu_id[2]; + std::memcpy(&brand_string[0], &cpu_id[1], sizeof(int)); + std::memcpy(&brand_string[4], &cpu_id[3], sizeof(int)); + std::memcpy(&brand_string[8], &cpu_id[2], sizeof(int)); __cpuid(cpu_id, 0x80000000); u32 max_ex_fn = cpu_id[0]; if (!strcmp(brand_string, "GenuineIntel"))