mirror of
https://github.com/collinsmith/riiablo.git
synced 2025-07-08 23:07:46 +07:00
Fixed CvarManager cleanup
Fixed an issue where removing a Cvar from a CvarManager was not removing its state listener
This commit is contained in:
@ -43,7 +43,10 @@ public class CvarManager implements Cvar.StateListener, Iterable<Cvar> {
|
|||||||
if (cvar == null) return false;
|
if (cvar == null) return false;
|
||||||
String alias = cvar.ALIAS.toLowerCase();
|
String alias = cvar.ALIAS.toLowerCase();
|
||||||
Cvar queriedCvar = CVARS.get(alias);
|
Cvar queriedCvar = CVARS.get(alias);
|
||||||
return Objects.equals(queriedCvar, cvar) && CVARS.remove(alias) != null;
|
boolean removed = Objects.equals(queriedCvar, cvar)
|
||||||
|
&& CVARS.remove(alias) != null;
|
||||||
|
if (removed) queriedCvar.removeStateListener(this);
|
||||||
|
return removed;
|
||||||
}
|
}
|
||||||
|
|
||||||
@SuppressWarnings("unchecked")
|
@SuppressWarnings("unchecked")
|
||||||
|
Reference in New Issue
Block a user