vsprintf: Handle NULL with %pU

At present a NULL pointer passed to printf for a %pU argument will cause
U-Boot to access memory at 0. Fix this by adding a check, and print
"(null)" instead.

Signed-off-by: Simon Glass <sjg@chromium.org>
Reviewed-by: Alexander Graf <agraf@suse.de>
[agraf: s/(null)/<NULL>/]
Signed-off-by: Alexander Graf <agraf@suse.de>
This commit is contained in:
Simon Glass 2018-06-18 08:08:20 -06:00 committed by Alexander Graf
parent 282a06cbca
commit d7ae1609a9

View file

@ -407,7 +407,10 @@ static char *uuid_string(char *buf, char *end, u8 *addr, int field_width,
break;
}
uuid_bin_to_str(addr, uuid, str_format);
if (addr)
uuid_bin_to_str(addr, uuid, str_format);
else
strcpy(uuid, "<NULL>");
return string(buf, end, uuid, field_width, precision, flags);
}