mirror of
https://github.com/TwilitRealm/dusklight
synced 2026-08-14 19:59:45 -04:00
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:
+16
-16
@@ -23,7 +23,7 @@ dMsgScrnJimaku_c::dMsgScrnJimaku_c(u8 param_0, JKRExpHeap* i_heap) {
|
||||
|
||||
init();
|
||||
|
||||
mpScreen = new J2DScreen();
|
||||
mpScreen = JKR_NEW J2DScreen();
|
||||
JUT_ASSERT(0, mpScreen != NULL);
|
||||
|
||||
bool fg = mpScreen->setPriority("zelda_jimaku_message_text.blo", 0x20000,
|
||||
@@ -31,7 +31,7 @@ dMsgScrnJimaku_c::dMsgScrnJimaku_c(u8 param_0, JKRExpHeap* i_heap) {
|
||||
JUT_ASSERT(0, fg != false);
|
||||
dPaneClass_showNullPane(mpScreen);
|
||||
|
||||
mpLight_c = new dMsgScrnLight_c(0, param_0);
|
||||
mpLight_c = JKR_NEW dMsgScrnLight_c(0, param_0);
|
||||
JUT_ASSERT(0, mpLight_c != NULL);
|
||||
|
||||
void* mpBuf = heap->alloc(0x106A, 0x20);
|
||||
@@ -39,7 +39,7 @@ dMsgScrnJimaku_c::dMsgScrnJimaku_c(u8 param_0, JKRExpHeap* i_heap) {
|
||||
memset(mpBuf, 0, 0x106A);
|
||||
mCharInfoPtr = (CharInfo_c*)mpBuf;
|
||||
|
||||
mpPmP_c = new CPaneMgr(mpScreen, MULTI_CHAR('mg_null'), 3, NULL);
|
||||
mpPmP_c = JKR_NEW CPaneMgr(mpScreen, MULTI_CHAR('mg_null'), 3, NULL);
|
||||
JUT_ASSERT(0, mpPmP_c != NULL);
|
||||
mpPmP_c->scale(g_MsgObject_HIO_c.mSubtitleScaleX, g_MsgObject_HIO_c.mSubtitleScaleY);
|
||||
field_0xcc = g_MsgObject_HIO_c.mBoxPos[0][5];
|
||||
@@ -47,28 +47,28 @@ dMsgScrnJimaku_c::dMsgScrnJimaku_c(u8 param_0, JKRExpHeap* i_heap) {
|
||||
|
||||
#if VERSION == VERSION_GCN_JPN
|
||||
if (dComIfGs_getOptRuby() == 0) {
|
||||
mpTm_c[0] = new CPaneMgr(mpScreen, MULTI_CHAR('mg_3flin'), 0, NULL);
|
||||
mpTm_c[1] = new CPaneMgr(mpScreen, MULTI_CHAR('t3f_s'), 0, NULL);
|
||||
mpTm_c[0] = JKR_NEW CPaneMgr(mpScreen, MULTI_CHAR('mg_3flin'), 0, NULL);
|
||||
mpTm_c[1] = JKR_NEW CPaneMgr(mpScreen, MULTI_CHAR('t3f_s'), 0, NULL);
|
||||
|
||||
mpTmr_c[0] = new CPaneMgr(mpScreen, MULTI_CHAR('mg_3f'), 0, NULL);
|
||||
mpTmr_c[1] = new CPaneMgr(mpScreen, MULTI_CHAR('mg_3f_s'), 0, NULL);
|
||||
mpTmr_c[0] = JKR_NEW CPaneMgr(mpScreen, MULTI_CHAR('mg_3f'), 0, NULL);
|
||||
mpTmr_c[1] = JKR_NEW CPaneMgr(mpScreen, MULTI_CHAR('mg_3f_s'), 0, NULL);
|
||||
|
||||
mpScreen->search(MULTI_CHAR('n_3line'))->hide();
|
||||
mpScreen->search(MULTI_CHAR('n_3fline'))->show();
|
||||
mpScreen->search(MULTI_CHAR('n_e4line'))->hide();
|
||||
} else {
|
||||
mpTm_c[0] = new CPaneMgr(mpScreen, MULTI_CHAR('mg_3line'), 0, NULL);
|
||||
mpTm_c[1] = new CPaneMgr(mpScreen, 't3_s', 0, NULL);
|
||||
mpTm_c[0] = JKR_NEW CPaneMgr(mpScreen, MULTI_CHAR('mg_3line'), 0, NULL);
|
||||
mpTm_c[1] = JKR_NEW CPaneMgr(mpScreen, 't3_s', 0, NULL);
|
||||
|
||||
mpScreen->search(MULTI_CHAR('n_3line'))->show();
|
||||
mpScreen->search(MULTI_CHAR('n_3fline'))->hide();
|
||||
mpScreen->search(MULTI_CHAR('n_e4line'))->hide();
|
||||
}
|
||||
#else
|
||||
mpTm_c[0] = new CPaneMgr(mpScreen, MULTI_CHAR('mg_e4lin'), 0, NULL);
|
||||
mpTm_c[0] = JKR_NEW CPaneMgr(mpScreen, MULTI_CHAR('mg_e4lin'), 0, NULL);
|
||||
JUT_ASSERT(0, mpTm_c[0] != NULL);
|
||||
|
||||
mpTm_c[1] = new CPaneMgr(mpScreen, 't4_s', 0, NULL);
|
||||
mpTm_c[1] = JKR_NEW CPaneMgr(mpScreen, 't4_s', 0, NULL);
|
||||
JUT_ASSERT(0, mpTm_c[1] != NULL);
|
||||
|
||||
mpScreen->search(MULTI_CHAR('n_3line'))->hide();
|
||||
@@ -129,10 +129,10 @@ dMsgScrnJimaku_c::dMsgScrnJimaku_c(u8 param_0, JKRExpHeap* i_heap) {
|
||||
}
|
||||
|
||||
dMsgScrnJimaku_c::~dMsgScrnJimaku_c() {
|
||||
delete mpScreen;
|
||||
JKR_DELETE(mpScreen);
|
||||
mpScreen = NULL;
|
||||
|
||||
delete mpLight_c;
|
||||
JKR_DELETE(mpLight_c);
|
||||
mpLight_c = NULL;
|
||||
|
||||
if (mCharInfoPtr != NULL) {
|
||||
@@ -140,15 +140,15 @@ dMsgScrnJimaku_c::~dMsgScrnJimaku_c() {
|
||||
mCharInfoPtr = NULL;
|
||||
}
|
||||
|
||||
delete mpPmP_c;
|
||||
JKR_DELETE(mpPmP_c);
|
||||
mpPmP_c = NULL;
|
||||
|
||||
for (int i = 0; i < 2; i++) {
|
||||
delete mpTm_c[i];
|
||||
JKR_DELETE(mpTm_c[i]);
|
||||
mpTm_c[i] = NULL;
|
||||
|
||||
if (mpTmr_c[i] != NULL) {
|
||||
delete mpTmr_c[i];
|
||||
JKR_DELETE(mpTmr_c[i]);
|
||||
mpTmr_c[i] = NULL;
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user