]> git.proxmox.com Git - mirror_edk2.git/commit
EmulatorPkg/host: fix overflow in Mult
authorwenyi,xie via groups.io <xiewenyi2=huawei.com@groups.io>
Tue, 1 Sep 2020 10:58:08 +0000 (18:58 +0800)
committermergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
Wed, 23 Sep 2020 02:53:41 +0000 (02:53 +0000)
commitdd5c7e3c5282b084daa5bbf0ec229cec699b2c17
tree5422a827ca317dd191f990afa565cd9e5689d5c3
parent3f3daf89308930e45f82ae67dd2a2d6e030bb091
EmulatorPkg/host: fix overflow in Mult

REF:https://bugzilla.tianocore.org/show_bug.cgi?id=2947

When calculating memory regions and store the information in the
gSystemMemory in file WinHost.c, the code below will cause overflow,
because _wtoi (MemorySizeStr) return an int value and SIZE_1MB is
also an int value, if MemorySizeStr is lager for example 2048, then
result of multiplication will overflow.

for (Index = 0, Done = FALSE; !Done; Index++) {
  //
  // Save the size of the memory and make a Unicode filename SystemMemory00
  //
  gSystemMemory[Index].Size = _wtoi (MemorySizeStr) * SIZE_1MB;

Cc: Jordan Justen <jordan.l.justen@intel.com>
Cc: Andrew Fish <afish@apple.com>
Reviewed-by: Ray Ni <ray.ni@intel.com>
Signed-off-by: Wenyi Xie <xiewenyi2@huawei.com>
EmulatorPkg/Win/Host/WinHost.c