diff options
| author | Fredrik Bergroth | 2016-02-23 22:41:16 +1100 |
|---|---|---|
| committer | Lars Ingebrigtsen | 2016-02-24 11:58:50 +1100 |
| commit | 354f9f0fc6cc05ed98883447f9b2f37943d79160 (patch) | |
| tree | 2c2c355f3894157e354d07d5390c7d4e1981a148 /src | |
| parent | c7b8194c04687cfb97c16180feb9f9c74d9fc848 (diff) | |
| download | emacs-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.c | 2 |
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 | ||