diff options
author | Ludovic Courtès <ludo@gnu.org> | 2011-11-20 01:10:58 +0100 |
---|---|---|
committer | Ludovic Courtès <ludo@gnu.org> | 2011-11-20 01:10:58 +0100 |
commit | 8071964943e23700cfe1095ba0f5e3c99f590dee (patch) | |
tree | 3ed067e04e620eb013fb26f9f7de5863bb6c9eeb /doc/ref/api-data.texi | |
parent | 7f622b82a2ada4af1f78e27d1ef9ad1498305287 (diff) | |
download | guile-8071964943e23700cfe1095ba0f5e3c99f590dee.tar.gz |
Allow overlapping regions to be passed to `bytevector-copy!'.
Reported by Dmitry Chestnykh <dmitry@codingrobots.com>.
Fixes <http://debbugs.gnu.org/10070>.
* libguile/bytevectors.c (scm_bytevector_copy_x): Use `memmove', not
`memcpy'.
* test-suite/tests/bytevectors.test ("2.2 General
Operations")["bytevector-copy! overlapping"]: New test.
* doc/ref/api-data.texi (Bytevector Manipulation): Mention possible
overlapping.
Diffstat (limited to 'doc/ref/api-data.texi')
-rw-r--r-- | doc/ref/api-data.texi | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/doc/ref/api-data.texi b/doc/ref/api-data.texi index f9b39b61d..5017165c0 100644 --- a/doc/ref/api-data.texi +++ b/doc/ref/api-data.texi @@ -4546,7 +4546,8 @@ Fill bytevector @var{bv} with @var{fill}, a byte. @deffnx {C Function} scm_bytevector_copy_x (source, source_start, target, target_start, len) Copy @var{len} bytes from @var{source} into @var{target}, starting reading from @var{source-start} (a positive index within @var{source}) -and start writing at @var{target-start}. +and start writing at @var{target-start}. It is permitted for the +@var{source} and @var{target} regions to overlap. @end deffn @deffn {Scheme Procedure} bytevector-copy bv |