summaryrefslogtreecommitdiff
path: root/doc/ref/api-data.texi
diff options
context:
space:
mode:
authorLudovic Courtès <ludo@gnu.org>2011-11-20 01:10:58 +0100
committerLudovic Courtès <ludo@gnu.org>2011-11-20 01:10:58 +0100
commit8071964943e23700cfe1095ba0f5e3c99f590dee (patch)
tree3ed067e04e620eb013fb26f9f7de5863bb6c9eeb /doc/ref/api-data.texi
parent7f622b82a2ada4af1f78e27d1ef9ad1498305287 (diff)
downloadguile-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.texi3
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