CoreTiming: Unschedule the pending events when an Interface is destroyed.

This commit is contained in:
Subv 2018-03-04 10:34:25 -05:00
parent 7e7110b3b9
commit 248881fa7f
3 changed files with 10 additions and 2 deletions

View file

@ -52,7 +52,9 @@ public:
CoreTiming::ScheduleEvent(audio_ticks, audio_event);
}
~IAudioOut() = default;
~IAudioOut() {
CoreTiming::UnscheduleEvent(audio_event, 0);
}
private:
void StartAudioOut(Kernel::HLERequestContext& ctx) {

View file

@ -45,7 +45,9 @@ public:
// Start the audio event
CoreTiming::ScheduleEvent(audio_ticks, audio_event);
}
~IAudioRenderer() = default;
~IAudioRenderer() {
CoreTiming::UnscheduleEvent(audio_event, 0);
}
private:
void UpdateAudioCallback() {

View file

@ -45,6 +45,10 @@ public:
CoreTiming::ScheduleEvent(pad_update_ticks, pad_update_event);
}
~IAppletResource() {
CoreTiming::UnscheduleEvent(pad_update_event, 0);
}
private:
void GetSharedMemoryHandle(Kernel::HLERequestContext& ctx) {
IPC::ResponseBuilder rb{ctx, 2, 1};