From b830b63b85d766d77daa5e4f835141cbf3d81980 Mon Sep 17 00:00:00 2001 From: "Richard M. Stallman" Date: Fri, 2 Jul 2004 23:49:50 +0000 Subject: [PATCH] (python-beginning-of-statement): Exit the loop if backward-up-list gets error. --- lisp/progmodes/python.el | 21 +++++++++++---------- 1 file changed, 11 insertions(+), 10 deletions(-) diff --git a/lisp/progmodes/python.el b/lisp/progmodes/python.el index 274480a36de..9be2c7599b8 100644 --- a/lisp/progmodes/python.el +++ b/lisp/progmodes/python.el @@ -710,16 +710,17 @@ Accounts for continuation lines, multi-line strings, and multi-line bracketed expressions." (beginning-of-line) (python-beginning-of-string) - (while (python-continuation-line-p) - (beginning-of-line) - (if (python-backslash-continuation-line-p) - (while (python-backslash-continuation-line-p) - (forward-line -1)) - (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) - (error (end-of-line))))) + (catch 'foo + (while (python-continuation-line-p) + (beginning-of-line) + (if (python-backslash-continuation-line-p) + (while (python-backslash-continuation-line-p) + (forward-line -1)) + (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) + (error (throw 'foo nil)))))) (back-to-indentation)) (defun python-end-of-statement () -- 2.39.2