1From b0a0b7b605aeb8106e7b50d1efeb746f401498cc Mon Sep 17 00:00:00 2001 2From: Gerd Hoffmann <kraxel@redhat.com> 3Date: Thu, 24 Mar 2022 20:04:35 +0800 4Subject: [PATCH] BaseTools: fix gcc12 warning 5 6Sdk/C/LzmaEnc.c: In function ?LzmaEnc_CodeOneMemBlock?: 7Sdk/C/LzmaEnc.c:2828:19: error: storing the address of local variable ?outStream? in ?*p.rc.outStream? [-Werror=dangling-pointer=] 8 2828 | p->rc.outStream = &outStream.vt; 9 | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~ 10Sdk/C/LzmaEnc.c:2811:28: note: ?outStream? declared here 11 2811 | CLzmaEnc_SeqOutStreamBuf outStream; 12 | ^~~~~~~~~ 13Sdk/C/LzmaEnc.c:2811:28: note: ?pp? declared here 14Sdk/C/LzmaEnc.c:2828:19: error: storing the address of local variable ?outStream? in ?*(CLzmaEnc *)pp.rc.outStream? [-Werror=dangling-pointer=] 15 2828 | p->rc.outStream = &outStream.vt; 16 | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~ 17Sdk/C/LzmaEnc.c:2811:28: note: ?outStream? declared here 18 2811 | CLzmaEnc_SeqOutStreamBuf outStream; 19 | ^~~~~~~~~ 20Sdk/C/LzmaEnc.c:2811:28: note: ?pp? declared here 21cc1: all warnings being treated as errors 22 23Upstream-Status: Backport [https://github.com/tianocore/edk2/commit/85021f8cf22d1bd4114803c6c610dea5ef0059f1] 24Signed-off-by: Gerd Hoffmann <kraxel@redhat.com> 25Reviewed-by: Bob Feng <bob.c.feng@intel.com> 26--- 27 BaseTools/Source/C/LzmaCompress/Sdk/C/LzmaEnc.c | 3 ++- 28 1 file changed, 2 insertions(+), 1 deletion(-) 29 30diff --git a/BaseTools/Source/C/LzmaCompress/Sdk/C/LzmaEnc.c b/BaseTools/Source/C/LzmaCompress/Sdk/C/LzmaEnc.c 31index 4e9b499f8d..4b9f5fa692 100644 32--- a/BaseTools/Source/C/LzmaCompress/Sdk/C/LzmaEnc.c 33+++ b/BaseTools/Source/C/LzmaCompress/Sdk/C/LzmaEnc.c 34@@ -2825,12 +2825,13 @@ SRes LzmaEnc_CodeOneMemBlock(CLzmaEncHandle pp, BoolInt reInit, 35 36 nowPos64 = p->nowPos64; 37 RangeEnc_Init(&p->rc); 38- p->rc.outStream = &outStream.vt; 39 40 if (desiredPackSize == 0) 41 return SZ_ERROR_OUTPUT_EOF; 42 43+ p->rc.outStream = &outStream.vt; 44 res = LzmaEnc_CodeOneBlock(p, desiredPackSize, *unpackSize); 45+ p->rc.outStream = NULL; 46 47 *unpackSize = (UInt32)(p->nowPos64 - nowPos64); 48 *destLen -= outStream.rem; 49-- 502.36.1 51 52