aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorPaul Eggert2011-07-14 09:18:31 -0700
committerPaul Eggert2011-07-14 09:18:31 -0700
commit5023daec057b530a4dcd64d6fc6a3c2e36b925a5 (patch)
tree25c6393f130ff91c0b89c0a51eceb1b38a7d38f4 /src
parent5e927815391bbb3a6e25b9bd65a7c59f1a5216ef (diff)
parent7509a874332af5ea1ce20a36f7dccd207b5090c3 (diff)
downloademacs-5023daec057b530a4dcd64d6fc6a3c2e36b925a5.tar.gz
emacs-5023daec057b530a4dcd64d6fc6a3c2e36b925a5.zip
Merge from trunk.
Diffstat (limited to 'src')
-rw-r--r--src/ChangeLog12
-rw-r--r--src/editfns.c7
-rw-r--r--src/indent.c14
3 files changed, 25 insertions, 8 deletions
diff --git a/src/ChangeLog b/src/ChangeLog
index f1670d1db06..e0de5edda9c 100644
--- a/src/ChangeLog
+++ b/src/ChangeLog
@@ -119,7 +119,7 @@
119 * bidi.c: Integer signedness and overflow fixes. 119 * bidi.c: Integer signedness and overflow fixes.
120 (bidi_cache_idx, bidi_cache_last_idx, bidi_cache_fetch_state) 120 (bidi_cache_idx, bidi_cache_last_idx, bidi_cache_fetch_state)
121 (bidi_cache_search, bidi_cache_find_level_change) 121 (bidi_cache_search, bidi_cache_find_level_change)
122p (bidi_cache_iterator_state, bidi_cache_find) 122 (bidi_cache_iterator_state, bidi_cache_find)
123 (bidi_find_other_level_edge, bidi_dump_cached_states): 123 (bidi_find_other_level_edge, bidi_dump_cached_states):
124 Don't arbitrarily limit cache indexes to int; use ptrdiff_t instead. 124 Don't arbitrarily limit cache indexes to int; use ptrdiff_t instead.
125 (bidi_cache_size): Use ptrdiff_t rather than size_t, as we prefer 125 (bidi_cache_size): Use ptrdiff_t rather than size_t, as we prefer
@@ -193,6 +193,16 @@ p (bidi_cache_iterator_state, bidi_cache_find)
193 Use EMACS_INT, not EMACS_UINT, for sizes. The code works equally 193 Use EMACS_INT, not EMACS_UINT, for sizes. The code works equally
194 well either way, and we prefer signed to unsigned. 194 well either way, and we prefer signed to unsigned.
195 195
1962011-07-14 Lars Magne Ingebrigtsen <larsi@gnus.org>
197
198 * editfns.c (Fdelete_region): Clarify the use of the named
199 parameters (bug#6788).
200
2012011-07-14 Martin Rudalics <rudalics@gmx.at>
202
203 * indent.c (Fvertical_motion): Set and restore w->pointm when
204 saving and restoring the window's buffer (Bug#9006).
205
1962011-07-13 Lars Magne Ingebrigtsen <larsi@gnus.org> 2062011-07-13 Lars Magne Ingebrigtsen <larsi@gnus.org>
197 207
198 * editfns.c (Fstring_to_char): Clarify just what is returned 208 * editfns.c (Fstring_to_char): Clarify just what is returned
diff --git a/src/editfns.c b/src/editfns.c
index 6aba319d5b2..18fefa5e3b5 100644
--- a/src/editfns.c
+++ b/src/editfns.c
@@ -3160,10 +3160,9 @@ It returns the number of characters changed. */)
3160} 3160}
3161 3161
3162DEFUN ("delete-region", Fdelete_region, Sdelete_region, 2, 2, "r", 3162DEFUN ("delete-region", Fdelete_region, Sdelete_region, 2, 2, "r",
3163 doc: /* Delete the text between point and mark. 3163 doc: /* Delete the text between START and END.
3164 3164If called interactively, delete the region between point and mark.
3165When called from a program, expects two arguments, 3165This command deletes buffer text without modifying the kill ring. */)
3166positions (integers or markers) specifying the stretch to be deleted. */)
3167 (Lisp_Object start, Lisp_Object end) 3166 (Lisp_Object start, Lisp_Object end)
3168{ 3167{
3169 validate_region (&start, &end); 3168 validate_region (&start, &end);
diff --git a/src/indent.c b/src/indent.c
index 5c5966175aa..02eeb7f17d4 100644
--- a/src/indent.c
+++ b/src/indent.c
@@ -1985,7 +1985,8 @@ whether or not it is currently displayed in some window. */)
1985 struct text_pos pt; 1985 struct text_pos pt;
1986 struct window *w; 1986 struct window *w;
1987 Lisp_Object old_buffer; 1987 Lisp_Object old_buffer;
1988 struct gcpro gcpro1; 1988 EMACS_INT old_charpos, old_bytepos;
1989 struct gcpro gcpro1, gcpro2, gcpro3;
1989 Lisp_Object lcols = Qnil; 1990 Lisp_Object lcols = Qnil;
1990 double cols IF_LINT (= 0); 1991 double cols IF_LINT (= 0);
1991 1992
@@ -2005,12 +2006,16 @@ whether or not it is currently displayed in some window. */)
2005 w = XWINDOW (window); 2006 w = XWINDOW (window);
2006 2007
2007 old_buffer = Qnil; 2008 old_buffer = Qnil;
2008 GCPRO1 (old_buffer); 2009 GCPRO3 (old_buffer, old_charpos, old_bytepos);
2009 if (XBUFFER (w->buffer) != current_buffer) 2010 if (XBUFFER (w->buffer) != current_buffer)
2010 { 2011 {
2011 /* Set the window's buffer temporarily to the current buffer. */ 2012 /* Set the window's buffer temporarily to the current buffer. */
2012 old_buffer = w->buffer; 2013 old_buffer = w->buffer;
2014 old_charpos = XMARKER (w->pointm)->charpos;
2015 old_bytepos = XMARKER (w->pointm)->bytepos;
2013 XSETBUFFER (w->buffer, current_buffer); 2016 XSETBUFFER (w->buffer, current_buffer);
2017 set_marker_both
2018 (w->pointm, w->buffer, BUF_PT (current_buffer), BUF_PT_BYTE (current_buffer));
2014 } 2019 }
2015 2020
2016 if (noninteractive) 2021 if (noninteractive)
@@ -2131,7 +2136,10 @@ whether or not it is currently displayed in some window. */)
2131 } 2136 }
2132 2137
2133 if (BUFFERP (old_buffer)) 2138 if (BUFFERP (old_buffer))
2134 w->buffer = old_buffer; 2139 {
2140 w->buffer = old_buffer;
2141 set_marker_both (w->pointm, w->buffer, old_charpos, old_bytepos);
2142 }
2135 2143
2136 RETURN_UNGCPRO (make_number (it.vpos)); 2144 RETURN_UNGCPRO (make_number (it.vpos));
2137} 2145}