(py-outdent-p): When looking at the previous line, watch out for
continuation lines. This fixes this bug report, reported by Frank
Stajano.
# But if I split the "raise" line and reindent, the else WRONGLY goes up a
# level (?!?)
while condition1:
if condition2:
raise error3, \
moreInfo4
else: # meant to close "if condition2"
action5()
diff --git a/Misc/python-mode.el b/Misc/python-mode.el
index bd69739..1cff2d9 100644
--- a/Misc/python-mode.el
+++ b/Misc/python-mode.el
@@ -960,7 +960,9 @@
(save-excursion
(and (progn (back-to-indentation)
(looking-at py-outdent-re))
- (progn (backward-to-indentation 1)
+ (progn (forward-line -1)
+ (py-goto-initial-line)
+ (back-to-indentation)
(while (or (looking-at py-blank-or-comment-re)
(bobp))
(backward-to-indentation 1))