summaryrefslogtreecommitdiff
path: root/apt-inst
diff options
context:
space:
mode:
authorMichael Vogt <mvo@debian.org>2013-10-07 13:42:50 +0200
committerMichael Vogt <mvo@debian.org>2013-10-07 13:42:50 +0200
commit3286ad136cbfdb73b97f880ba1ad19a2000781c5 (patch)
tree262a7cecb0d998ee9e4f44ae72a690d32b410eb8 /apt-inst
parent0fa3c89c9e5c2c61a70c714ef8e4ac9d2b7d6ae1 (diff)
downloadapt-3286ad136cbfdb73b97f880ba1ad19a2000781c5.tar.gz
fix libapt-inst for >2G debs (closes: #725483)
Diffstat (limited to 'apt-inst')
-rw-r--r--apt-inst/contrib/arfile.cc6
1 files changed, 3 insertions, 3 deletions
diff --git a/apt-inst/contrib/arfile.cc b/apt-inst/contrib/arfile.cc
index d7ee528ba..9d84c1784 100644
--- a/apt-inst/contrib/arfile.cc
+++ b/apt-inst/contrib/arfile.cc
@@ -64,7 +64,7 @@ ARArchive::~ARArchive()
byte plain text header then the file data, another header, data, etc */
bool ARArchive::LoadHeaders()
{
- signed long Left = File.Size();
+ off_t Left = File.Size();
// Check the magic byte
char Magic[8];
@@ -123,7 +123,7 @@ bool ARArchive::LoadHeaders()
}
// Account for the AR header alignment
- unsigned Skip = Memb->Size % 2;
+ off_t Skip = Memb->Size % 2;
// Add it to the list
Memb->Next = List;
@@ -131,7 +131,7 @@ bool ARArchive::LoadHeaders()
Memb->Start = File.Tell();
if (File.Skip(Memb->Size + Skip) == false)
return false;
- if (Left < (signed)(Memb->Size + Skip))
+ if (Left < (off_t)(Memb->Size + Skip))
return _error->Error(_("Archive is too short"));
Left -= Memb->Size + Skip;
}