aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorFredrik Bergroth2016-02-23 22:41:16 +1100
committerLars Ingebrigtsen2016-02-24 11:58:50 +1100
commit354f9f0fc6cc05ed98883447f9b2f37943d79160 (patch)
tree2c2c355f3894157e354d07d5390c7d4e1981a148 /src
parentc7b8194c04687cfb97c16180feb9f9c74d9fc848 (diff)
downloademacs-354f9f0fc6cc05ed98883447f9b2f37943d79160.tar.gz
emacs-354f9f0fc6cc05ed98883447f9b2f37943d79160.zip
Use memmove instead of memcpy on overlapping regions
* src/editfns.c (Ftranspose_regions): Regions may overlap, so use memmove instead of memcpy (bug#19213). Copyright-paperwork-exempt: yes
Diffstat (limited to 'src')
-rw-r--r--src/editfns.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/src/editfns.c b/src/editfns.c
index bd70f0a6859..2f46cfeb2b4 100644
--- a/src/editfns.c
+++ b/src/editfns.c
@@ -4990,7 +4990,7 @@ Transposing beyond buffer boundaries is an error. */)
4990 start2_addr = BYTE_POS_ADDR (start2_byte); 4990 start2_addr = BYTE_POS_ADDR (start2_byte);
4991 memcpy (temp, start1_addr, len1_byte); 4991 memcpy (temp, start1_addr, len1_byte);
4992 memcpy (start1_addr, start2_addr, len2_byte); 4992 memcpy (start1_addr, start2_addr, len2_byte);
4993 memcpy (start1_addr + len2_byte, start1_addr + len1_byte, len_mid); 4993 memmove (start1_addr + len2_byte, start1_addr + len1_byte, len_mid);
4994 memcpy (start1_addr + len2_byte + len_mid, temp, len1_byte); 4994 memcpy (start1_addr + len2_byte + len_mid, temp, len1_byte);
4995 SAFE_FREE (); 4995 SAFE_FREE ();
4996 4996