Skip to content

Commit ad19535

Browse files
committed
test: Don't read data on variable get failure
Signed-off-by: Tu Dinh <ngoc-tu.dinh@vates.tech>
1 parent 5d03471 commit ad19535

File tree

1 file changed

+14
-2
lines changed

1 file changed

+14
-2
lines changed

test.c

Lines changed: 14 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -425,8 +425,20 @@ static EFI_STATUS call_get_variable_data(UINT32 version, const dstring *name,
425425
call_get_variable(version, name, guid, avail, at_runtime);
426426

427427
status = unserialize_uintn(&ptr);
428-
unserialize_uint32(&ptr); /* attr */
429-
*data = unserialize_data(&ptr, len, BSIZ);
428+
switch (status) {
429+
case EFI_SUCCESS:
430+
unserialize_uint32(&ptr); /* attr */
431+
*data = unserialize_data(&ptr, len, BSIZ);
432+
break;
433+
case EFI_BUFFER_TOO_SMALL:
434+
*data = NULL;
435+
*len = unserialize_uintn(&ptr);
436+
break;
437+
default:
438+
*data = NULL;
439+
*len = 0;
440+
break;
441+
}
430442
return status;
431443
}
432444

0 commit comments

Comments
 (0)