mirror of
https://github.com/TwilitRealm/dusklight
synced 2026-06-16 05:55:37 -04:00
Fakematch JASTrack::TList::seqMain (#2940)
* Fakematch JASTrack::TList::seqMain * Add debug ifdef
This commit is contained in:
@@ -728,8 +728,8 @@ void JASTrack::TList::append(JASTrack* i_track) {
|
||||
Push_back(i_track);
|
||||
}
|
||||
|
||||
// NONMATCHING - missing load instruction (matches debug, equivalent)
|
||||
void JASTrack::TList::seqMain() {
|
||||
#if DEBUG
|
||||
iterator it, it2;
|
||||
for (it = begin(); it != end(); it = it2) {
|
||||
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) {
|
||||
|
||||
Reference in New Issue
Block a user