Isolate JKRHeap operator overloads

Fixes #25

This isolates the JKRHeap operator new/delete overloads. Every single new/delete site in the code has been replaced with a macro.

Sadly for new[] and delete[] we have to keep global operators. The global new[] just allocates into malloc() however, and delete[] goes into free() if it's not in a JKRHeap. So that's fine.
This commit is contained in:
PJB3005
2026-02-27 23:11:59 +01:00
parent 2204ad0813
commit 038ef4216f
634 changed files with 3451 additions and 3350 deletions
+6 -6
View File
@@ -126,7 +126,7 @@ dMsgScrnLight_c::dMsgScrnLight_c(u8 i_colorType, u8 param_1) {
g_MsgScrnLight_HIO_c.updateColor(i_colorType);
mpScreen = new J2DScreen();
mpScreen = JKR_NEW J2DScreen();
JUT_ASSERT(0, mpScreen != NULL);
bool fg = mpScreen->setPriority("zelda_message_window_text_light.blo", 0x20000,
dComIfGp_getMain2DArchive());
@@ -143,7 +143,7 @@ dMsgScrnLight_c::dMsgScrnLight_c(u8 i_colorType, u8 param_1) {
mpBpk->searchUpdateMaterialID(mpScreen);
mBpkFrame = 0.0f;
mpParent_c = new CPaneMgr(mpScreen, MULTI_CHAR('moya00'), 0, NULL);
mpParent_c = JKR_NEW CPaneMgr(mpScreen, MULTI_CHAR('moya00'), 0, NULL);
JUT_ASSERT(0, mpParent_c != NULL);
mpParent_c->getPanePtr()->setAnimation(mpBck);
@@ -155,16 +155,16 @@ dMsgScrnLight_c::dMsgScrnLight_c(u8 i_colorType, u8 param_1) {
dMsgScrnLight_c::~dMsgScrnLight_c() {
l_lightCount--;
delete mpScreen;
JKR_DELETE(mpScreen);
mpScreen = NULL;
delete mpBck;
JKR_DELETE(mpBck);
mpBck = NULL;
delete mpBpk;
JKR_DELETE(mpBpk);
mpBpk = NULL;
delete mpParent_c;
JKR_DELETE(mpParent_c);
mpParent_c = NULL;
}