[libvirt] [PATCH] qemuDomainCleanupRemove: s/memmove/VIR_DELETE_ELEMENT_INPLACE/
Daniel P. Berrange
berrange at redhat.com
Thu Oct 17 13:38:51 UTC 2013
On Thu, Oct 17, 2013 at 03:33:52PM +0200, Michal Privoznik wrote:
> The last argument of memmove is the amount of bytes to be moved. The
> amount is in Bytes. We are moving some void pointers around. However,
> since sizeof(void *) is not Byte on any architecture, we've got the
> arithmetic wrong.
>
> Signed-off-by: Michal Privoznik <mprivozn at redhat.com>
> ---
> src/qemu/qemu_domain.c | 9 +++------
> 1 file changed, 3 insertions(+), 6 deletions(-)
>
> diff --git a/src/qemu/qemu_domain.c b/src/qemu/qemu_domain.c
> index d054d64..b8aec2d 100644
> --- a/src/qemu/qemu_domain.c
> +++ b/src/qemu/qemu_domain.c
> @@ -2235,12 +2235,9 @@ qemuDomainCleanupRemove(virDomainObjPtr vm,
> VIR_DEBUG("vm=%s, cb=%p", vm->def->name, cb);
>
> for (i = 0; i < priv->ncleanupCallbacks; i++) {
> - if (priv->cleanupCallbacks[i] == cb) {
> - memmove(priv->cleanupCallbacks + i,
> - priv->cleanupCallbacks + i + 1,
> - priv->ncleanupCallbacks - i - 1);
> - priv->ncleanupCallbacks--;
> - }
> + if (priv->cleanupCallbacks[i] == cb)
> + VIR_DELETE_ELEMENT_INPLACE(priv->cleanupCallbacks,
> + i, priv->ncleanupCallbacks);
> }
>
> VIR_SHRINK_N(priv->cleanupCallbacks,
ACK
Daniel
--
|: http://berrange.com -o- http://www.flickr.com/photos/dberrange/ :|
|: http://libvirt.org -o- http://virt-manager.org :|
|: http://autobuild.org -o- http://search.cpan.org/~danberr/ :|
|: http://entangle-photo.org -o- http://live.gnome.org/gtk-vnc :|
More information about the libvir-list
mailing list