-
Notifications
You must be signed in to change notification settings - Fork 215
[ZH] Minor memory corruption and leak fixes #716
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Changes from all commits
61ac7bd
bcfe2e4
3d4b5c7
36bd757
c631722
f5e086f
770ae18
48d6592
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
| Original file line number | Diff line number | Diff line change |
|---|---|---|
|
|
@@ -942,7 +942,10 @@ void ParticleUplinkCannonUpdate::createGroundToOrbitLaser( UnsignedInt growthFra | |
| if( beam ) | ||
| { | ||
| TheGameClient->destroyDrawable( beam ); | ||
| m_orbitToTargetBeamID = INVALID_DRAWABLE_ID; | ||
|
|
||
| // TheSuperHackers @fix helmutbuhler 04/19/2025 | ||
| // This originally mistakenly assigned to m_orbitToTargetBeamID and thus caused a leak. | ||
| m_groundToOrbitBeamID = INVALID_DRAWABLE_ID; | ||
|
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Looks legitimate to me, will just need to check against VC6 that we don't cause a mismatch by this change, |
||
| } | ||
|
|
||
| if( data->m_particleBeamLaserName.isNotEmpty() ) | ||
|
|
||
| Original file line number | Diff line number | Diff line change |
|---|---|---|
|
|
@@ -1055,7 +1055,9 @@ void StealthUpdate::changeVisualDisguise() | |
|
|
||
| const ThingTemplate *tTemplate = self->getTemplate(); | ||
|
|
||
| TheThingFactory->newDrawable( tTemplate ); | ||
| // TheSuperHackers @bugfix helmutbuhler 04/13/2025 | ||
| // draw was originally not assigned here and potentially caused memory corruption | ||
| draw = TheThingFactory->newDrawable( tTemplate ); | ||
|
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Looks genuine, might need checking again against VC6 since it could cause a mismatch even though it fixes behaviour. |
||
| if( draw ) | ||
| { | ||
| TheGameLogic->bindObjectAndDrawable(self, draw); | ||
|
|
||
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks genuine to me, should not affect VC6 as the original behaviour was fine for STLPort.
If you can replicate this and the other iterator fix to generals as well, that would be great.