diff --git a/pkg/multicloud/openstack/openstack.go b/pkg/multicloud/openstack/openstack.go index 35493bd695..7d7c318023 100644 --- a/pkg/multicloud/openstack/openstack.go +++ b/pkg/multicloud/openstack/openstack.go @@ -161,11 +161,13 @@ type OpenstackError struct { } func (ce *OpenstackError) ParseErrorFromJsonResponse(statusCode int, body jsonutils.JSONObject) error { - body.Unmarshal(ce) + if body != nil { + body.Unmarshal(ce) + } if ce.Code == 0 { ce.Code = statusCode } - if len(ce.Details) == 0 { + if len(ce.Details) == 0 && body != nil { ce.Details = body.String() } if len(ce.Class) == 0 {