diff options
Diffstat (limited to 'apt-inst')
-rw-r--r-- | apt-inst/contrib/arfile.cc | 3 | ||||
-rw-r--r-- | apt-inst/contrib/arfile.h | 3 | ||||
-rw-r--r-- | apt-inst/contrib/extracttar.cc | 8 | ||||
-rw-r--r-- | apt-inst/contrib/extracttar.h | 4 | ||||
-rw-r--r-- | apt-inst/database.cc | 4 | ||||
-rw-r--r-- | apt-inst/database.h | 4 | ||||
-rw-r--r-- | apt-inst/deb/debfile.cc | 14 | ||||
-rw-r--r-- | apt-inst/deb/debfile.h | 3 | ||||
-rw-r--r-- | apt-inst/deb/dpkgdb.cc | 4 | ||||
-rw-r--r-- | apt-inst/deb/dpkgdb.h | 3 | ||||
-rw-r--r-- | apt-inst/dirstream.cc | 4 | ||||
-rw-r--r-- | apt-inst/dirstream.h | 3 | ||||
-rw-r--r-- | apt-inst/extract.cc | 3 | ||||
-rw-r--r-- | apt-inst/extract.h | 4 | ||||
-rw-r--r-- | apt-inst/filelist.cc | 4 | ||||
-rw-r--r-- | apt-inst/filelist.h | 4 |
16 files changed, 13 insertions, 59 deletions
diff --git a/apt-inst/contrib/arfile.cc b/apt-inst/contrib/arfile.cc index 54d90bf3a..a1fb97b48 100644 --- a/apt-inst/contrib/arfile.cc +++ b/apt-inst/contrib/arfile.cc @@ -14,9 +14,6 @@ ##################################################################### */ /*}}}*/ // Include Files /*{{{*/ -#ifdef __GNUG__ -#pragma implementation "apt-pkg/arfile.h" -#endif #include <apt-pkg/arfile.h> #include <apt-pkg/strutl.h> #include <apt-pkg/error.h> diff --git a/apt-inst/contrib/arfile.h b/apt-inst/contrib/arfile.h index 6c54d3e6b..96e18bc60 100644 --- a/apt-inst/contrib/arfile.h +++ b/apt-inst/contrib/arfile.h @@ -15,9 +15,6 @@ #ifndef PKGLIB_ARFILE_H #define PKGLIB_ARFILE_H -#ifdef __GNUG__ -#pragma interface "apt-pkg/arfile.h" -#endif #include <string> #include <apt-pkg/fileutl.h> diff --git a/apt-inst/contrib/extracttar.cc b/apt-inst/contrib/extracttar.cc index d6da802fe..68c871a5d 100644 --- a/apt-inst/contrib/extracttar.cc +++ b/apt-inst/contrib/extracttar.cc @@ -16,9 +16,6 @@ ##################################################################### */ /*}}}*/ // Include Files /*{{{*/ -#ifdef __GNUG__ -#pragma implementation "apt-pkg/extracttar.h" -#endif #include <apt-pkg/extracttar.h> #include <apt-pkg/error.h> @@ -136,7 +133,8 @@ bool ExtractTar::StartGzip() const char *Args[3]; string confvar = string("dir::bin::") + DecompressProg; - Args[0] = _config->Find(confvar.c_str(),DecompressProg.c_str()).c_str(); + string argv0 = _config->Find(confvar.c_str(),DecompressProg.c_str()); + Args[0] = argv0.c_str(); Args[1] = "-d"; Args[2] = 0; execvp(Args[0],(char **)Args); @@ -334,7 +332,7 @@ bool ExtractTar::Go(pkgDirStream &Stream) } // And finish up - if (Itm.Size != 0 && BadRecord == false) + if (Itm.Size >= 0 && BadRecord == false) if (Stream.FinishedFile(Itm,Fd) == false) return false; diff --git a/apt-inst/contrib/extracttar.h b/apt-inst/contrib/extracttar.h index 6daf00a27..42f8ef534 100644 --- a/apt-inst/contrib/extracttar.h +++ b/apt-inst/contrib/extracttar.h @@ -14,10 +14,6 @@ #ifndef PKGLIB_EXTRACTTAR_H #define PKGLIB_EXTRACTTAR_H -#ifdef __GNUG__ -#pragma interface "apt-pkg/extracttar.h" -#endif - #include <apt-pkg/fileutl.h> #include <apt-pkg/dirstream.h> diff --git a/apt-inst/database.cc b/apt-inst/database.cc index beee692b8..a5020f3d7 100644 --- a/apt-inst/database.cc +++ b/apt-inst/database.cc @@ -8,10 +8,6 @@ ##################################################################### */ /*}}}*/ // Include Files /*{{{*/ -#ifdef __GNUG__ -#pragma implementation "apt-pkg/database.h" -#endif - #include <apt-pkg/database.h> /*}}}*/ diff --git a/apt-inst/database.h b/apt-inst/database.h index 0972d40cd..ef45bc2d6 100644 --- a/apt-inst/database.h +++ b/apt-inst/database.h @@ -21,10 +21,6 @@ #ifndef PKGLIB_DATABASE_H #define PKGLIB_DATABASE_H -#ifdef __GNUG__ -#pragma interface "apt-pkg/database.h" -#endif - #include <apt-pkg/filelist.h> #include <apt-pkg/pkgcachegen.h> diff --git a/apt-inst/deb/debfile.cc b/apt-inst/deb/debfile.cc index 84906ff56..cd7a88808 100644 --- a/apt-inst/deb/debfile.cc +++ b/apt-inst/deb/debfile.cc @@ -16,10 +16,6 @@ ##################################################################### */ /*}}}*/ // Include Files /*{{{*/ -#ifdef __GNUG__ -#pragma implementation "apt-pkg/debfile.h" -#endif - #include <apt-pkg/debfile.h> #include <apt-pkg/extracttar.h> #include <apt-pkg/error.h> @@ -48,8 +44,10 @@ debDebFile::debDebFile(FileFd &File) : File(File), AR(File) return; } - if (!CheckMember("data.tar.gz") && !CheckMember("data.tar.bz2")) { - _error->Error(_("This is not a valid DEB archive, it has no '%s' or '%s' member"), "data.tar.gz", "data.tar.bz2"); + if (!CheckMember("data.tar.gz") && + !CheckMember("data.tar.bz2") && + !CheckMember("data.tar.lzma")) { + _error->Error(_("This is not a valid DEB archive, it has no '%s', '%s' or '%s' member"), "data.tar.gz", "data.tar.bz2", "data.tar.lzma"); return; } } @@ -134,6 +132,10 @@ bool debDebFile::ExtractArchive(pkgDirStream &Stream) Member = AR.FindMember("data.tar.bz2"); Compressor = "bzip2"; } + if (Member == 0) { + Member = AR.FindMember("data.tar.lzma"); + Compressor = "lzma"; + } if (Member == 0) return _error->Error(_("Internal error, could not locate member")); if (File.Seek(Member->Start) == false) diff --git a/apt-inst/deb/debfile.h b/apt-inst/deb/debfile.h index d89b85268..6b9f8ffc8 100644 --- a/apt-inst/deb/debfile.h +++ b/apt-inst/deb/debfile.h @@ -23,9 +23,6 @@ #ifndef PKGLIB_DEBFILE_H #define PKGLIB_DEBFILE_H -#ifdef __GNUG__ -#pragma interface "apt-pkg/debfile.h" -#endif #include <apt-pkg/arfile.h> #include <apt-pkg/database.h> diff --git a/apt-inst/deb/dpkgdb.cc b/apt-inst/deb/dpkgdb.cc index 718e1ab98..e51e4f8b3 100644 --- a/apt-inst/deb/dpkgdb.cc +++ b/apt-inst/deb/dpkgdb.cc @@ -13,10 +13,6 @@ ##################################################################### */ /*}}}*/ // Include Files /*{{{*/ -#ifdef __GNUG__ -#pragma implementation "apt-pkg/dpkgdb.h" -#endif - #include <apt-pkg/dpkgdb.h> #include <apt-pkg/configuration.h> #include <apt-pkg/error.h> diff --git a/apt-inst/deb/dpkgdb.h b/apt-inst/deb/dpkgdb.h index ddbb6d6f2..125845f96 100644 --- a/apt-inst/deb/dpkgdb.h +++ b/apt-inst/deb/dpkgdb.h @@ -19,9 +19,6 @@ #ifndef PKGLIB_DPKGDB_H #define PKGLIB_DPKGDB_H -#ifdef __GNUG__ -#pragma interface "apt-pkg/dpkgdb.h" -#endif #include <apt-pkg/database.h> diff --git a/apt-inst/dirstream.cc b/apt-inst/dirstream.cc index 898ede31b..586bbf739 100644 --- a/apt-inst/dirstream.cc +++ b/apt-inst/dirstream.cc @@ -11,10 +11,6 @@ ##################################################################### */ /*}}}*/ // Include Files /*{{{*/ -#ifdef __GNUG__ -#pragma implementation "apt-pkg/dirstream.h" -#endif - #include <apt-pkg/dirstream.h> #include <apt-pkg/error.h> diff --git a/apt-inst/dirstream.h b/apt-inst/dirstream.h index dfb480bd4..9d1af2188 100644 --- a/apt-inst/dirstream.h +++ b/apt-inst/dirstream.h @@ -25,9 +25,6 @@ #ifndef PKGLIB_DIRSTREAM_H #define PKGLIB_DIRSTREAM_H -#ifdef __GNUG__ -#pragma interface "apt-pkg/dirstream.h" -#endif class pkgDirStream { diff --git a/apt-inst/extract.cc b/apt-inst/extract.cc index 2568ed99f..85363b9a1 100644 --- a/apt-inst/extract.cc +++ b/apt-inst/extract.cc @@ -44,9 +44,6 @@ ##################################################################### */ /*}}}*/ // Include Files /*{{{*/ -#ifdef __GNUG__ -#pragma implementation "apt-pkg/extract.h" -#endif #include <apt-pkg/extract.h> #include <apt-pkg/error.h> #include <apt-pkg/debversion.h> diff --git a/apt-inst/extract.h b/apt-inst/extract.h index a9152a26f..71222983c 100644 --- a/apt-inst/extract.h +++ b/apt-inst/extract.h @@ -17,9 +17,7 @@ #ifndef PKGLIB_EXTRACT_H #define PKGLIB_EXTRACT_H -#ifdef __GNUG__ -#pragma interface "apt-pkg/extract.h" -#endif + #include <apt-pkg/dirstream.h> #include <apt-pkg/filelist.h> diff --git a/apt-inst/filelist.cc b/apt-inst/filelist.cc index f14c6416e..060aa53d7 100644 --- a/apt-inst/filelist.cc +++ b/apt-inst/filelist.cc @@ -32,10 +32,6 @@ ##################################################################### */ /*}}}*/ // Include Files /*{{{*/ -#ifdef __GNUG__ -#pragma implementation "apt-pkg/filelist.h" -#endif - #include <apt-pkg/filelist.h> #include <apt-pkg/mmap.h> #include <apt-pkg/error.h> diff --git a/apt-inst/filelist.h b/apt-inst/filelist.h index 7536a2f63..c74a310e4 100644 --- a/apt-inst/filelist.h +++ b/apt-inst/filelist.h @@ -28,10 +28,8 @@ #ifndef PKGLIB_FILELIST_H #define PKGLIB_FILELIST_H -#ifdef __GNUG__ -#pragma interface "apt-pkg/filelist.h" -#endif +#include <cstring> #include <apt-pkg/mmap.h> class pkgFLCache |