diff --git a/src/xen/xs_internal.c b/src/xen/xs_internal.c index 1ca3da06e91fa19aa70ee177bdd62145f7bfc907..620c482a78ebf94d71b29091577479593d8d09ee 100644 --- a/src/xen/xs_internal.c +++ b/src/xen/xs_internal.c @@ -1,7 +1,7 @@ /* * xs_internal.c: access to Xen Store * - * Copyright (C) 2006, 2009 Red Hat, Inc. + * Copyright (C) 2006, 2009-2010 Red Hat, Inc. * * See COPYING.LIB for the License of this software * @@ -1367,6 +1367,9 @@ int xenStoreDomainIntroduced(virConnectPtr conn, retry: new_domain_cnt = xenStoreNumOfDomains(conn); + if (new_domain_cnt < 0) + return -1; + if( VIR_ALLOC_N(new_domids,new_domain_cnt) < 0 ) { virReportOOMError(NULL); return -1; @@ -1447,6 +1450,8 @@ int xenStoreDomainReleased(virConnectPtr conn, retry: new_domain_cnt = xenStoreNumOfDomains(conn); + if (new_domain_cnt < 0) + return -1; if( VIR_ALLOC_N(new_domids,new_domain_cnt) < 0 ) { virReportOOMError(NULL);