From: Richard M. Stallman Date: Wed, 4 May 1994 05:48:53 +0000 (+0000) Subject: (hide-sublevels): No need for condition-case. X-Git-Tag: emacs-19.34~8541 X-Git-Url: http://git.eshelyaron.com/gitweb/?a=commitdiff_plain;h=6f3c2ad9789bf9c43d2a9fcb8e47e02f1469b3f0;p=emacs.git (hide-sublevels): No need for condition-case. Don't call show-children if levels is 0. No need to check eob in while condition. Delete spurious setq of `first'. --- diff --git a/lisp/textmodes/ooutline.el b/lisp/textmodes/ooutline.el index 618507ae25d..9709fc0d309 100644 --- a/lisp/textmodes/ooutline.el +++ b/lisp/textmodes/ooutline.el @@ -372,20 +372,17 @@ while if FLAG is `\\^M' (control-M) the text is hidden." (setq levels (1- levels)) (save-excursion (goto-char (point-min)) - (condition-case nil - ;; Keep advancing to the next top-level heading. - (while (progn (or (and (bobp) (outline-on-heading-p)) - (outline-next-heading)) - (not (eobp))) - (setq first nil) - (let ((end (save-excursion (outline-end-of-subtree) (point)))) - ;; Hide everything under that. - (outline-flag-region (point) end ?\^M) - ;; Show the first LEVELS levels under that. - (show-children levels) - ;; Move to the next, since we already found it. - (goto-char end))) - (error nil)))) + ;; Keep advancing to the next top-level heading. + (while (or (and (bobp) (outline-on-heading-p)) + (outline-next-heading)) + (let ((end (save-excursion (outline-end-of-subtree) (point)))) + ;; Hide everything under that. + (outline-flag-region (point) end ?\^M) + ;; Show the first LEVELS levels under that. + (if (> levels 1) + (show-children levels)) + ;; Move to the next, since we already found it. + (goto-char end))))) (defun hide-other () "Hide everything except for the current body and the parent headings."