[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: `save-excursion' defeated by `set-buffer'
From: |
Stefan Monnier |
Subject: |
Re: `save-excursion' defeated by `set-buffer' |
Date: |
Thu, 10 Mar 2011 20:28:07 -0500 |
User-agent: |
Gnus/5.13 (Gnus v5.13) Emacs/24.0.50 (gnu/linux) |
>> The difference between save-excursion and save-current-buffer is that
>> the first doesn't just save&restore the current buffer but also "point&
>> mark". But if you do `set-buffer' right after save-excursion then most
>> likely you will change neither point nor mark in the original buffer, so
>> the extra work performed by save-excursion compared to
>> save-current-buffer will be useless.
>> Now that's just a waste of resources but is otherwise harmless.
>>
>> Unless of course `blub' is already the current buffer to start with.
>>
>> I.e. whether point movement in "..." is undone by save-excursion will
>> depend dynamically upon whether the current buffer happens to be `blub',
>> which leads to subtle bugs. Hence the warning.
> Thanks, this warning goes away if body is wrapped with a let:
> (save-excursion
> (let ()
> (set-buffer blub)
> ...
> ))
I see you apparently didn't understand much of what I wrote :-(
Stefan
- Re: `save-excursion' defeated by `set-buffer', Uday Reddy, 2011/03/02
- Re: `save-excursion' defeated by `set-buffer', Stefan Monnier, 2011/03/04
- Re: `save-excursion' defeated by `set-buffer', Andreas Röhler, 2011/03/10
- Re: `save-excursion' defeated by `set-buffer', Leo, 2011/03/10
- Re: `save-excursion' defeated by `set-buffer',
Stefan Monnier <=
- Re: `save-excursion' defeated by `set-buffer', Andreas Röhler, 2011/03/11
- Message not available
- Re: `save-excursion' defeated by `set-buffer', David Kastrup, 2011/03/11
- Re: `save-excursion' defeated by `set-buffer', Andreas Röhler, 2011/03/11
- Message not available
- Re: `save-excursion' defeated by `set-buffer', David Kastrup, 2011/03/11
- Message not available
- Re: `save-excursion' defeated by `set-buffer', Stefan Monnier, 2011/03/11
- Re: `save-excursion' defeated by `set-buffer', Eli Zaretskii, 2011/03/12
- Re: `save-excursion' defeated by `set-buffer', Andreas Röhler, 2011/03/12
- RE: `save-excursion' defeated by `set-buffer', Drew Adams, 2011/03/12
- Re: `save-excursion' defeated by `set-buffer', Eli Zaretskii, 2011/03/12
- RE: `save-excursion' defeated by `set-buffer', Drew Adams, 2011/03/12