From ef498d99bb6d722d83ae026914dd4709bbe14caf Mon Sep 17 00:00:00 2001 From: George Dunlap Date: Wed, 6 Apr 2016 12:34:06 +0100 Subject: [PATCH] libxl: Fix uninitialized pointer when passing an empty cdrom Commit 3fec17d4bb56567d139d7806392f4d8702d3f6a7 introduced a bug where an empty cdrom would cause target_path to be uninitialized. Initialize target_path to NULL instead. The other option here would have been to set target_path to NULL only on the LIBXL_DISK_FORMAT_EMPTY path. That would potentially enable the compiler to catch future uninitialized paths, rather than having those paths (potentially) dereference a NULL pointer. But given that a bunch of our compilers failed to catch *this* uninitialized path, setting it to NULL at declaration seems the safer option for now. Reported-by: Andrew Cooper Signed-off-by: George Dunlap Reviewed-by: Andrew Cooper --- tools/libxl/libxl_dm.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tools/libxl/libxl_dm.c b/tools/libxl/libxl_dm.c index 5b79aa279f..eac5501c97 100644 --- a/tools/libxl/libxl_dm.c +++ b/tools/libxl/libxl_dm.c @@ -1307,7 +1307,7 @@ static int libxl__build_device_model_args_new(libxl__gc *gc, libxl__device_disk_dev_number(disks[i].vdev, &disk, &part); const char *format; char *drive; - const char *target_path; + const char *target_path = NULL; int colo_mode; if (dev_number == -1) { -- 2.30.2