Commit df1fbbe2 authored by Him188's avatar Him188

Remove listener when job is completed

parent 074236ce
......@@ -26,7 +26,12 @@ val EventLogger: MiraiLoggerWithSwitch = DefaultLogger("Event").withSwitch(false
@MiraiInternalAPI
fun <L : Listener<E>, E : Event> KClass<out E>.subscribeInternal(listener: L): L {
this.listeners().addLast(listener)
with(this.listeners()) {
addLast(listener)
listener.invokeOnCompletion {
this.remove(listener)
}
}
return listener
}
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment