X-Git-Url: https://git.saurik.com/apt.git/blobdiff_plain/d61960d9244340956a27f4ca46aecd15cc75e18b..5f4fcd88bdabee993dd07244d2f0f8f3658c40f2:/ftparchive/writer.cc diff --git a/ftparchive/writer.cc b/ftparchive/writer.cc index a63d8846b..855e0ef79 100644 --- a/ftparchive/writer.cc +++ b/ftparchive/writer.cc @@ -440,9 +440,6 @@ bool PackagesWriter::DoPackage(string FileName) OverItem->Priority = Tags.FindS("Priority"); } - char Size[40]; - sprintf(Size,"%llu", (unsigned long long) FileSize); - // Strip the DirStrip prefix from the FileName and add the PathPrefix string NewFileName; if (DirStrip.empty() == false && @@ -466,7 +463,10 @@ bool PackagesWriter::DoPackage(string FileName) // This lists all the changes to the fields we are going to make. std::vector Changes; - Changes.push_back(SetTFRewriteData("Size", Size)); + std::string Size; + strprintf(Size, "%llu", (unsigned long long) FileSize); + Changes.push_back(SetTFRewriteData("Size", Size.c_str())); + for (HashStringList::const_iterator hs = Db.HashesList.begin(); hs != Db.HashesList.end(); ++hs) { if (hs->HashType() == "MD5Sum") @@ -837,7 +837,8 @@ bool SourcesWriter::DoPackage(string FileName) // (5 hardcoded + checksums + maintainer + end marker) std::vector Changes; - Changes.push_back(SetTFRewriteData("Source",Package.c_str(),"Package")); + Changes.push_back(SetTFRewriteData("Source", 0)); + Changes.push_back(SetTFRewriteData("Package",Package.c_str())); if (Files.empty() == false) Changes.push_back(SetTFRewriteData("Files",Files.c_str())); if (ChecksumsSha1.empty() == false) @@ -1075,8 +1076,8 @@ bool ReleaseWriter::DoPackage(string FileName) CheckSums[NewFileName].size = fd.Size(); - Hashes hs; - hs.AddFD(fd, 0, DoHashes); + Hashes hs(DoHashes); + hs.AddFD(fd); CheckSums[NewFileName].Hashes = hs.GetHashStringList(); fd.Close();