summaryrefslogtreecommitdiff
path: root/src/lisp.h
diff options
context:
space:
mode:
authorEli Zaretskii <eliz@gnu.org>2016-07-19 18:59:41 +0300
committerEli Zaretskii <eliz@gnu.org>2016-07-19 18:59:41 +0300
commit00b6647651e4276ac5c47aa33e0fec6726469bc7 (patch)
tree8e03635aac3f32b806b85e1a7bf976741d85cc30 /src/lisp.h
parent439f3c3e567692b6823923d569a06ac206d1c3be (diff)
downloademacs-00b6647651e4276ac5c47aa33e0fec6726469bc7.tar.gz
Fix 'transpose-regions' when LEAVE-MARKERS arg is non-nil
* src/insdel.c (adjust_markers_bytepos): New function. * src/lisp.h (adjust_markers_bytepos): Add prototype. * src/insdel.c (replace_range, replace_range_2): * src/editfns.c (Ftranspose_regions): Call adjust_markers_bytepos. (Bug#5131) * test/src/editfns-tests.el (transpose-test-reverse-word) (transpose-test-get-byte-positions): New functions. (transpose-ascii-regions-test) (transpose-nonascii-regions-test-1) (transpose-nonascii-regions-test-2): New tests.
Diffstat (limited to 'src/lisp.h')
-rw-r--r--src/lisp.h2
1 files changed, 2 insertions, 0 deletions
diff --git a/src/lisp.h b/src/lisp.h
index e0eb52a84ea..48c27281643 100644
--- a/src/lisp.h
+++ b/src/lisp.h
@@ -3528,6 +3528,8 @@ extern void adjust_after_insert (ptrdiff_t, ptrdiff_t, ptrdiff_t,
ptrdiff_t, ptrdiff_t);
extern void adjust_markers_for_delete (ptrdiff_t, ptrdiff_t,
ptrdiff_t, ptrdiff_t);
+extern void adjust_markers_bytepos (ptrdiff_t, ptrdiff_t,
+ ptrdiff_t, ptrdiff_t, int);
extern void replace_range (ptrdiff_t, ptrdiff_t, Lisp_Object, bool, bool, bool);
extern void replace_range_2 (ptrdiff_t, ptrdiff_t, ptrdiff_t, ptrdiff_t,
const char *, ptrdiff_t, ptrdiff_t, bool);