]> git.saurik.com Git - apt.git/blobdiff - apt-pkg/contrib/strutl.cc
test framework: Correctly generate new paths in noopchroot
[apt.git] / apt-pkg / contrib / strutl.cc
index 0db4c57b249f9e20fea0d0f3a7b40b4d811736f8..396cb7898c0e5dc26f31bbbbe030aa4c7cb90ca9 100644 (file)
@@ -331,7 +331,7 @@ string QuoteString(const string &Str, const char *Bad)
          *I == 0x25 || // percent '%' char
          *I <= 0x20 || *I >= 0x7F) // control chars
       {
-        ioprintf(Res,"%%%02x",(int)*I);
+        ioprintf(Res, "%%%02hhx", *I);
       }
       else
         Res << *I;
@@ -1308,7 +1308,7 @@ void ioprintf(ostream &out,const char *format,...)
    va_list args;
    ssize_t size = 400;
    while (true) {
-      bool ret = false;
+      bool ret;
       va_start(args,format);
       ret = iovprintf(out, format, args, size);
       va_end(args);
@@ -1322,7 +1322,7 @@ void strprintf(string &out,const char *format,...)
    ssize_t size = 400;
    std::ostringstream outstr;
    while (true) {
-      bool ret = false;
+      bool ret;
       va_start(args,format);
       ret = iovprintf(outstr, format, args, size);
       va_end(args);
@@ -1637,8 +1637,6 @@ URI::operator string()
 }
                                                                        /*}}}*/
 // URI::SiteOnly - Return the schema and site for the URI              /*{{{*/
-// ---------------------------------------------------------------------
-/* */
 string URI::SiteOnly(const string &URI)
 {
    ::URI U(URI);
@@ -1648,9 +1646,18 @@ string URI::SiteOnly(const string &URI)
    return U;
 }
                                                                        /*}}}*/
+// URI::ArchiveOnly - Return the schema, site and cleaned path for the URI /*{{{*/
+string URI::ArchiveOnly(const string &URI)
+{
+   ::URI U(URI);
+   U.User.clear();
+   U.Password.clear();
+   if (U.Path.empty() == false && U.Path[U.Path.length() - 1] == '/')
+      U.Path.erase(U.Path.length() - 1);
+   return U;
+}
+                                                                       /*}}}*/
 // URI::NoUserPassword - Return the schema, site and path for the URI  /*{{{*/
-// ---------------------------------------------------------------------
-/* */
 string URI::NoUserPassword(const string &URI)
 {
    ::URI U(URI);