From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mga09.intel.com (mga09.intel.com [134.134.136.24]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ml01.01.org (Postfix) with ESMTPS id 3DD042194D38E for ; Tue, 2 May 2017 02:34:22 -0700 (PDT) Received: from fmsmga001.fm.intel.com ([10.253.24.23]) by orsmga102.jf.intel.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 02 May 2017 02:34:21 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.37,404,1488873600"; d="scan'208";a="1142578872" Received: from ray-dev.ccr.corp.intel.com ([10.239.9.1]) by fmsmga001.fm.intel.com with ESMTP; 02 May 2017 02:34:20 -0700 From: Ruiyu Ni To: edk2-devel@lists.01.org Cc: Chen A Chen , Jaben Carsey Date: Tue, 2 May 2017 17:34:17 +0800 Message-Id: <20170502093417.112428-1-ruiyu.ni@intel.com> X-Mailer: git-send-email 2.12.2.windows.2 Subject: [PATCH] ShellPkg/UefiHandleParsingLib: Fix memory leak X-BeenThere: edk2-devel@lists.01.org X-Mailman-Version: 2.1.22 Precedence: list List-Id: EDK II Development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 02 May 2017 09:34:22 -0000 Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Ruiyu Ni Signed-off-by: Chen A Chen Cc: Jaben Carsey --- ShellPkg/Library/UefiHandleParsingLib/UefiHandleParsingLib.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/ShellPkg/Library/UefiHandleParsingLib/UefiHandleParsingLib.c b/ShellPkg/Library/UefiHandleParsingLib/UefiHandleParsingLib.c index c368d8cb21..da1d92fd17 100644 --- a/ShellPkg/Library/UefiHandleParsingLib/UefiHandleParsingLib.c +++ b/ShellPkg/Library/UefiHandleParsingLib/UefiHandleParsingLib.c @@ -2331,7 +2331,9 @@ ConvertHandleIndexToHandle( // Verify that LinkWalker->TheHandle is valid handle // Status = gBS->ProtocolsPerHandle(ListWalker->TheHandle, &ProtocolBuffer, &ProtocolCount); - if (EFI_ERROR (Status)) { + if (!EFI_ERROR (Status)) { + FreePool (ProtocolBuffer); + } else { // // TheHandle is not valid, so do not add to handle list // -- 2.12.2.windows.2