From 5198c2542a6041f03e5ba345223435a0de15dc04 Mon Sep 17 00:00:00 2001 From: Jiri Denemark Date: Mon, 25 Oct 2021 16:30:41 +0200 Subject: [PATCH] storage_file: Compute QCOW2 cluster size as ULL While the QCOW2 cluster size is represented in only 4 bits in the QCOW2 header and thus 1 << cluster_size cannot overflow int, qcow2GetClusterSize is supposed to return unsigned long long so we can just compute the result as ULL rather than computing it as int and promoting to unsigned long long. Signed-off-by: Jiri Denemark Reviewed-by: Pavel Hrdina --- src/storage_file/storage_file_probe.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/storage_file/storage_file_probe.c b/src/storage_file/storage_file_probe.c index f5bb8b7dbb..dc438a5e5d 100644 --- a/src/storage_file/storage_file_probe.c +++ b/src/storage_file/storage_file_probe.c @@ -487,7 +487,7 @@ qcow2GetClusterSize(const char *buf, clusterBits = virReadBufInt32BE(buf + QCOWX_HDR_CLUSTER_BITS_OFFSET); if (clusterBits > 0) - return 1 << clusterBits; + return 1ULL << clusterBits; return 0; } -- 2.47.2