From: Stefan Monnier Date: Wed, 26 Apr 2006 05:26:39 +0000 (+0000) Subject: (python-continuation-line-p, python-beginning-of-statement): X-Git-Tag: emacs-pretest-22.0.90~2956 X-Git-Url: http://git.eshelyaron.com/gitweb/?a=commitdiff_plain;h=45e46cb773188afd2ac5c9172b8c458f8c754622;p=emacs.git (python-continuation-line-p, python-beginning-of-statement): syntax-ppss may return a negative depth. --- diff --git a/lisp/ChangeLog b/lisp/ChangeLog index bf5bb40f5cf..4b5d9bf58d5 100644 --- a/lisp/ChangeLog +++ b/lisp/ChangeLog @@ -1,5 +1,9 @@ 2006-04-26 Stefan Monnier + * progmodes/python.el (python-continuation-line-p) + (python-beginning-of-statement): syntax-ppss may return + a negative depth. + * time-stamp.el (time-stamp-start, time-stamp-end) (time-stamp-inserts-lines): Tighten up a bit the safety predicate. diff --git a/lisp/progmodes/python.el b/lisp/progmodes/python.el index 5e645535a23..9636f7eaeae 100644 --- a/lisp/progmodes/python.el +++ b/lisp/progmodes/python.el @@ -292,9 +292,9 @@ The criteria are that the previous line ends in a backslash outside comments and strings, or that the bracket/paren nesting depth is nonzero." (or (and (eq ?\\ (char-before (line-end-position 0))) (not (syntax-ppss-context (syntax-ppss)))) - (/= 0 (syntax-ppss-depth - (save-excursion ; syntax-ppss with arg changes point - (syntax-ppss (line-beginning-position))))))) + (< 0 (syntax-ppss-depth + (save-excursion ; syntax-ppss with arg changes point + (syntax-ppss (line-beginning-position))))))) (defun python-comment-line-p () "Return non-nil iff current line has only a comment." @@ -719,7 +719,10 @@ expressions." (python-beginning-of-string) ;; Skip forward out of nested brackets. (condition-case () ; beware invalid syntax - (progn (backward-up-list (syntax-ppss-depth (syntax-ppss))) t) + (let ((depth (syntax-ppss-depth (syntax-ppss)))) + ;; Beware negative depths. + (if (> depth 0) (backward-up-list depth)) + t) (error (throw 'foo nil)))))) (back-to-indentation)) @@ -1755,7 +1758,6 @@ lines count as headers. (if (featurep 'hippie-exp) (set (make-local-variable 'hippie-expand-try-functions-list) (cons 'python-try-complete hippie-expand-try-functions-list))) - (unless font-lock-mode (font-lock-mode 1)) (when python-guess-indent (python-guess-indent)) (set (make-local-variable 'python-command) python-python-command) (unless (boundp 'python-mode-running) ; kill the recursion from jython-mode