]> git.saurik.com Git - apt.git/blobdiff - methods/bzip2.cc
merged from donkult
[apt.git] / methods / bzip2.cc
index c668141a2919622c7809b76fac64de55261ad8e4..8e7e465576cd78b6766834f76aaab640df87409a 100644 (file)
    ##################################################################### */
                                                                        /*}}}*/
 // Include Files                                                       /*{{{*/
+#include <config.h>
+
 #include <apt-pkg/fileutl.h>
 #include <apt-pkg/error.h>
 #include <apt-pkg/acquire-method.h>
 #include <apt-pkg/strutl.h>
 #include <apt-pkg/hashes.h>
+#include <apt-pkg/configuration.h>
 
 #include <sys/stat.h>
 #include <unistd.h>
@@ -45,9 +48,9 @@ class Bzip2Method : public pkgAcqMethod
 bool Bzip2Method::Fetch(FetchItem *Itm)
 {
    URI Get = Itm->Uri;
-   string Path = Get.Host + Get.Path; // To account for relative paths
+   std::string Path = Get.Host + Get.Path; // To account for relative paths
    
-   string GzPathOption = "Dir::bin::"+string(Prog);
+   std::string GzPathOption = "Dir::bin::" + std::string(Prog);
 
    FetchResult Res;
    Res.Filename = Itm->DestFile;
@@ -56,9 +59,8 @@ bool Bzip2Method::Fetch(FetchItem *Itm)
    // Open the source and destination files
    FileFd From(Path,FileFd::ReadOnly);
 
-   // FIXME add an error message saying that empty files can't be valid archives
-   if(From.Size() == 0)
-      return false;
+   if(From.FileSize() == 0)
+      return _error->Error(_("Empty files can't be valid archives"));
 
    int GzOut[2];   
    if (pipe(GzOut) < 0)
@@ -77,7 +79,7 @@ bool Bzip2Method::Fetch(FetchItem *Itm)
       SetCloseExec(STDOUT_FILENO,false);
       
       const char *Args[3];
-      string Tmp = _config->Find(GzPathOption,Prog);
+      std::string Tmp = _config->Find(GzPathOption,Prog);
       Args[0] = Tmp.c_str();
       Args[1] = "-d";
       Args[2] = 0;