tAvoid recursive call to ttywrite from ttyread - st - [fork] customized build o… | |
git clone git://src.adamsgaard.dk/st | |
Log | |
Files | |
Refs | |
README | |
LICENSE | |
--- | |
commit 375b28720f7c78e6fac1c274f9dee7c40a78aacb | |
parent d836561b96097b04760104e7e0f8d014f5889a18 | |
Author: Roberto E. Vargas Caballero <[email protected]> | |
Date: Sat, 21 Nov 2015 18:21:03 +0100 | |
Avoid recursive call to ttywrite from ttyread | |
Ttyread() calls to ttywrite, so if we check for reading before | |
tthat for writing in ttywrite we can get a circular call sequence. | |
Diffstat: | |
M st.c | 4 ++-- | |
1 file changed, 2 insertions(+), 2 deletions(-) | |
--- | |
diff --git a/st.c b/st.c | |
t@@ -1518,8 +1518,6 @@ ttywrite(const char *s, size_t n) | |
continue; | |
die("select failed: %s\n", strerror(errno)); | |
} | |
- if (FD_ISSET(cmdfd, &rfd)) | |
- lim = ttyread(); | |
if (FD_ISSET(cmdfd, &wfd)) { | |
/* | |
* Only write the bytes written by ttywrite() or the | |
t@@ -1543,6 +1541,8 @@ ttywrite(const char *s, size_t n) | |
break; | |
} | |
} | |
+ if (FD_ISSET(cmdfd, &rfd)) | |
+ lim = ttyread(); | |
} | |
return; | |