File 1951-kernel-Handle-geometry-event-while-in-jcl.patch of Package erlang

From a583a93d0636175c4e5a681593587a5cbe61f5c0 Mon Sep 17 00:00:00 2001
From: Lukas Larsson <lukas@erlang.org>
Date: Fri, 30 Aug 2024 10:43:45 +0200
Subject: [PATCH 1/8] kernel: Handle geometry event while in jcl

---
 lib/kernel/src/user_drv.erl | 10 ++++++++++
 1 file changed, 10 insertions(+)

diff --git a/lib/kernel/src/user_drv.erl b/lib/kernel/src/user_drv.erl
index d7fd617aee..067e97e0f4 100644
--- a/lib/kernel/src/user_drv.erl
+++ b/lib/kernel/src/user_drv.erl
@@ -676,6 +676,16 @@ switch_loop(info, {Requester, get_terminal_state}, _State) ->
                                                 stdout => prim_tty:isatty(stdout),
                                                 stderr => prim_tty:isatty(stderr) } },
     keep_state_and_data;
+switch_loop(info, {Requester, tty_geometry}, {_Cont, #state{ tty = TTYState }}) ->
+    case prim_tty:window_size(TTYState) of
+        {ok, Geometry} ->
+            Requester ! {self(), tty_geometry, Geometry},
+            ok;
+        Error ->
+            Requester ! {self(), tty_geometry, Error},
+            ok
+    end,
+    keep_state_and_data;
 switch_loop(timeout, _, {_Cont, State}) ->
     {keep_state_and_data,
      {next_event, info, {State#state.read,{data,[]}}}};
-- 
2.43.0

openSUSE Build Service is sponsored by