]> git.saurik.com Git - apt.git/blobdiff - apt-pkg/sourcelist.cc
support \n and \r\n line endings in ReadMessages
[apt.git] / apt-pkg / sourcelist.cc
index 46025fc7487d58fb49666cee42be0e086d4b3e97..0fd237cadaffe91ffeed735d2169e2b76a1aef18 100644 (file)
@@ -33,7 +33,7 @@ unsigned long pkgSourceList::Type::GlobalListLen = 0;
 // Type::Type - Constructor                                            /*{{{*/
 // ---------------------------------------------------------------------
 /* Link this to the global list of items*/
 // Type::Type - Constructor                                            /*{{{*/
 // ---------------------------------------------------------------------
 /* Link this to the global list of items*/
-pkgSourceList::Type::Type()
+pkgSourceList::Type::Type() : Name(NULL), Label(NULL)
 {
    ItmList[GlobalListLen] = this;
    GlobalListLen++;
 {
    ItmList[GlobalListLen] = this;
    GlobalListLen++;
@@ -270,7 +270,11 @@ bool pkgSourceList::ReadAppend(string File)
       // CNC:2003-02-20 - Do not break if '#' is inside [].
       for (I = Buffer; *I != 0 && *I != '#'; I++)
          if (*I == '[')
       // CNC:2003-02-20 - Do not break if '#' is inside [].
       for (I = Buffer; *I != 0 && *I != '#'; I++)
          if (*I == '[')
-           for (I++; *I != 0 && *I != ']'; I++);
+         {
+           char *b_end = strchr(I + 1, ']');
+            if (b_end != NULL)
+               I = b_end;
+         }
       *I = 0;
       
       const char *C = _strstrip(Buffer);
       *I = 0;
       
       const char *C = _strstrip(Buffer);