1 Index: p7zip_15.14.1/CPP/7zip/Archive/Udf/UdfIn.cpp
2 ===================================================================
3 --- p7zip_15.14.1.orig/CPP/7zip/Archive/Udf/UdfIn.cpp
4 +++ p7zip_15.14.1/CPP/7zip/Archive/Udf/UdfIn.cpp
5 @@ -389,7 +389,11 @@ HRESULT CInArchive::ReadFileItem(int vol
7 CFile &file = Files.Back();
8 const CLogVol &vol = LogVols[volIndex];
9 - CPartition &partition = Partitions[vol.PartitionMaps[lad.Location.PartitionRef].PartitionIndex];
10 + unsigned partitionRef = lad.Location.PartitionRef;
12 + if (partitionRef >= vol.PartitionMaps.Size())
14 + CPartition &partition = Partitions[vol.PartitionMaps[partitionRef].PartitionIndex];
16 UInt32 key = lad.Location.Pos;