diff --git a/src/common/slurm_protocol_pack.c b/src/common/slurm_protocol_pack.c index 81203c2ab6faa98a86b8a35ccffa1ffc11c9701d..cd42996e44f4a24734ce7c39b49c4e52f9bd0667 100644 --- a/src/common/slurm_protocol_pack.c +++ b/src/common/slurm_protocol_pack.c @@ -5391,8 +5391,9 @@ _unpack_job_info_msg(job_info_msg_t ** msg, Buf buffer, safe_unpack32(&((*msg)->record_count), buffer); safe_unpack_time(&((*msg)->last_update), buffer); - job = (*msg)->job_array = xmalloc(sizeof(job_info_t) * - (*msg)->record_count); + if ((*msg)->record_count) + job = (*msg)->job_array = xmalloc(sizeof(job_info_t) * + (*msg)->record_count); /* load individual job info */ for (i = 0; i < (*msg)->record_count; i++) { if (_unpack_job_info_members(&job[i], buffer,