[libvirt] [PATCH] xenapi: Check for valid private data in xenapiSessionErrorHandle
Daniel P. Berrange
berrange at redhat.com
Mon Mar 15 15:27:06 UTC 2010
On Sun, Mar 14, 2010 at 10:08:05PM +0100, Matthias Bolte wrote:
> ---
> src/xenapi/xenapi_utils.c | 8 ++++----
> 1 files changed, 4 insertions(+), 4 deletions(-)
>
> diff --git a/src/xenapi/xenapi_utils.c b/src/xenapi/xenapi_utils.c
> index 4b9a6d8..bfd53ed 100644
> --- a/src/xenapi/xenapi_utils.c
> +++ b/src/xenapi/xenapi_utils.c
> @@ -374,12 +374,12 @@ xenapiSessionErrorHandle(virConnectPtr conn, virErrorNumber errNum,
> const char *buf, const char *filename, const char *func,
> size_t lineno)
> {
> - xen_session *session = ((struct _xenapiPrivate *)(conn->privateData))->session;
> + struct _xenapiPrivate *priv = conn->privateData;
>
> - if (buf == NULL) {
> - char *ret = returnErrorFromSession(session);
> + if (buf == NULL && priv != NULL && priv->session != NULL) {
> + char *ret = returnErrorFromSession(priv->session);
> virReportErrorHelper(conn, VIR_FROM_XENAPI, errNum, filename, func, lineno, _("%s"), ret);
> - xen_session_clear_error(session);
> + xen_session_clear_error(priv->session);
> VIR_FREE(ret);
> } else {
> virReportErrorHelper(conn, VIR_FROM_XENAPI, errNum, filename, func, lineno, _("%s"), buf);
ACK
Daniel
--
|: Red Hat, Engineering, London -o- http://people.redhat.com/berrange/ :|
|: http://libvirt.org -o- http://virt-manager.org -o- http://deltacloud.org :|
|: http://autobuild.org -o- http://search.cpan.org/~danberr/ :|
|: GnuPG: 7D3B9505 -o- F3C9 553F A1DA 4AC2 5648 23C1 B3DF F742 7D3B 9505 :|
More information about the libvir-list
mailing list