diff options
author | Tanaka Akira <akr@users.sourceforge.net> | 1999-05-02 15:19:50 +0000 |
---|---|---|
committer | Tanaka Akira <akr@users.sourceforge.net> | 1999-05-02 15:19:50 +0000 |
commit | 53d36e795b26a945048e7a87a1a91224f8e1663a (patch) | |
tree | aee8b11f48f2af1aceacd4a279f1d4b1de6ebfa6 /Src/Zle/zle_main.c | |
parent | 206237c8ec4b7619d9e70a75004cd1ae1066b0a0 (diff) | |
download | zsh-53d36e795b26a945048e7a87a1a91224f8e1663a.tar.gz zsh-53d36e795b26a945048e7a87a1a91224f8e1663a.tar.xz zsh-53d36e795b26a945048e7a87a1a91224f8e1663a.zip |
zsh-3.1.5-pws-17 dot-zsh-199905041932
Diffstat (limited to 'Src/Zle/zle_main.c')
-rw-r--r-- | Src/Zle/zle_main.c | 14 |
1 files changed, 11 insertions, 3 deletions
diff --git a/Src/Zle/zle_main.c b/Src/Zle/zle_main.c index 4d9c99f87..a5da84b66 100644 --- a/Src/Zle/zle_main.c +++ b/Src/Zle/zle_main.c @@ -413,7 +413,6 @@ zleread(char *lp, char *rp, int flags) baud = getiparam("BAUD"); costmult = (baud) ? 3840000L / baud : 0; - tv.tv_sec = 0; #endif /* ZLE doesn't currently work recursively. This is needed in case a * @@ -523,6 +522,7 @@ zleread(char *lp, char *rp, int flags) #ifdef HAVE_SELECT if (baud && !(lastcmd & ZLE_MENUCMP)) { FD_SET(SHTTY, &foofd); + tv.tv_sec = 0; if ((tv.tv_usec = cost * costmult) > 500000) tv.tv_usec = 500000; if (!kungetct && select(SHTTY+1, (SELECT_ARG_2_T) & foofd, @@ -656,14 +656,18 @@ handleprefixes(void) initmodifier(&zmod); } +/* this exports the argument we are currently vared'iting if != NULL */ + +/**/ +char *varedarg; + /* vared: edit (literally) a parameter value */ /**/ static int bin_vared(char *name, char **args, char *ops, int func) { - char *s; - char *t; + char *s, *t, *ova = varedarg; Value v; Param pm = 0; int create = 0; @@ -753,7 +757,9 @@ bin_vared(char *name, char **args, char *ops, int func) PERMALLOC { pushnode(bufstack, ztrdup(s)); } LASTALLOC; + varedarg = *args; t = (char *) zleread(p1, p2, ops['h'] ? ZLRF_HISTORY : 0); + varedarg = ova; if (!t || errflag) { /* error in editing */ errflag = 0; @@ -927,6 +933,8 @@ setup_zle(Module m) /* initialise the keymap system */ init_keymaps(); + varedarg = NULL; + return 0; } |