lscpu: fix NULL dereference

Fixes: https://github.com/karelzak/util-linux/issues/1401
Signed-off-by: Karel Zak <kzak@redhat.com>
This commit is contained in:
Karel Zak 2021-07-30 14:35:25 +02:00
parent 5cc37e883e
commit 0d7cef3ddb
2 changed files with 4 additions and 4 deletions

View File

@ -569,7 +569,7 @@ int lscpu_read_cpuinfo(struct lscpu_cxt *cxt)
/* Set the default type to CPUs which are missing (or not parsed)
* in cpuinfo */
ct = lscpu_cputype_get_default(cxt);
for (i = 0; i < cxt->npossibles; i++) {
for (i = 0; ct && i < cxt->npossibles; i++) {
struct lscpu_cpu *cpu = cxt->cpus[i];
if (cpu && !cpu->type)

View File

@ -991,7 +991,7 @@ static void print_summary(struct lscpu_cxt *cxt)
*(p - 2) = '\0';
add_summary_s(tb, sec, _("CPU op-mode(s):"), buf);
}
if (ct->addrsz)
if (ct && ct->addrsz)
add_summary_s(tb, sec, _("Address sizes:"), ct->addrsz);
#if !defined(WORDS_BIGENDIAN)
add_summary_s(tb, sec, _("Byte Order:"), "Little Endian");
@ -1033,9 +1033,9 @@ static void print_summary(struct lscpu_cxt *cxt)
sec = NULL;
/* Section: cpu type description */
if (ct->vendor)
if (ct && ct->vendor)
sec = add_summary_s(tb, NULL, _("Vendor ID:"), ct->vendor);
if (ct->bios_vendor)
if (ct && ct->bios_vendor)
add_summary_s(tb, sec, _("BIOS Vendor ID:"), ct->bios_vendor);
for (i = 0; i < cxt->ncputypes; i++)