From ab4648d3ca38c68579a72b2260dfbea81e26730f Mon Sep 17 00:00:00 2001 From: Lioncash Date: Tue, 19 Aug 2014 00:20:56 -0400 Subject: [PATCH] Core: Use std::array for managing kernel object space These avoid relying on memset for clearing the arrays. --- src/core/hle/kernel/kernel.cpp | 3 +-- src/core/hle/kernel/kernel.h | 7 ++++--- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/src/core/hle/kernel/kernel.cpp b/src/core/hle/kernel/kernel.cpp index 96bc63a53a..a4a2588756 100644 --- a/src/core/hle/kernel/kernel.cpp +++ b/src/core/hle/kernel/kernel.cpp @@ -17,7 +17,6 @@ Handle g_main_thread = 0; ObjectPool g_object_pool; ObjectPool::ObjectPool() { - memset(occupied, 0, sizeof(bool) * MAX_COUNT); next_id = INITIAL_NEXT_ID; } @@ -57,7 +56,7 @@ void ObjectPool::Clear() { delete pool[i]; occupied[i] = false; } - memset(pool, 0, sizeof(Object*)*MAX_COUNT); + pool.fill(nullptr); next_id = INITIAL_NEXT_ID; } diff --git a/src/core/hle/kernel/kernel.h b/src/core/hle/kernel/kernel.h index 6a2e395ed6..0e7e5ff68a 100644 --- a/src/core/hle/kernel/kernel.h +++ b/src/core/hle/kernel/kernel.h @@ -4,6 +4,7 @@ #pragma once +#include #include #include "common/common.h" @@ -160,9 +161,9 @@ private: INITIAL_NEXT_ID = 0x10, }; - Object* pool[MAX_COUNT]; - bool occupied[MAX_COUNT]; - int next_id; + std::array pool; + std::array occupied; + int next_id; }; extern ObjectPool g_object_pool;