1
0
Fork 0
mirror of git://git.code.sf.net/p/zsh/code synced 2025-09-26 05:51:08 +02:00
Commit graph

98 commits

Author SHA1 Message Date
Wayne Davison
1ec2b5c096 Fix the potential for an infinite loop in lockhistfile() if the
link() calls fails for some other reason than EEXIST.
2004-05-11 21:45:36 +00:00
Peter Stephenson
815bc92148 a la 19209: zcalloc -> zshcalloc 2003-10-29 19:17:30 +00:00
Peter Stephenson
e65a811520 18941: history wrong after parse error during alias expansion 2003-08-11 13:19:48 +00:00
Peter Stephenson
98307b767c 17318: ${(z)...} added an extra space when the lexical analyser failed. 2002-06-14 17:52:05 +00:00
Wayne Davison
cbc7abb006 Added "savehistsiz" (for the new SAVEHIST special parameter), and used it
in place of getiparam("SAVEHIST").
2002-03-24 23:52:47 +00:00
Wayne Davison
663c6e794a In putoldhistentryontop(), ensure that we can't return with "next" set to
the value we just put on top.
2002-02-22 20:40:29 +00:00
Wayne Davison
cfcf7bda8d Yet another fix for prepnexthistent(). 2002-02-20 19:25:14 +00:00
Wayne Davison
3b3bafac80 Fixed a just-introduced bug in prepnexthistent() when curline is in
the list.
2002-02-18 19:25:25 +00:00
Wayne Davison
d35af383df When savehistfile() rewrites the history file, there was a potential for
losing the entire history file if we couldn't lock the file for reading
(it timed out) but we could lock the file for write (and wrote nothing).
2002-02-16 09:21:34 +00:00
Wayne Davison
e706f12937 Optimized putoldhistentryontop() so that when resizehistents() calls it
repeatedly while HIST_EXPIRE_DUPS_FIRST is set, it doesn't re-scan the
already-checked hist items (avoiding potentially slow operation).
2002-02-16 09:15:07 +00:00
Wayne Davison
c24a38cdaa Improved resizehistents() so that it honors HISTEXPIREDUPSFIRST. 2002-02-13 18:13:14 +00:00
Clint Adams
7dea9669bb 16577: don't return a single dot as the path head of a slash. 2002-02-06 16:48:28 +00:00
Wayne Davison
c1b837b152 Improved readhistline() to reject binary data better. (16184) 2001-10-26 23:47:10 +00:00
Wayne Davison
34c4e565d0 Fix HIST_NO_SPACE when INTERACTIVE_COMMENTS is set and we get a
comment.
2001-10-15 18:42:52 +00:00
Bart Schaefer
63ecd0332b Fix out-of-memory on corrupt history files. 2001-09-24 15:15:08 +00:00
Wayne Davison
2a754dbb61 With HIST_NO_STORE, don't ignore what looks like a history command if
we're really going to call a user-defined shell function.
2001-09-15 06:28:15 +00:00
Wayne Davison
fc89b8135a + Changed addhistnum() to return firsthist()-1 or curhist+1 on error.
+ Ignore the "r" command if HIST_NO_STORE is set.
2001-09-13 18:19:11 +00:00
Wayne Davison
f7e8ca1d96 When rewriting the history file, set histactive to 0 and restore it
when we're done.  This prevents the loss of the file's last line
when a signal causes us to rewrite it.  Also restore the value of
histsiz.
2001-08-07 19:53:19 +00:00
Wayne Davison
963466358a Have prepnexthistent() remove any HIST_TEMPSTORE entry that is present. 2001-06-28 18:17:14 +00:00
Wayne Davison
b207aeeded Don't mark a HIST_TMPSTORE entry with HIST_OLD so that the HFILE_FAST
algorithm in savehistfile() will recheck this hist num later.
2001-06-08 00:15:18 +00:00
Wayne Davison
f99520aeb0 Don't merge a HIST_TMPSTORE entry with a previous "duplicate" line.
Also, don't call addhistnode() on a HIST_TMPSTORE entry.
2001-05-19 09:22:10 +00:00
Wayne Davison
9f9ced8c62 + Changed histreduceblanks() to preserve spaces at the start of the
line when HISTIGNORESPACE is set.
+ Flag a history entry with HIST_TMPSTORE when should_ignore_line()
  returns true (instead of dropping it from the history immediately).
+ Get rid of old HIST_TMPSTORE entries when a new command is entered.
+ The hist-file-reading code now handles destroying a foreign
  duplicate (when marked as duplicate by addhistnode()).
2001-05-15 16:32:25 +00:00
Wayne Davison
6066bd7eeb Fixed an obscure local-history bug that could make the "history"
command output something that was slightly wrong. (14304)
2001-05-10 23:06:54 +00:00
Bart Schaefer
220ad9aa23 Parameter repairs, mostly for subscripting. 2001-04-20 06:13:35 +00:00
Wayne Davison
6d4a1bbc5c Slightly optimized should_ignore_line() by using getjobtext() rather
than getpermtext().
2001-04-10 18:03:58 +00:00
Sven Wischnowsky
85de1eae0b properly restore noaliases in bufferwords() (13530) 2001-02-26 09:43:08 +00:00
Peter Stephenson
cd02c345af 13280: NewImproved handling of colon modifiers w.r.t. paths 2001-02-19 10:26:52 +00:00
Sven Wischnowsky
757168e2c8 remove 13108 (trap queues); replace with signal queueing to ensure that user signal handlers are only executed when it is safe to run them (13365) 2001-01-16 13:44:18 +00:00
Bart Schaefer
9bf7fb75c5 Fix "vared -h" in shell scripts. 2000-10-21 03:15:36 +00:00
Wayne Davison
4be4c7575c Don't call histreduceblanks() if the line didn't parse right. 2000-10-19 07:12:26 +00:00
Sven Wischnowsky
9bc05a5aa5 isalpha() -> ialpha(); avoid a compiler warning (12439) 2000-07-31 08:12:16 +00:00
Wayne Davison
c6a3c250c1 Renamed shouldIgnoreLine() to should_ignore_line(). 2000-07-20 17:00:19 +00:00
Wayne Davison
01ea5e83c5 Support "builtin" in the HIST_NO_STORE check. 2000-07-20 07:09:34 +00:00
Wayne Davison
1ad69e3d44 Removed remhist() and HA_JUNKED, added an Eprog arg to hend(), and
added the shouldIgnoreLine() function that hend() now calls to figure
out if it needs to save the line or not.
2000-07-19 21:12:06 +00:00
Wayne Davison
b4c5de44f9 + Got rid of the spaceflag variable.
+ Make sure that the curline.histnum variable is accurate at the end
  of our history processing, even if we read in some foreign history
  and/or if we replaced the prior line because it was a duplicate of
  the current one.  This enables the history (fc -l) command to work
  properly, even if the current command was HIST_NO_SPACE-ed away.
+ Don't allow remhist() to remove the last line in the history if we
  didn't store the current command.
2000-07-18 07:55:13 +00:00
Wayne Davison
656bce6bf5 Fix the gethistent() function and enhanced the reliability of the
SHARE_HISTORY option.
2000-07-17 02:07:23 +00:00
Wayne Davison
2b602a93e6 + Needed to call unmeta() in a few spots that used the HISTFILE name.
+ The non-HAVE_LINK code in lockhistfile() was broken in a number of ways.
+ Added an extra unlink() call to the HAVE_LINK code in lockhistfile()
  since (Linix at least says that) O_EXCL over NFS is broken.
2000-07-16 20:12:19 +00:00
Sven Wischnowsky
0982f4ee64 condition parsing with (z) flag 2000-07-13 12:28:12 +00:00
Sven Wischnowsky
c3082d546e slightly improved (z) flag for parsing conditions; recognising glob flags in conditions still doesn't work (12237) 2000-07-13 08:42:10 +00:00
Sven Wischnowsky
d861bb9805 fix for (z) flag, don't take # as comment (12228) 2000-07-12 10:31:29 +00:00
Oliver Kiddle
64d9b83105 AIX depenency fix (11661) 2000-05-30 14:06:30 +00:00
Bart Schaefer
8564aa5c0d Wayne: Fix two history bugs that were causing the
failure of `print -s'.
2000-05-30 03:43:27 +00:00
Sven Wischnowsky
7f9f81f3e2 save and restore more variables in bufferwords(); move gotword() into core (11523) 2000-05-23 08:20:56 +00:00
Sven Wischnowsky
c844ad8712 Wayne: fix for print -s when called from widget; added lines are not immediately available, though (11171) 2000-05-05 07:42:36 +00:00
Sven Wischnowsky
17e79c0157 fix for the (z) flag: report partial word (like `"foo', without a closing quote); mention in manual that (z) is handled lately (11117) 2000-05-03 13:05:39 +00:00
Sven Wischnowsky
70e5b622ff new (z) parameter flag to do shell-word splitting on the value (11113) 2000-05-03 12:21:55 +00:00
Sven Wischnowsky
b1d4a8194a new widget copy-prev-shell-word, like copy-prev-word but uses shell parsing to find word (10685) 2000-04-12 08:24:15 +00:00
Tanaka Akira
e74702b467 Initial revision 1999-04-15 18:05:38 +00:00