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
@@ -526,7 +526,7 @@ JAIAudible* Z2Audience::newAudible(const JGeometry::TVec3<f32>& pos, JAISoundID
JAUAudibleParam params = Z2GetSoundInfo()->getAudibleSwFull(soundID);
bool x = params.field_0x0.bytes.b0_0 != 0;
Z2Audible* audible = new Z2Audible(pos, param_2, channelNum, x);
Z2Audible* audible = JKR_NEW Z2Audible(pos, param_2, channelNum, x);
if (audible == NULL) {
return NULL;
}
@@ -552,7 +552,7 @@ JAIAudible* Z2Audience::newAudible(const JGeometry::TVec3<f32>& pos, JAISoundID
}
void Z2Audience::deleteAudible(JAIAudible* audible) {
delete audible;
JKR_DELETE(audible);
}
Z2Audible::~Z2Audible() {}