summaryrefslogtreecommitdiff
path: root/Src/Zle
diff options
context:
space:
mode:
Diffstat (limited to 'Src/Zle')
-rw-r--r--Src/Zle/compresult.c2
-rw-r--r--Src/Zle/zle.h4
-rw-r--r--Src/Zle/zle_tricky.c2
-rw-r--r--Src/Zle/zle_utils.c46
4 files changed, 23 insertions, 31 deletions
diff --git a/Src/Zle/compresult.c b/Src/Zle/compresult.c
index 2aa382cb5..887720a2f 100644
--- a/Src/Zle/compresult.c
+++ b/Src/Zle/compresult.c
@@ -1861,7 +1861,7 @@ asklist(void)
listdat.nlines));
qup = ((l + columns - 1) / columns) - 1;
fflush(shout);
- if (getzlequery(1) != 'y') {
+ if (!getzlequery()) {
if (clearflag) {
putc('\r', shout);
tcmultout(TCUP, TCMULTUP, qup);
diff --git a/Src/Zle/zle.h b/Src/Zle/zle.h
index 69c73f4cf..f56960734 100644
--- a/Src/Zle/zle.h
+++ b/Src/Zle/zle.h
@@ -125,9 +125,9 @@ static inline int ZS_strncmp(ZLE_STRING_T s1, ZLE_STRING_T s2, size_t l)
#define ZC_icntrl icntrl
#define ZC_idigit idigit
#define ZC_iident iident
-#define ZC_ilower ilower
+#define ZC_ilower islower
#define ZC_inblank inblank
-#define ZC_iupper iupper
+#define ZC_iupper isupper
#define ZC_iword iword
#define ZC_tolower tulower
diff --git a/Src/Zle/zle_tricky.c b/Src/Zle/zle_tricky.c
index 28857b03e..fb0ebad2a 100644
--- a/Src/Zle/zle_tricky.c
+++ b/Src/Zle/zle_tricky.c
@@ -2298,7 +2298,7 @@ listlist(LinkList l)
fprintf(shout, "zsh: do you wish to see all %d lines? ", nlines));
qup = ((l + columns - 1) / columns) - 1;
fflush(shout);
- if (getzlequery(1) != 'y') {
+ if (!getzlequery()) {
if (clearflag) {
putc('\r', shout);
tcmultout(TCUP, TCMULTUP, qup);
diff --git a/Src/Zle/zle_utils.c b/Src/Zle/zle_utils.c
index 2c92c955e..cce162fa0 100644
--- a/Src/Zle/zle_utils.c
+++ b/Src/Zle/zle_utils.c
@@ -653,50 +653,42 @@ zlinefind(ZLE_STRING_T haystack, int haylen, int pos,
}
/*
- * Query the user, and return a single character response. The question
- * is assumed to have been printed already, and the cursor is left
- * immediately after the response echoed. (Might cause a problem if
- * this takes it onto the next line.) If yesno is non-zero: <Tab> is
- * interpreted as 'y'; any other control character is interpreted as
- * 'n'. If there are any characters in the buffer, this is taken as a
- * negative response, and no characters are read. Case is folded.
- *
- * TBD: this may need extending to return a wchar_t or possibly
- * a wint_t.
+ * Query the user, and return 1 for yes, 0 for no. The question is assumed to
+ * have been printed already, and the cursor is left immediately after the
+ * response echoed. (Might cause a problem if this takes it onto the next
+ * line.) <Tab> is interpreted as 'y'; any other control character is
+ * interpreted as 'n'. If there are any characters in the buffer, this is
+ * taken as a negative response, and no characters are read. Case is folded.
*/
/**/
mod_export int
-getzlequery(int yesno)
+getzlequery(void)
{
ZLE_INT_T c;
#ifdef FIONREAD
int val;
- if (yesno) {
- /* check for typeahead, which is treated as a negative response */
- ioctl(SHTTY, FIONREAD, (char *)&val);
- if (val) {
- putc('n', shout);
- return 'n';
- }
+ /* check for typeahead, which is treated as a negative response */
+ ioctl(SHTTY, FIONREAD, (char *)&val);
+ if (val) {
+ putc('n', shout);
+ return 0;
}
#endif
/* get a character from the tty and interpret it */
c = getfullchar(0);
- if (yesno) {
- if (c == ZWC('\t'))
- c = ZWC('y');
- else if (ZC_icntrl(c) || c == ZLEEOF)
- c = ZWC('n');
- else
- c = ZC_tolower(c);
- }
+ if (c == ZWC('\t'))
+ c = ZWC('y');
+ else if (ZC_icntrl(c) || c == ZLEEOF)
+ c = ZWC('n');
+ else
+ c = ZC_tolower(c);
/* echo response and return */
if (c != ZWC('\n'))
zwcputc(c);
- return c;
+ return c == ZWC('y');
}
/* Format a string, keybinding style. */