OSDN Git Service

xen-block: Avoid leaks on new error path
authorAnthony PERARD <anthony.perard@citrix.com>
Tue, 4 Jul 2023 17:18:19 +0000 (18:18 +0100)
committerAnthony PERARD <anthony.perard@citrix.com>
Tue, 1 Aug 2023 09:22:33 +0000 (10:22 +0100)
commitaa36243514a777f76c8b8a19b1f8a71f27ec6c78
tree683f4b72606fcdd253afc37405293802c80c67e1
parentace33a0e5a5191f79899397adb766dda7208cb93
xen-block: Avoid leaks on new error path

Commit 189829399070 ("xen-block: Use specific blockdev driver")
introduced a new error path, without taking care of allocated
resources.

So only allocate the qdicts after the error check, and free both
`filename` and `driver` when we are about to return and thus taking
care of both success and error path.

Coverity only spotted the leak of qdicts (*_layer variables).

Reported-by: Peter Maydell <peter.maydell@linaro.org>
Fixes: Coverity CID 15087221398649
Fixes: 189829399070 ("xen-block: Use specific blockdev driver")
Signed-off-by: Anthony PERARD <anthony.perard@citrix.com>
Reviewed-by: Paul Durrant <paul@xen.org>
Reviewed-by: Peter Maydell <peter.maydell@linaro.org>
Message-Id: <20230704171819.42564-1-anthony.perard@citrix.com>
Signed-off-by: Anthony PERARD <anthony.perard@citrix.com>
hw/block/xen-block.c