]> wimlib.net Git - wimlib/blobdiff - src/xml.c
Fix memcpy()s with overlapping buffers
[wimlib] / src / xml.c
index ca2ec3e76ec49df883633ed692a9f3cd9001e267..9b161c2838616f0d5261e18a0e69fd5eca345f82 100644 (file)
--- a/src/xml.c
+++ b/src/xml.c
@@ -952,9 +952,9 @@ void xml_delete_image(struct wim_info **wim_info_p, int image)
 
        destroy_image_info(&wim_info->images[image - 1]);
 
-       memcpy(&wim_info->images[image - 1],
-              &wim_info->images[image],
-              (wim_info->num_images - image) * sizeof(struct image_info));
+       memmove(&wim_info->images[image - 1],
+               &wim_info->images[image],
+               (wim_info->num_images - image) * sizeof(struct image_info));
 
        if (--wim_info->num_images == 0) {
                free_wim_info(wim_info);