From 8192af65ef5d3f5f0aa6cd56939fb36a7687653b Mon Sep 17 00:00:00 2001 From: Qu Xuan Date: Thu, 3 Jun 2021 10:54:19 +0800 Subject: [PATCH] fix(host): avoid panic when params is nil --- pkg/hostman/guestman/guestman.go | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/pkg/hostman/guestman/guestman.go b/pkg/hostman/guestman/guestman.go index 07842949dc..27cc48d4cd 100644 --- a/pkg/hostman/guestman/guestman.go +++ b/pkg/hostman/guestman/guestman.go @@ -689,12 +689,13 @@ func (m *SGuestManager) GuestStart(ctx context.Context, sid string, body jsonuti guest.SaveDesc(desc) } if guest.IsStopped() { - var data *jsonutils.JSONDict - params, err := body.Get("params") - if err != nil { - data, _ = params.(*jsonutils.JSONDict) + data := struct { + Params *jsonutils.JSONDict + }{ + Params: jsonutils.NewDict(), } - guest.StartGuest(ctx, data) + body.Unmarshal(&data) + guest.StartGuest(ctx, data.Params) res := jsonutils.NewDict() res.Set("vnc_port", jsonutils.NewInt(0)) return res, nil