Fix SIGSEGV on exit in some edge cases
This commit is contained in:
parent
c65bfd1afb
commit
355f0e0921
1 changed files with 4 additions and 0 deletions
|
|
@ -422,7 +422,9 @@ where
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
Control::Exit => {
|
Control::Exit => {
|
||||||
|
self.process_event(event_loop, Event::Exit);
|
||||||
event_loop.exit();
|
event_loop.exit();
|
||||||
|
break;
|
||||||
}
|
}
|
||||||
Control::Crash(error) => {
|
Control::Crash(error) => {
|
||||||
self.error = Some(error);
|
self.error = Some(error);
|
||||||
|
|
@ -469,6 +471,7 @@ enum Event<Message: 'static> {
|
||||||
on_open: oneshot::Sender<window::Id>,
|
on_open: oneshot::Sender<window::Id>,
|
||||||
},
|
},
|
||||||
EventLoopAwakened(winit::event::Event<Message>),
|
EventLoopAwakened(winit::event::Event<Message>),
|
||||||
|
Exit,
|
||||||
}
|
}
|
||||||
|
|
||||||
#[derive(Debug)]
|
#[derive(Debug)]
|
||||||
|
|
@ -1039,6 +1042,7 @@ async fn run_instance<P>(
|
||||||
_ => {}
|
_ => {}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
Event::Exit => break,
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue