From 90fce23f245ea985bab701bb6f3dadf82408007e Mon Sep 17 00:00:00 2001 From: Matthias Bolte Date: Tue, 18 May 2010 17:37:45 +0200 Subject: [PATCH] esx: Allow esxVI_X_DynamicCast to be called successfully on X objects This semantic will be used in the ESX storage driver. --- src/esx/esx_vi_types.c | 16 +++++++++------- 1 file changed, 9 insertions(+), 7 deletions(-) diff --git a/src/esx/esx_vi_types.c b/src/esx/esx_vi_types.c index 7d2c02cda9..de2839f65a 100644 --- a/src/esx/esx_vi_types.c +++ b/src/esx/esx_vi_types.c @@ -540,6 +540,13 @@ +#define ESX_VI__TEMPLATE__DYNAMIC_CAST__ACCEPT(__type) \ + if (((esxVI_Object *)item)->_type == esxVI_Type_##__type) { \ + return item; \ + } + + + #define ESX_VI__TEMPLATE__DYNAMIC_CAST(__type, _accept) \ esxVI_##__type * \ esxVI_##__type##_DynamicCast(void *item) \ @@ -550,6 +557,8 @@ return NULL; \ } \ \ + ESX_VI__TEMPLATE__DYNAMIC_CAST__ACCEPT(__type) \ + \ _accept \ \ return NULL; \ @@ -557,13 +566,6 @@ -#define ESX_VI__TEMPLATE__DYNAMIC_CAST__ACCEPT(__type) \ - if (((esxVI_Object *)item)->_type == esxVI_Type_##__type) { \ - return item; \ - } - - - #define ESX_VI__TEMPLATE__DYNAMIC_SERIALIZE(__type, _dispatch, _serialize) \ ESX_VI__TEMPLATE__SERIALIZE_EXTRA(__type, \ ESX_VI__TEMPLATE__DISPATCH(__type, _dispatch, -1), \