EFI_DEVICE_PATH_PROTOCOL *DevicePath;\r
\r
//\r
- // Make sure \r
+ // Make sure when ConfigHdr is NULL, StrBufferlen must be 0\r
//\r
ASSERT (!(ConfigHdr == NULL && *StrBufferLen != 0));\r
\r
// | 5 | 32 | 6 | NameStrLen*4 | 6 | DevicePathStrLen | 1 |\r
//\r
BufferSize = (5 + 32 + 6 + NameStrLen * 4 + 6 + DevicePathSize * 2 + 1) * sizeof (CHAR16);\r
- if (*StrBufferLen < BufferSize) {\r
+ if ((*StrBufferLen == 0) || *StrBufferLen < BufferSize) {\r
*StrBufferLen = BufferSize;\r
return EFI_BUFFER_TOO_SMALL;\r
}\r