From e84e5aa3df922157ba9da842a4a9dc3c1b149d82 Mon Sep 17 00:00:00 2001 From: Peter Krempa Date: Tue, 21 Apr 2015 17:35:23 +0200 Subject: [PATCH] util: storage: Fix possible crash when source path is NULL Some storage protocols allow to have the @path field in struct virStorageSource set to NULL. Add NULLSTR() wrappers to handle this possibility until I finish the storage source error formatter. (cherry picked from commit 62a61d583c65fb5e4e56f49af33f926b6a0cba6e) --- src/util/virstoragefile.c | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/src/util/virstoragefile.c b/src/util/virstoragefile.c index 78a7a9f8b9..2e0d97f08a 100644 --- a/src/util/virstoragefile.c +++ b/src/util/virstoragefile.c @@ -1391,20 +1391,21 @@ virStorageFileChainLookup(virStorageSourcePtr chain, if (idx) { virReportError(VIR_ERR_INVALID_ARG, _("could not find backing store %u in chain for '%s'"), - idx, start); + idx, NULLSTR(start)); } else if (name) { if (startFrom) virReportError(VIR_ERR_INVALID_ARG, _("could not find image '%s' beneath '%s' in " - "chain for '%s'"), name, startFrom->path, start); + "chain for '%s'"), name, NULLSTR(startFrom->path), + NULLSTR(start)); else virReportError(VIR_ERR_INVALID_ARG, _("could not find image '%s' in chain for '%s'"), - name, start); + name, NULLSTR(start)); } else { virReportError(VIR_ERR_INVALID_ARG, _("could not find base image in chain for '%s'"), - start); + NULLSTR(start)); } *parent = NULL; return NULL;