]> git.saurik.com Git - apt.git/blobdiff - apt-pkg/contrib/error.cc
we break the ABI, so let use increase the ABI number :)
[apt.git] / apt-pkg / contrib / error.cc
index 8ae2686de8da19dfc626269d0204b2323dcbebcb..927b7e05c42784c2753edaea1385fd9a2d688fd4 100644 (file)
@@ -1,6 +1,6 @@
 // -*- mode: cpp; mode: fold -*-
 // Description                                                         /*{{{*/
-// $Id: error.cc,v 1.6 1999/01/18 06:20:07 jgg Exp $
+// $Id: error.cc,v 1.11 2002/03/26 07:38:58 jgg Exp $
 /* ######################################################################
    
    Global Erorr Class - Global error mechanism
    ##################################################################### */
                                                                        /*}}}*/
 // Include Files                                                       /*{{{*/
-#ifdef __GNUG__
-#pragma implementation "apt-pkg/error.h"
-#endif 
-
 #include <apt-pkg/error.h>
 
+#include <iostream>
 #include <errno.h>
 #include <stdio.h>
-#include <string.h>
 #include <stdarg.h>
 #include <unistd.h>
 
+#include <string>
+#include <cstring>
+
+#include "config.h"
                                                                        /*}}}*/
 
+using namespace std;
+
 // Global Error Object                                                 /*{{{*/
 /* If the implementation supports posix threads then the accessor function
    is compiled to be thread safe otherwise a non-safe version is used. A
    Per-Thread error object is maintained in much the same manner as libc
    manages errno */
-#if _POSIX_THREADS == 1
+#if defined(_POSIX_THREADS) && defined(HAVE_PTHREAD)
  #include <pthread.h>
 
  static pthread_key_t ErrorKey;
@@ -82,17 +84,17 @@ bool GlobalError::Errno(const char *Function,const char *Description,...)
    char S[400];
    vsnprintf(S,sizeof(S),Description,args);
    snprintf(S + strlen(S),sizeof(S) - strlen(S),
-           " - %s (%i %s)",Function,errno,strerror(errno));
+           " - %s (%i: %s)",Function,errno,strerror(errno));
 
    // Put it on the list
    Item *Itm = new Item;
    Itm->Text = S;
    Itm->Error = true;
    Insert(Itm);
-   
+
    PendingFlag = true;
 
-   return false;   
+   return false;
 }
                                                                        /*}}}*/
 // GlobalError::WarningE - Get part of the warn string from errno      /*{{{*/
@@ -110,15 +112,16 @@ bool GlobalError::WarningE(const char *Function,const char *Description,...)
    // sprintf the description
    char S[400];
    vsnprintf(S,sizeof(S),Description,args);
-   snprintf(S + strlen(S),sizeof(S) - strlen(S)," - %s (%i %s)",Function,errno,strerror(errno));
+   snprintf(S + strlen(S),sizeof(S) - strlen(S),
+           " - %s (%i: %s)",Function,errno,strerror(errno));
 
    // Put it on the list
    Item *Itm = new Item;
    Itm->Text = S;
    Itm->Error = false;
    Insert(Itm);
-   
-   return false;   
+
+   return false;
 }
                                                                        /*}}}*/
 // GlobalError::Error - Add an error to the list                       /*{{{*/