fix(ipc): match Unregister call to Register call type in Dispose
UnregisterGate is registered via RegisterAction(Unregister) on construction (Unregister returns void), but Dispose was calling UnregisterFunc() instead of UnregisterAction(). The mismatched unregister call leaks the action subscription on plugin reload — subsequent Dispose/Init cycles would accumulate orphan handlers in the Dalamud IPC layer. Pre-existing upstream issue (CodeRabbit critical finding); fixed in v1.0.0 standalone cut where we own the codebase.
This commit is contained in:
1 parent
1d557f1b0e
commit
feb6e262e4
1 file changed
+1
-1
@@ -47,7 +47,7 @@ internal sealed class IpcManager : IDisposable
|
|||||||
|
|
||||||
public void Dispose()
|
public void Dispose()
|
||||||
{
|
{
|
||||||
UnregisterGate.UnregisterFunc();
|
UnregisterGate.UnregisterAction();
|
||||||
RegisterGate.UnregisterFunc();
|
RegisterGate.UnregisterFunc();
|
||||||
Registered.Clear();
|
Registered.Clear();
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in new issue
Block a user