File U_03-Use-unpackstr_xmalloc-instead.patch of Package slurm.32299

From: Tim Wickberg <tim@schedmd.com>
Date: Wed Nov 29 10:35:59 2023 -0700
Subject: [PATCH 3/28]Use unpackstr_xmalloc() instead.
Patch-mainline: Upstream
Git-repo: https://github.com/SchedMD/slurm
Git-commit: 38a142d2a5eaf8acf364d3dfd8c921e5e683477d
References: bsc#1218046, bsc#1218050, bsc#1218051, bsc#1218053
Signed-off-by: Egbert Eich <eich@suse.de>

No RPC change. Converted in 23.02 by 552606a496.

Signed-off-by: Egbert Eich <eich@suse.com>
---
 src/common/pack.c | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/src/common/pack.c b/src/common/pack.c
index 2d03b9702c..ed30c35f73 100644
--- a/src/common/pack.c
+++ b/src/common/pack.c
@@ -1119,7 +1119,9 @@ int unpackstr_array(char ***valp, uint32_t * size_valp, Buf buffer)
 	else if (*size_valp > 0) {
 		*valp = xmalloc_nz(sizeof(char *) * (*size_valp + 1));
 		for (i = 0; i < *size_valp; i++) {
-			if (unpackmem_xmalloc(&(*valp)[i], &uint32_tmp, buffer))
+			if (unpackstr_xmalloc(&(*valp)[i], &uint32_tmp, buffer)) {
+				*size_valp = 0;
+				xfree_array(*valp);
 				return SLURM_ERROR;
 		}
 		/*
openSUSE Build Service is sponsored by