(ArcView.ArcStream): don't limit stream size to uint.MaxValue.

This commit is contained in:
morkt 2016-02-08 09:14:43 +04:00
parent 17ffc41a75
commit 1b5e682fe7
2 changed files with 4 additions and 4 deletions

View File

@ -62,7 +62,7 @@ namespace GameRes.Formats.BlackRainbow
return null; return null;
foreach (var key in KnownKeys.Values) foreach (var key in KnownKeys.Values)
{ {
using (var arc = new EncryptedViewStream (file, key, true)) using (var arc = new EncryptedViewStream (file, key))
{ {
uint signature = FormatCatalog.ReadSignature (arc); uint signature = FormatCatalog.ReadSignature (arc);
if (2 == signature || 4 == signature || 5 == signature) if (2 == signature || 4 == signature || 5 == signature)
@ -122,7 +122,7 @@ namespace GameRes.Formats.BlackRainbow
var ads_arc = arc as AdsArchive; var ads_arc = arc as AdsArchive;
if (null == ads_arc) if (null == ads_arc)
return base.OpenEntry (arc, entry); return base.OpenEntry (arc, entry);
var input = new EncryptedViewStream (ads_arc.File, ads_arc.Key, true); var input = new EncryptedViewStream (ads_arc.File, ads_arc.Key);
return new StreamRegion (input, entry.Offset, entry.Size); return new StreamRegion (input, entry.Offset, entry.Size);
} }
} }

View File

@ -486,7 +486,7 @@ namespace GameRes
{ {
private Frame m_view; private Frame m_view;
private long m_start; private long m_start;
private uint m_size; private long m_size;
private long m_position; private long m_position;
public override bool CanRead { get { return !disposed; } } public override bool CanRead { get { return !disposed; } }
@ -503,7 +503,7 @@ namespace GameRes
{ {
m_view = file.CreateFrame(); m_view = file.CreateFrame();
m_start = 0; m_start = 0;
m_size = (uint)Math.Min (file.MaxOffset, uint.MaxValue); m_size = file.MaxOffset;
m_position = 0; m_position = 0;
} }