]> git.eshelyaron.com Git - emacs.git/commitdiff
ns_select fix for macOS terminals (bug#69561)
authorGerd Möllmann <gerd@gnu.org>
Wed, 13 Mar 2024 19:27:20 +0000 (20:27 +0100)
committerEshel Yaron <me@eshelyaron.com>
Fri, 15 Mar 2024 08:59:09 +0000 (09:59 +0100)
* src/nsterm.m (ns_select_1): Return early for terminals.

(cherry picked from commit d95f2a882d5f0587a8e02c5be6f0fd005d4a6a43)

src/nsterm.m

index f161edc4ac2f1cc22cbc5361f2649ec24d4c6797..faf9324402b2edcf6494fa46257101eb203ad620 100644 (file)
@@ -4757,8 +4757,12 @@ ns_select_1 (int nfds, fd_set *readfds, fd_set *writefds,
       if (writefds && FD_ISSET(k, writefds)) ++nr;
     }
 
-  if (NSApp == nil
-      || ![NSThread isMainThread]
+  /* emacs -nw doesn't have an NSApp, so we're done.  */
+  if (NSApp == nil)
+    return thread_select (pselect, nfds, readfds, writefds, exceptfds,
+                         timeout, sigmask);
+
+  if (![NSThread isMainThread]
       || (timeout && timeout->tv_sec == 0 && timeout->tv_nsec == 0))
     thread_select (pselect, nfds, readfds, writefds,
                   exceptfds, timeout, sigmask);