| Subject: | bug#716: Bug in buffer-swap-text |
|---|---|
| From: | Jason Rumney |
| Date: | Wed, 24 Dec 2008 07:15:26 +0800 |
| Newsgroups: | gnu.emacs.bug |
Stefan Monnier wrote: This removes the consistency check, without which we would have taken much longer to find this problem, as Emacs would not have aborted when no bloc could be found, and the problem would have been memory corruption later when that bloc of memory was moved and the wrong pointer updated.Your analysis sounds right, thank you. I'd suggest to use another r_alloc primitve, something like r_alloc_reset_variable, so you could do r_alloc_reset_variable(¤t_buffer->own_text.beg); r_alloc_reset_variable(&other_buffer->own_text.beg); after the swap. It could use the untested patch below. WDYT? === modified file 'src/ralloc.c' --- src/ralloc.c 2008-11-21 19:14:07 +0000 +++ src/ralloc.c 2008-12-23 17:23:02 +0000 @@ -402,7 +402,7 @@while (p != NIL_BLOC) |
| <Prev in Thread] | Current Thread | [Next in Thread> |
|---|---|---|
| ||
| Previous by Date: | bug#1672: we should add an emacs/.dir-locals.el, Juri Linkov |
|---|---|
| Next by Date: | bug#1672: marked as done (we should add an emacs/.dir-locals.el), Emacs bug Tracking System |
| Previous by Thread: | bug#716: Bug in buffer-swap-text, Stefan Monnier |
| Next by Thread: | bug#716: Bug in buffer-swap-text, jasonr |
| Indexes: | [Date] [Thread] [Top] [All Lists] |