x86/smbios: Return index 0 for empty strings
Section 6.1.3 (Text Strings) of the SMBIOS specification states: If a string field references no string, a null (0) is placed in that string field. Change smbios_add_string() to do that. Change-Id: I9c28cb89dcfe2c8ef2366c23ee6203e15b7c2513 Signed-off-by: Ben Gardner <gardner.ben@gmail.com> Reviewed-on: https://review.coreboot.org/12697 Tested-by: build bot (Jenkins) Reviewed-by: Stefan Reinauer <stefan.reinauer@coreboot.org>
This commit is contained in:
parent
6f656138a6
commit
6b07cba70f
|
@ -46,6 +46,13 @@ int smbios_add_string(char *start, const char *str)
|
||||||
int i = 1;
|
int i = 1;
|
||||||
char *p = start;
|
char *p = start;
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Return 0 as required for empty strings.
|
||||||
|
* See Section 6.1.3 "Text Strings" of the SMBIOS specification.
|
||||||
|
*/
|
||||||
|
if (*str == '\0')
|
||||||
|
return 0;
|
||||||
|
|
||||||
for(;;) {
|
for(;;) {
|
||||||
if (!*p) {
|
if (!*p) {
|
||||||
strcpy(p, str);
|
strcpy(p, str);
|
||||||
|
|
Loading…
Reference in New Issue