mirror of https://github.com/zeldaret/tp
Fakematch JASTrack::TList::seqMain (#2940)
* Fakematch JASTrack::TList::seqMain * Add debug ifdef
This commit is contained in:
parent
63d902bc89
commit
50f0876194
|
|
@ -1022,7 +1022,7 @@ config.libs = [
|
||||||
Object(MatchingFor(ALL_GCN), "JSystem/JAudio2/JASProbe.cpp"),
|
Object(MatchingFor(ALL_GCN), "JSystem/JAudio2/JASProbe.cpp"),
|
||||||
Object(MatchingFor(ALL_GCN), "JSystem/JAudio2/JASReport.cpp"),
|
Object(MatchingFor(ALL_GCN), "JSystem/JAudio2/JASReport.cpp"),
|
||||||
Object(MatchingFor(ALL_GCN), "JSystem/JAudio2/JASCmdStack.cpp"),
|
Object(MatchingFor(ALL_GCN), "JSystem/JAudio2/JASCmdStack.cpp"),
|
||||||
Object(NonMatching, "JSystem/JAudio2/JASTrack.cpp"),
|
Object(Equivalent, "JSystem/JAudio2/JASTrack.cpp"), # weak func order
|
||||||
Object(MatchingFor(ALL_GCN), "JSystem/JAudio2/JASTrackPort.cpp"),
|
Object(MatchingFor(ALL_GCN), "JSystem/JAudio2/JASTrackPort.cpp"),
|
||||||
Object(MatchingFor(ALL_GCN), "JSystem/JAudio2/JASRegisterParam.cpp"),
|
Object(MatchingFor(ALL_GCN), "JSystem/JAudio2/JASRegisterParam.cpp"),
|
||||||
Object(MatchingFor(ALL_GCN), "JSystem/JAudio2/JASSeqCtrl.cpp"),
|
Object(MatchingFor(ALL_GCN), "JSystem/JAudio2/JASSeqCtrl.cpp"),
|
||||||
|
|
|
||||||
|
|
@ -728,8 +728,8 @@ void JASTrack::TList::append(JASTrack* i_track) {
|
||||||
Push_back(i_track);
|
Push_back(i_track);
|
||||||
}
|
}
|
||||||
|
|
||||||
// NONMATCHING - missing load instruction (matches debug, equivalent)
|
|
||||||
void JASTrack::TList::seqMain() {
|
void JASTrack::TList::seqMain() {
|
||||||
|
#if DEBUG
|
||||||
iterator it, it2;
|
iterator it, it2;
|
||||||
for (it = begin(); it != end(); it = it2) {
|
for (it = begin(); it != end(); it = it2) {
|
||||||
it2 = it;
|
it2 = it;
|
||||||
|
|
@ -742,6 +742,25 @@ void JASTrack::TList::seqMain() {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
#else
|
||||||
|
iterator it;
|
||||||
|
for (it = begin(); it != end();) {
|
||||||
|
// Fakematch: Debug shows that it2 should be declared outside the loop and then this line
|
||||||
|
// should use operator=, but that results in a missing load instruction for retail, so we
|
||||||
|
// use the copy constructor instead of the assignment operator, which fixes it for some
|
||||||
|
// reason. Might be related to the fakematch in the assignment operator?
|
||||||
|
iterator it2 = it;
|
||||||
|
++it2;
|
||||||
|
int seqMainRes = it->seqMain();
|
||||||
|
if (seqMainRes < 0) {
|
||||||
|
Remove(&*it);
|
||||||
|
if (it->mFlags.autoDelete) {
|
||||||
|
delete &*it;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
it = it2;
|
||||||
|
}
|
||||||
|
#endif
|
||||||
}
|
}
|
||||||
|
|
||||||
JASTrack::TChannelMgr::TChannelMgr(JASTrack* i_track) : mSoundParams(NULL), mTrack(i_track) {
|
JASTrack::TChannelMgr::TChannelMgr(JASTrack* i_track) : mSoundParams(NULL), mTrack(i_track) {
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue