On Tue, Feb 20, 2018 at 02:03:19PM -0500, John Ferlan wrote:
On 02/20/2018 12:08 PM, Daniel P. Berrangé wrote:
> Ensure all enum cases are listed in switch statements, or explicitly
> cast away enum type where we don't want to list all cases.
>
> Signed-off-by: Daniel P. Berrangé <berrange(a)redhat.com>
> ---
> src/esx/esx_driver.c | 1 +
> src/esx/esx_vi.c | 11 +++++++----
> src/esx/esx_vi_types.c | 9 +++++----
> 3 files changed, 13 insertions(+), 8 deletions(-)
>
> diff --git a/src/esx/esx_driver.c b/src/esx/esx_driver.c
> index f575362059..c5f04efa81 100644
> --- a/src/esx/esx_driver.c
> +++ b/src/esx/esx_driver.c
> @@ -3603,6 +3603,7 @@ esxDomainGetSchedulerParametersFlags(virDomainPtr domain,
> params[i].value.i = -3;
> break;
>
> + case esxVI_SharesLevel_Undefined:
> default:
> virReportError(VIR_ERR_INTERNAL_ERROR,
> _("Shares level has unknown value %d"),
Shouldn't this be:
virReportEnumRangeError(esxVI_SharesLevel, sharesInfo->level);
Yeah, I had only changed messages I added in v1, but thse can be touched
up too.
> diff --git a/src/esx/esx_vi.c b/src/esx/esx_vi.c
> index edf52ff828..103f726069 100644
> --- a/src/esx/esx_vi.c
> +++ b/src/esx/esx_vi.c
> @@ -483,7 +483,7 @@ esxVI_SharedCURL_Lock(CURL *handle ATTRIBUTE_UNUSED,
curl_lock_data data,
> size_t i;
> esxVI_SharedCURL *shared = userptr;
>
> - switch (data) {
> + switch ((int)data) {
> case CURL_LOCK_DATA_SHARE:
> i = 0;
> break;
> @@ -511,7 +511,7 @@ esxVI_SharedCURL_Unlock(CURL *handle ATTRIBUTE_UNUSED,
curl_lock_data data,
> size_t i;
> esxVI_SharedCURL *shared = userptr;
>
> - switch (data) {
> + switch ((int)data) {
> case CURL_LOCK_DATA_SHARE:
> i = 0;
> break;
> @@ -1563,6 +1563,7 @@ esxVI_Context_Execute(esxVI_Context *ctx, const char
*methodName,
>
> break;
>
> + case esxVI_Occurrence_Undefined:
> default:
> virReportError(VIR_ERR_INTERNAL_ERROR, "%s",
> _("Invalid argument (occurrence)"));
and:
virReportEnumRangeError(esxVI_Occurrence, occurrence);
> @@ -2280,9 +2281,11 @@ esxVI_LookupObjectContentByType(esxVI_Context *ctx,
> type, root->type);
> break;
>
> + case esxVI_Occurrence_None:
> + case esxVI_Occurrence_Undefined:
> default:
> - virReportError(VIR_ERR_INTERNAL_ERROR, "%s",
> - _("Invalid occurrence value"));
> + virReportError(VIR_ERR_INTERNAL_ERROR,
> + _("Invalid occurrence value %d"),
occurrence);
and:
virReportEnumRangeError(esxVI_Occurrence, occurrence);
> break;
> }
>
> diff --git a/src/esx/esx_vi_types.c b/src/esx/esx_vi_types.c
> index be35af861c..74183f8307 100644
> --- a/src/esx/esx_vi_types.c
> +++ b/
> @@ -544,7 +544,7 @@ VIR_LOG_INIT("esx.esx_vi_types");
>
> #define ESX_VI__TEMPLATE__DISPATCH(_actual_type, _actual_type_name, __type, \
> _dispatch, _error_return) \
> - switch (_actual_type) { \
> + switch ((int)_actual_type) { \
> _dispatch \
> \
> case esxVI_Type_##__type: \
> @@ -690,7 +690,7 @@ VIR_LOG_INIT("esx.esx_vi_types");
> return -1; \
> } \
> \
> - switch (type) { \
> + switch ((int)type) { \
> _dispatch \
> \
> case esxVI_Type_##__type: \
> @@ -967,7 +967,7 @@ esxVI_AnyType_DeepCopy(esxVI_AnyType **dest, esxVI_AnyType
*src)
> goto failure;
> }
>
> - switch (src->type) {
> + switch ((int)src->type) {
> case esxVI_Type_Boolean:
> (*dest)->boolean = src->boolean;
> break;
> @@ -1071,7 +1071,7 @@ esxVI_AnyType_Deserialize(xmlNodePtr node, esxVI_AnyType
**anyType)
> (*anyType)->_name = number; \
> } while (0)
>
> - switch ((*anyType)->type) {
> + switch ((int)(*anyType)->type) {
> case esxVI_Type_Boolean:
> if (STREQ((*anyType)->value, "true")) {
> (*anyType)->boolean = esxVI_Boolean_True;
> @@ -1876,6 +1876,7 @@ esxVI_VirtualMachinePowerState_ConvertToLibvirt
> case esxVI_VirtualMachinePowerState_Suspended:
> return VIR_DOMAIN_PAUSED;
>
> + case esxVI_VirtualMachinePowerState_Undefined:
Fix indent - off by 2.
Reviewed-by: John Ferlan <jferlan(a)redhat.com>
John
> default:
> return VIR_DOMAIN_NOSTATE;
> }
>
Regards,
Daniel
--
|:
https://berrange.com -o-
https://www.flickr.com/photos/dberrange :|
|:
https://libvirt.org -o-
https://fstop138.berrange.com :|
|:
https://entangle-photo.org -o-
https://www.instagram.com/dberrange :|