diff options
Diffstat (limited to 'lisp')
-rw-r--r-- | lisp/ChangeLog | 8 | ||||
-rw-r--r-- | lisp/progmodes/sh-script.el | 5 |
2 files changed, 10 insertions, 3 deletions
diff --git a/lisp/ChangeLog b/lisp/ChangeLog index c61548b5a6c..abd2605c98f 100644 --- a/lisp/ChangeLog +++ b/lisp/ChangeLog @@ -1,3 +1,9 @@ +2001-10-26 Sam Steingold <sds@gnu.org> + + * progmodes/sh-script.el (sh-font-lock-syntactic-keywords): + Protect the /= test by checking that the args are non-nil. + (sh-font-lock-close-heredoc): check eof for being non-nil. + 2001-10-26 Tomas Abrahamsson <tab@lysator.liu.se> * textmodes/artist.el (artist-version): 1.2.4. @@ -25,7 +31,7 @@ `eval'. (numerous places): Add back-tick and tick around names in docstrings, fix punctuation in docstrings, remove trailing spaces. - + 2001-10-25 Sam Steingold <sds@gnu.org> * add-log.el (add-log-always-start-new-record): New user option. diff --git a/lisp/progmodes/sh-script.el b/lisp/progmodes/sh-script.el index 8c05826d7f4..a3b95231774 100644 --- a/lisp/progmodes/sh-script.el +++ b/lisp/progmodes/sh-script.el @@ -828,7 +828,7 @@ See `sh-feature'.") (defun sh-font-lock-close-heredoc (bol eof indented) "Determine the syntax of the \\n after an EOF. If non-nil INDENTED indicates that the EOF was indented." - (let* ((eof-re (regexp-quote eof)) + (let* ((eof-re (if eof (regexp-quote eof) "")) ;; A rough regexp that should find the opening <<EOF back. (sre (concat "<<\\(-?\\)\\s-*['\"\\]?" ;; Use \s| to cheaply check it's an open-heredoc. @@ -921,7 +921,8 @@ be indented (i.e. a <<- was used rather than just <<)." (match-beginning 0) (match-string 1)) nil t) (5 (sh-font-lock-close-heredoc (match-beginning 0) (match-string 4) - (/= (match-beginning 3) (match-end 3))) nil t)) + (and (match-beginning 3) (/= (match-beginning 3) (match-end 3)))) + nil t)) ;; Distinguish the special close-paren in `case'. (")" 0 (sh-font-lock-paren (match-beginning 0))))) |