提交 393cf4d6 编写于 作者: D Daniel P. Berrange

Stop calling virAllocN directly from ESX code

The ESX code has a method esxVI_Alloc which would call
virAllocN directly, instead of using the VIR_ALLOC_N
macro. Remove this method and make the callers just
use VIR_ALLOC as is normal practice.
Signed-off-by: NDaniel P. Berrange <berrange@redhat.com>
上级 ce78098e
......@@ -51,8 +51,14 @@
int \
esxVI_##_type##_Alloc(esxVI_##_type **ptrptr) \
{ \
return esxVI_Alloc((void **)ptrptr, sizeof(esxVI_##_type), \
__FILE__, __FUNCTION__, __LINE__); \
if (ptrptr == NULL || *ptrptr != NULL) { \
virReportError(VIR_ERR_INTERNAL_ERROR, "%s", _("Invalid argument")); \
return -1; \
} \
\
if (VIR_ALLOC(*ptrptr) < 0) \
return -1; \
return 0; \
}
......@@ -1735,21 +1741,6 @@ esxVI_List_Deserialize(xmlNodePtr node, esxVI_List **list,
* - 'get' functions get information from a local object
*/
int
esxVI_Alloc(void **ptrptr, size_t size, const char *file,
const char *function, size_t linenr)
{
if (ptrptr == NULL || *ptrptr != NULL) {
virReportError(VIR_ERR_INTERNAL_ERROR, "%s", _("Invalid argument"));
return -1;
}
return virAllocN(ptrptr, size, 1, true, VIR_FROM_THIS,
file, function, linenr);
}
int
esxVI_BuildSelectSet(esxVI_SelectionSpec **selectSet,
const char *name, const char *type,
......
......@@ -330,9 +330,6 @@ int esxVI_List_Deserialize(xmlNodePtr node, esxVI_List **list,
* - 'get' functions get information from a local object
*/
int esxVI_Alloc(void **ptrptr, size_t size, const char *file,
const char *function, size_t linenr);
int esxVI_BuildSelectSet
(esxVI_SelectionSpec **selectSet, const char *name,
const char *type, const char *path, const char *selectSetNames);
......
......@@ -43,10 +43,13 @@
int \
esxVI_##__type##_Alloc(esxVI_##__type **ptrptr) \
{ \
if (esxVI_Alloc((void **)ptrptr, sizeof(esxVI_##__type), \
__FILE__, __FUNCTION__, __LINE__) < 0) { \
return -1; \
} \
if (ptrptr == NULL || *ptrptr != NULL) { \
virReportError(VIR_ERR_INTERNAL_ERROR, "%s", _("Invalid argument")); \
return -1; \
} \
\
if (VIR_ALLOC(*ptrptr) < 0) \
return -1; \
\
(*ptrptr)->_type = esxVI_Type_##__type; \
\
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册