aboutsummaryrefslogtreecommitdiff
path: root/alacritty/src/event.rs
diff options
context:
space:
mode:
Diffstat (limited to 'alacritty/src/event.rs')
-rw-r--r--alacritty/src/event.rs7
1 files changed, 7 insertions, 0 deletions
diff --git a/alacritty/src/event.rs b/alacritty/src/event.rs
index d16114af..2955ab8c 100644
--- a/alacritty/src/event.rs
+++ b/alacritty/src/event.rs
@@ -1344,6 +1344,13 @@ impl Processor {
GlutinEvent::UserEvent(Event {
payload: EventType::CreateWindow(options), ..
}) => {
+ // XXX Ensure that no context is current when creating a new window, otherwise
+ // it may lock the backing buffer of the surface of current context when asking
+ // e.g. EGL on Wayland to create a new context.
+ for window_context in self.windows.values_mut() {
+ window_context.display.window.make_not_current();
+ }
+
if let Err(err) = self.create_window(event_loop, proxy.clone(), options) {
error!("Could not open window: {:?}", err);
}