From: Barry Warsaw Date: Mon, 24 May 1999 19:57:32 +0000 (+0000) Subject: (py-parse-state): When running under Emacs -- which doesn't have X-Git-Tag: v1.6a1~1330 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=53db859408bc40defe77b162a52d851785fac97e;p=thirdparty%2FPython%2Fcpython.git (py-parse-state): When running under Emacs -- which doesn't have buffer-syntactic-context -- just short circuit the TQS test by jumping to point-min and doing the test from there. For long files, this will be faster than looping with a re-search-backwards. --- diff --git a/Misc/python-mode.el b/Misc/python-mode.el index 3e24ba371ceb..a62e17378b60 100644 --- a/Misc/python-mode.el +++ b/Misc/python-mode.el @@ -2786,7 +2786,13 @@ local bindings to py-newline-and-indent.")) (save-excursion (setq pps (parse-partial-sexp (point) here))) ;; make sure we don't land inside a triple-quoted string (setq done (or (not (nth 3 pps)) - (bobp)))) + (bobp))) + ;; Just go ahead and short circuit the test back to the + ;; beginning of the buffer. This will be slow, but not + ;; nearly as slow as looping through many + ;; re-search-backwards. + (if (not done) + (goto-char (point-min)))) ;; XEmacs (setq done (or (not (buffer-syntactic-context)) (bobp)))