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 f59295c127
commit 0ee3b2b197
634 changed files with 3451 additions and 3350 deletions
+1 -1
View File
@@ -1008,7 +1008,7 @@ static int daE_BU_Delete(e_bu_class* i_this) {
static int useHeapInit(fopAc_ac_c* i_this) {
e_bu_class* a_this = (e_bu_class*)i_this;
a_this->modelMorf = new mDoExt_McaMorfSO((J3DModelData*)dComIfG_getObjectRes("E_BU", 11), NULL, NULL, (J3DAnmTransform*)dComIfG_getObjectRes("E_BU", 7), 2, 1.0f, 0, -1, &a_this->sound, 0x80000, 0x11000084);
a_this->modelMorf = JKR_NEW mDoExt_McaMorfSO((J3DModelData*)dComIfG_getObjectRes("E_BU", 11), NULL, NULL, (J3DAnmTransform*)dComIfG_getObjectRes("E_BU", 7), 2, 1.0f, 0, -1, &a_this->sound, 0x80000, 0x11000084);
if (a_this->modelMorf == NULL || a_this->modelMorf->getModel() == NULL) {
return 0;
}