mirror of
https://github.com/TwilitRealm/dusklight
synced 2026-07-28 06:57:02 -04:00
Fix multiple classes being inappropriately zero-initialized via JKR_NEW* (#70)
This might also fix #71 and #72.
This commit is contained in:
@@ -23,7 +23,7 @@ SpkSystem::SpkSystem(JKRHeap* heap) : JASGlobalInstance(true) {
|
||||
mHeap = heap;
|
||||
mMixingBuffer = JKR_NEW_ARGS (heap, 0) SpkMixingBuffer(heap);
|
||||
JUT_ASSERT(35, mMixingBuffer);
|
||||
mSoundHolder = JKR_NEW_ARGS (heap, 0) SpkSoundHolder();
|
||||
mSoundHolder = JKR_NEW_ARGS (heap, 0) SpkSoundHolder;
|
||||
JUT_ASSERT(38, mSoundHolder);
|
||||
SpkSpeakerCtrl::setup();
|
||||
SpkSpeakerCtrl::setMixingBuffer(mMixingBuffer);
|
||||
|
||||
@@ -43,27 +43,27 @@ void Z2DebugSys::initJAW() {
|
||||
JKRSetCurrentHeap(heap);
|
||||
u32 local_50 = heap->getFreeSize();
|
||||
soundPlayer = JKR_NEW_ARGS (heap, 0) Z2SoundPlayer("GC-Zelda2");
|
||||
sysMemView = JKR_NEW_ARGS (heap, 0) JAWSysMemView();
|
||||
bankView = JKR_NEW_ARGS (heap, 0) JAWBankView();
|
||||
chView = JKR_NEW_ARGS (heap, 0) JAWChView();
|
||||
sysMemView = JKR_NEW_ARGS (heap, 0) JAWSysMemView;
|
||||
bankView = JKR_NEW_ARGS (heap, 0) JAWBankView;
|
||||
chView = JKR_NEW_ARGS (heap, 0) JAWChView;
|
||||
trackView = JKR_NEW_ARGS (heap, 0) Z2TrackView(0, Z2TrackView::DISPMODE0);
|
||||
reportView = JKR_NEW_ARGS (heap, 0) JAWReportView();
|
||||
reportView = JKR_NEW_ARGS (heap, 0) JAWReportView;
|
||||
JASReportInit(heap, 500);
|
||||
hioBankEdit = JKR_NEW_ARGS (heap, 0) JAWHioBankEdit();
|
||||
waveArcLoader = JKR_NEW_ARGS (heap, 0) Z2WaveArcLoader();
|
||||
hioBankEdit = JKR_NEW_ARGS (heap, 0) JAWHioBankEdit;
|
||||
waveArcLoader = JKR_NEW_ARGS (heap, 0) Z2WaveArcLoader;
|
||||
volume = JKR_NEW_ARGS (heap, 0) JAWVolume(90, 480);
|
||||
playSeView = JKR_NEW_ARGS (heap, 0) Z2PlaySeView();
|
||||
audSettingView = JKR_NEW_ARGS (heap, 0) Z2AudSettingView();
|
||||
dspCheck = JKR_NEW_ARGS (heap, 0) Z2DSPCheck();
|
||||
playSeView = JKR_NEW_ARGS (heap, 0) Z2PlaySeView;
|
||||
audSettingView = JKR_NEW_ARGS (heap, 0) Z2AudSettingView;
|
||||
dspCheck = JKR_NEW_ARGS (heap, 0) Z2DSPCheck;
|
||||
JAWExtSystem::registWindow(1, soundPlayer, 10, 22);
|
||||
entrySeView = JKR_NEW_ARGS (heap, 0) Z2EntrySeView();
|
||||
entrySeView = JKR_NEW_ARGS (heap, 0) Z2EntrySeView;
|
||||
JAWExtSystem::registWindow(2, entrySeView, 10, 22);
|
||||
JAWExtSystem::registWindow(3, playSeView, 10, 22);
|
||||
JAWExtSystem::registWindow(4, sysMemView, 10, 22);
|
||||
JAWExtSystem::registWindow(5, bankView, 10, 22);
|
||||
JAWExtSystem::registWindow(6, chView, 10, 22);
|
||||
JAWExtSystem::registWindow(7, trackView, 10, 22);
|
||||
playerChView = JKR_NEW_ARGS (heap, 0) JAWPlayerChView();
|
||||
playerChView = JKR_NEW_ARGS (heap, 0) JAWPlayerChView;
|
||||
JAWExtSystem::registWindow(8, playerChView, 10, 22);
|
||||
JAWExtSystem::registWindow(11, reportView, 330, 0);
|
||||
JAWExtSystem::registWindow(12, hioBankEdit, 10, 0);
|
||||
@@ -85,16 +85,16 @@ void Z2DebugSys::initSoundHioNode() {
|
||||
JAHSingletonBase<JAHioMgr>::getIns()->init_OnGame();
|
||||
JAHSingletonBase<JAHioMgr>::getIns()->appendRootNode(&mDoHIO_root, soundRoot);
|
||||
mDoHIO_createChild("サウンド", soundRoot);
|
||||
JAHSoundPlayerNode* soundPlayerNode = JKR_NEW_ARGS (heap, 0) JAHSoundPlayerNode();
|
||||
JAHSoundPlayerNode* soundPlayerNode = JKR_NEW_ARGS (heap, 0) JAHSoundPlayerNode;
|
||||
JUT_ASSERT(258, soundPlayerNode);
|
||||
soundRoot->appendNode(soundPlayerNode, NULL);
|
||||
Z2ParamNode* paramNode = JKR_NEW_ARGS (heap, 0) Z2ParamNode();
|
||||
Z2ParamNode* paramNode = JKR_NEW_ARGS (heap, 0) Z2ParamNode;
|
||||
JUT_ASSERT(262, paramNode);
|
||||
soundRoot->appendNode(paramNode, NULL);
|
||||
Z2FxLineEditNode* fxNode = JKR_NEW_ARGS (heap, 0) Z2FxLineEditNode(heap);
|
||||
JUT_ASSERT(267, fxNode);
|
||||
soundRoot->appendNode(fxNode, NULL);
|
||||
Z2F1SwingTestNode* f1TestWin = JKR_NEW_ARGS (heap, 0) Z2F1SwingTestNode();
|
||||
Z2F1SwingTestNode* f1TestWin = JKR_NEW_ARGS (heap, 0) Z2F1SwingTestNode;
|
||||
JUT_ASSERT(284, f1TestWin);
|
||||
soundRoot->appendNode(f1TestWin, NULL);
|
||||
JAWExtSystem::registWindow(10, f1TestWin, 10, 22);
|
||||
@@ -111,7 +111,7 @@ JAISeqDataMgr* Z2DebugSys::initSeSeqDataMgr(const void* param_1) {
|
||||
JKRExpHeap* heap = mDoExt_getGameHeap();
|
||||
JKRSetCurrentHeap(heap);
|
||||
s32 freeSize = heap->getFreeSize();
|
||||
JAWHioReceiver* receiver = JKR_NEW_ARGS (heap, 0) JAWHioReceiver();
|
||||
JAWHioReceiver* receiver = JKR_NEW_ARGS (heap, 0) JAWHioReceiver;
|
||||
JAWExtSystem::registWindow(0, receiver, 10, 22);
|
||||
seqDataMgr = JKR_NEW_ARGS (heap, 0) Z2HioSeSeqDataMgr(param_1, receiver);
|
||||
JKRSetCurrentHeap(oldHeap);
|
||||
|
||||
@@ -8,7 +8,7 @@
|
||||
static const char l_arcName[] = "Always";
|
||||
|
||||
int dkWpillar_c::create() {
|
||||
JKR_NEW_ARGS (this) dkWpillar_c();
|
||||
JKR_NEW_ARGS (this) dkWpillar_c;
|
||||
|
||||
int roomNo;
|
||||
u8 envrOverride;
|
||||
|
||||
@@ -1229,7 +1229,7 @@ void dKyr_housi_move() {
|
||||
|
||||
void dKyr_snow_init() {
|
||||
camera_class* camera = (camera_class*)dComIfGp_getCamera(0);
|
||||
g_env_light.mpSnowPacket = JKR_NEW_ARGS (32) dKankyo_snow_Packet();
|
||||
g_env_light.mpSnowPacket = JKR_NEW_ARGS (32) dKankyo_snow_Packet;
|
||||
|
||||
if (g_env_light.mpSnowPacket == NULL) {
|
||||
return;
|
||||
@@ -1523,7 +1523,7 @@ void dKyr_snow_move() {
|
||||
|
||||
void dKyr_star_init() {
|
||||
camera_class* camera = (camera_class*)dComIfGp_getCamera(0);
|
||||
g_env_light.mpStarPacket = JKR_NEW_ARGS (32) dKankyo_star_Packet();
|
||||
g_env_light.mpStarPacket = JKR_NEW_ARGS (32) dKankyo_star_Packet;
|
||||
|
||||
if (g_env_light.mpStarPacket == NULL) {
|
||||
return;
|
||||
|
||||
@@ -433,8 +433,8 @@ static void wether_move_sun() {
|
||||
switch (g_env_light.mSunInitialized) {
|
||||
case FALSE:
|
||||
if (sunVisible && dKy_darkworld_check() != true) {
|
||||
g_env_light.mpSunPacket = JKR_NEW_ARGS (0x20) dKankyo_sun_Packet();
|
||||
g_env_light.mpSunLenzPacket = JKR_NEW_ARGS (0x20) dKankyo_sunlenz_Packet();
|
||||
g_env_light.mpSunPacket = JKR_NEW_ARGS (0x20) dKankyo_sun_Packet;
|
||||
g_env_light.mpSunLenzPacket = JKR_NEW_ARGS (0x20) dKankyo_sunlenz_Packet;
|
||||
if (g_env_light.mpSunPacket != NULL && g_env_light.mpSunLenzPacket != NULL) {
|
||||
g_env_light.mpSunPacket->mpResMoon = (u8*)dComIfG_getStageRes("F_moon.bti");
|
||||
g_env_light.mpSunPacket->mpResMoon_A = (u8*)dComIfG_getStageRes("F_moon_A.bti");
|
||||
@@ -516,7 +516,7 @@ static void wether_move_rain() {
|
||||
switch (g_env_light.mRainInitialized) {
|
||||
case FALSE:
|
||||
if (g_env_light.raincnt > 3) {
|
||||
g_env_light.mpRainPacket = JKR_NEW_ARGS (32) dKankyo_rain_Packet();
|
||||
g_env_light.mpRainPacket = JKR_NEW_ARGS (32) dKankyo_rain_Packet;
|
||||
|
||||
if (g_env_light.mpRainPacket != NULL) {
|
||||
dKyr_rain_init();
|
||||
@@ -705,7 +705,7 @@ static void wether_move_housi() {
|
||||
switch (g_env_light.mHousiInitialized) {
|
||||
case FALSE:
|
||||
if (g_env_light.mHousiCount != 0) {
|
||||
g_env_light.mpHousiPacket = JKR_NEW_ARGS (32) dKankyo_housi_Packet();
|
||||
g_env_light.mpHousiPacket = JKR_NEW_ARGS (32) dKankyo_housi_Packet;
|
||||
|
||||
if (g_env_light.mpHousiPacket != NULL) {
|
||||
if (dKy_darkworld_check() == true) {
|
||||
@@ -764,7 +764,7 @@ static void wether_move_odour() {
|
||||
switch (g_env_light.mOdourData.mOdourPacketStatus) {
|
||||
case 0:
|
||||
if (g_env_light.mOdourData.field_0xf21 != 0) {
|
||||
g_env_light.mOdourData.mpOdourPacket = JKR_NEW_ARGS (32) dKankyo_odour_Packet();
|
||||
g_env_light.mOdourData.mpOdourPacket = JKR_NEW_ARGS (32) dKankyo_odour_Packet;
|
||||
|
||||
if (g_env_light.mOdourData.mpOdourPacket != NULL) {
|
||||
g_env_light.mOdourData.mpOdourPacket->mpResTex = (u8*)dComIfG_getObjectRes("Always", 0x53);
|
||||
@@ -798,7 +798,7 @@ static void wether_move_moya() {
|
||||
switch (g_env_light.mCloudInitialized) {
|
||||
case 0:
|
||||
if (g_env_light.mMoyaCount != 0) {
|
||||
g_env_light.mpCloudPacket = JKR_NEW_ARGS (32) dKankyo_cloud_Packet();
|
||||
g_env_light.mpCloudPacket = JKR_NEW_ARGS (32) dKankyo_cloud_Packet;
|
||||
|
||||
if (g_env_light.mpCloudPacket != NULL) {
|
||||
g_env_light.mpCloudPacket->mpResTex = (u8*)dComIfG_getObjectRes("Always", 0x53);
|
||||
@@ -884,7 +884,7 @@ static void wether_move_vrkumo() {
|
||||
switch (g_env_light.mVrkumoStatus) {
|
||||
case 0:
|
||||
if (g_env_light.mVrkumoCount != 0) {
|
||||
g_env_light.mpVrkumoPacket = JKR_NEW_ARGS (0x20) dKankyo_vrkumo_Packet();
|
||||
g_env_light.mpVrkumoPacket = JKR_NEW_ARGS (0x20) dKankyo_vrkumo_Packet;
|
||||
if (g_env_light.mpVrkumoPacket == NULL) {
|
||||
return;
|
||||
}
|
||||
@@ -964,7 +964,7 @@ static void wether_move_mud() {
|
||||
switch (g_env_light.mMudInitialized) {
|
||||
case 0:
|
||||
if (g_env_light.field_0x1048 != 0) {
|
||||
g_env_light.mpMudPacket = JKR_NEW_ARGS (32) dKankyo_mud_Packet();
|
||||
g_env_light.mpMudPacket = JKR_NEW_ARGS (32) dKankyo_mud_Packet;
|
||||
|
||||
if (g_env_light.mpMudPacket != NULL) {
|
||||
dKyr_mud_init();
|
||||
@@ -990,7 +990,7 @@ static void wether_move_evil() {
|
||||
switch (g_env_light.mEvilInitialized & 0xF) {
|
||||
case 0:
|
||||
if (g_env_light.field_0x1054 != 0) {
|
||||
g_env_light.mpEvilPacket = JKR_NEW_ARGS (32) dKankyo_evil_Packet();
|
||||
g_env_light.mpEvilPacket = JKR_NEW_ARGS (32) dKankyo_evil_Packet;
|
||||
|
||||
if (g_env_light.mpEvilPacket != NULL) {
|
||||
dKyr_evil_init();
|
||||
|
||||
@@ -152,7 +152,7 @@ int dThunder_c::create() {
|
||||
f32 var_r28;
|
||||
f32 var_r27;
|
||||
|
||||
JKR_NEW_ARGS (this) dThunder_c();
|
||||
JKR_NEW_ARGS (this) dThunder_c;
|
||||
|
||||
J3DModelData* modelData;
|
||||
if (cM_rndF(1.0f) < 0.5f) {
|
||||
|
||||
@@ -662,7 +662,7 @@ void dMenu_FmapMap_c::setTexture(u16 i_width, u16 i_height, u16 param_2, u16 par
|
||||
int size = GXGetTexBufferSize(i_width, i_height, GX_TF_C8, 0, 0);
|
||||
mMapImage_p = JKR_NEW_ARRAY_ARGS(u8, size, 0x20);
|
||||
init(mMapImage_p, i_width, i_height, param_2, param_3);
|
||||
mResTIMG = JKR_NEW_ARGS (0x20) ResTIMG();
|
||||
mResTIMG = JKR_NEW_ARGS (0x20) ResTIMG;
|
||||
makeResTIMG(mResTIMG, i_width, i_height, mMapImage_p, (u8*)m_palette, 0x1b);
|
||||
}
|
||||
|
||||
|
||||
@@ -234,7 +234,7 @@ static int dOvlpFd2_Delete(dOvlpFd2_c* i_this) {
|
||||
}
|
||||
|
||||
static int dOvlpFd2_Create(void* i_this) {
|
||||
JKR_NEW_ARGS (i_this) dOvlpFd2_c();
|
||||
JKR_NEW_ARGS (i_this) dOvlpFd2_c;
|
||||
return cPhs_COMPLEATE_e;
|
||||
}
|
||||
|
||||
|
||||
@@ -252,7 +252,7 @@ static int dOvlpFd3_Delete(dOvlpFd3_c* i_this) {
|
||||
}
|
||||
|
||||
static int dOvlpFd3_Create(void* i_this) {
|
||||
JKR_NEW_ARGS (i_this) dOvlpFd3_c();
|
||||
JKR_NEW_ARGS (i_this) dOvlpFd3_c;
|
||||
return cPhs_COMPLEATE_e;
|
||||
}
|
||||
|
||||
|
||||
+1
-1
@@ -1454,7 +1454,7 @@ void dScnLogo_c::dvdDataLoad() {
|
||||
|
||||
static int dScnLogo_Create(scene_class* i_this) {
|
||||
DuskLog.debug("[DIAG] dScnLogo_Create: entry i_this={}", (void*)i_this);
|
||||
return (JKR_NEW_ARGS (i_this) dScnLogo_c())->create();
|
||||
return (JKR_NEW_ARGS (i_this) dScnLogo_c)->create();
|
||||
}
|
||||
|
||||
static int dScnLogo_Execute(dScnLogo_c* i_this) {
|
||||
|
||||
+1
-1
@@ -408,7 +408,7 @@ static int dScnName_Delete(dScnName_c* i_this) {
|
||||
}
|
||||
|
||||
static int dScnName_Create(scene_class* i_this) {
|
||||
JKR_NEW_ARGS (i_this) dScnName_c();
|
||||
JKR_NEW_ARGS (i_this) dScnName_c;
|
||||
return static_cast<dScnName_c*>(i_this)->create();
|
||||
}
|
||||
|
||||
|
||||
@@ -321,9 +321,9 @@ s32 mDoDvdThd_mountAramArchive_c::execute() {
|
||||
BOOL result = FALSE;
|
||||
if (!mArchive) {
|
||||
if (mMountDirection == 0) {
|
||||
mArchive = JKR_NEW_ARGS (heap, 0x20) JKRAramArchive();
|
||||
mArchive = JKR_NEW_ARGS (heap, 0x20) JKRAramArchive;
|
||||
} else {
|
||||
mArchive = JKR_NEW_ARGS (heap, -0x20) JKRAramArchive();
|
||||
mArchive = JKR_NEW_ARGS (heap, -0x20) JKRAramArchive;
|
||||
}
|
||||
#if DEBUG
|
||||
if (mDoDvdThd::verbose) {
|
||||
|
||||
Reference in New Issue
Block a user