These seem like perfect examples to write host based unit tests for the bmpsupportlib. Then you could run all sorts of different bmp contents thru the lib routines.
Have you thought about adding that Thanks Sean ________________________________ From: [email protected] <[email protected]> on behalf of wenyi,xie via groups.io <[email protected]> Sent: Wednesday, August 17, 2022 7:26:07 PM To: [email protected] <[email protected]>; [email protected] <[email protected]>; [email protected] <[email protected]>; [email protected] <[email protected]>; [email protected] <[email protected]> Cc: [email protected] <[email protected]>; [email protected] <[email protected]> Subject: [edk2-devel] [PATCH EDK2 v2 1/1] MdeModulePkg/BaseBmpSupportLib: Fix ColorMap issue When BitPerPixel is 1,4,8, there should be a color map in bmp file. But if the format of bmp file is error, it maybe has no color map when BitPerPixel is 1,4,8. The condition checking now can not catch this issue. Cc: Jian J Wang <[email protected]> Cc: Liming Gao <[email protected]> Cc: Zhichao Gao <[email protected]> Cc: Ray Ni <[email protected]> Signed-off-by: Wenyi Xie <[email protected]> Reviewed-by: Liming Gao <[email protected]> --- MdeModulePkg/Library/BaseBmpSupportLib/BmpSupportLib.c | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/MdeModulePkg/Library/BaseBmpSupportLib/BmpSupportLib.c b/MdeModulePkg/Library/BaseBmpSupportLib/BmpSupportLib.c index c5e885d7a6d5..1cdd857f48f8 100644 --- a/MdeModulePkg/Library/BaseBmpSupportLib/BmpSupportLib.c +++ b/MdeModulePkg/Library/BaseBmpSupportLib/BmpSupportLib.c @@ -236,6 +236,12 @@ TranslateBmpToGopBlt ( return RETURN_UNSUPPORTED; } + if ((BmpHeader->ImageOffset == sizeof (BMP_IMAGE_HEADER)) && + ((BmpHeader->BitPerPixel & 0x0D) != 0)) + { + return RETURN_UNSUPPORTED; + } + if (BmpHeader->ImageOffset > sizeof (BMP_IMAGE_HEADER)) { switch (BmpHeader->BitPerPixel) { case 1: -- 2.20.1.windows.1 -=-=-=-=-=-=-=-=-=-=-=- Groups.io Links: You receive all messages sent to this group. View/Reply Online (#92537): https://edk2.groups.io/g/devel/message/92537 Mute This Topic: https://groups.io/mt/93096647/21656 Group Owner: [email protected] Unsubscribe: https://edk2.groups.io/g/devel/unsub [[email protected]] -=-=-=-=-=-=-=-=-=-=-=-
