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
+2 -2
View File
@@ -110,7 +110,7 @@ static int useHeapInit(fopAc_ac_c* i_this) {
obj_ki_class* _this = static_cast<obj_ki_class*>(i_this);
_this->mpMorf =
new mDoExt_McaMorf((J3DModelData*)dComIfG_getObjectRes("Obj_Ki", ki_bmd[_this->mBmdIdx]),
JKR_NEW mDoExt_McaMorf((J3DModelData*)dComIfG_getObjectRes("Obj_Ki", ki_bmd[_this->mBmdIdx]),
NULL, NULL, NULL, 0, 1.0f, 0, -1, 1, NULL, 0x80000, 0x11000084);
if (_this->mpMorf == NULL || _this->mpMorf->getModel() == NULL) {
return 0;
@@ -125,7 +125,7 @@ static int useHeapInit(fopAc_ac_c* i_this) {
model->getModelData()->getJointNodePointer(i)->setCallBack(nodeCallBack);
}
_this->mpBgW = new dBgW();
_this->mpBgW = JKR_NEW dBgW();
if (_this->mpBgW == NULL) {
return 0;
}