Mercurial > emacs
changeset 32090:d8e7d91d131a
(Narrowing): Get rid of warning about now-fixed save-restriction bug.
author | Miles Bader <miles@gnu.org> |
---|---|
date | Tue, 03 Oct 2000 01:56:15 +0000 |
parents | 15b8a53f1d7a |
children | 0c00f9d38595 |
files | lispref/positions.texi |
diffstat | 1 files changed, 1 insertions(+), 24 deletions(-) [+] |
line wrap: on
line diff
--- a/lispref/positions.texi Tue Oct 03 01:55:27 2000 +0000 +++ b/lispref/positions.texi Tue Oct 03 01:56:15 2000 +0000 @@ -1,6 +1,6 @@ @c -*-texinfo-*- @c This is part of the GNU Emacs Lisp Reference Manual. -@c Copyright (C) 1990, 1991, 1992, 1993, 1994, 1995, 1998, 1999 +@c Copyright (C) 1990, 1991, 1992, 1993, 1994, 1995, 1998, 1999, 2000 @c Free Software Foundation, Inc. @c See the file elisp.texi for copying conditions. @setfilename ../info/positions @@ -911,29 +911,6 @@ value were outside the limits of the temporary narrowing, this would fail to restore it accurately. -The @code{save-restriction} special form records the values of the -beginning and end of the accessible portion as distances from the -beginning and end of the buffer. In other words, it records the amount -of inaccessible text before and after the accessible portion. - -This method yields correct results if @var{body} does further narrowing. -However, @code{save-restriction} can become confused if the body widens -and then makes changes outside the range of the saved narrowing. When -this is what you want to do, @code{save-restriction} is not the right -tool for the job. Here is what you must use instead: - -@example -@group -(let ((beg (point-min-marker)) - (end (point-max-marker))) - (unwind-protect - (progn @var{body}) - (save-excursion - (set-buffer (marker-buffer beg)) - (narrow-to-region beg end)))) -@end group -@end example - Here is a simple example of correct use of @code{save-restriction}: @example