Cole Robinson wrote:
On 10/23/2009 07:01 AM, Chris Lalancette wrote:
> xenUnifiedDomainEventRegister() calls out to
> virDomainEventCallbackListAdd(), which increments the reference
> count on the connection. That is fine, but then
> xenUnifiedDomainEventRegister() increments the usage count again,
> leading to a usage count leak. Remove the increment in the xen
> register, and the UnrefConnect in the xen unregister.
>
> Signed-off-by: Chris Lalancette <clalance(a)redhat.com>
> ---
> src/xen/xen_driver.c | 6 ------
> 1 files changed, 0 insertions(+), 6 deletions(-)
>
> diff --git a/src/xen/xen_driver.c b/src/xen/xen_driver.c
> index 5273a11..f2744b0 100644
> --- a/src/xen/xen_driver.c
> +++ b/src/xen/xen_driver.c
> @@ -1502,9 +1502,6 @@ xenUnifiedDomainEventRegister (virConnectPtr conn,
> ret = virDomainEventCallbackListAdd(conn, priv->domainEventCallbacks,
> callback, opaque, freefunc);
>
> - if (ret == 0)
> - conn->refs++;
> -
> xenUnifiedUnlock(priv);
> return (ret);
> }
> @@ -1530,9 +1527,6 @@ xenUnifiedDomainEventDeregister (virConnectPtr conn,
> ret = virDomainEventCallbackListRemove(conn, priv->domainEventCallbacks,
> callback);
>
> - if (ret == 0)
> - virUnrefConnect(conn);
> -
> xenUnifiedUnlock(priv);
> return ret;
> }
ACK.
Thanks, committed.
--
Chris Lalancette