X-Git-Url: https://git.saurik.com/apt.git/blobdiff_plain/d22bcfc4b0b2d0056126a1c690f778b1c3ddaf17..131418cfb2b83fb725fff62b0401252fef5655e2:/apt-pkg/deb/debsrcrecords.cc

diff --git a/apt-pkg/deb/debsrcrecords.cc b/apt-pkg/deb/debsrcrecords.cc
index fcd9bb901..bde10aa6d 100644
--- a/apt-pkg/deb/debsrcrecords.cc
+++ b/apt-pkg/deb/debsrcrecords.cc
@@ -135,9 +135,15 @@ bool debSrcRecordParser::Files(vector<pkgSrcRecords::File> &List)
 	 string::size_type Tmp = F.Path.rfind('.',Pos);
 	 if (Tmp == string::npos)
 	    break;
+	 if (F.Type == "tar") {
+	    // source v3 has extension 'debian.tar.*' instead of 'diff.*'
+	    if (string(F.Path, Tmp+1, Pos-Tmp) == "debian")
+	       F.Type = "diff";
+	    break;
+	 }
 	 F.Type = string(F.Path,Tmp+1,Pos-Tmp);
 	 
-	 if (F.Type == "gz" || F.Type == "bz2")
+	 if (F.Type == "gz" || F.Type == "bz2" || F.Type == "lzma" || F.Type == "tar")
 	 {
 	    Pos = Tmp-1;
 	    continue;
@@ -152,3 +158,11 @@ bool debSrcRecordParser::Files(vector<pkgSrcRecords::File> &List)
    return true;
 }
 									/*}}}*/
+// SrcRecordParser::~SrcRecordParser - Destructor			/*{{{*/
+// ---------------------------------------------------------------------
+/* */
+debSrcRecordParser::~debSrcRecordParser()
+{
+   delete[] Buffer;
+}
+									/*}}}*/