]> git.saurik.com Git - cydia.git/commitdiff
Do not add nil tags to the Package::tag_ array.
authorJay Freeman (saurik) <saurik@saurik.com>
Sat, 25 Feb 2012 21:57:56 +0000 (13:57 -0800)
committerJay Freeman (saurik) <saurik@saurik.com>
Sat, 25 Feb 2012 21:58:07 +0000 (13:58 -0800)
MobileCydia.mm

index cdce7c5be6ef44383f44814c09582482510e09c7..2212e09685a9f01d02308aba5a5d58931958cdda 100644 (file)
@@ -2321,9 +2321,14 @@ struct PackageNameOrdering :
             pkgCache::TagIterator tag(iterator.TagList());
             if (!tag.end()) {
                 tags_ = [NSMutableArray arrayWithCapacity:8];
-                do {
+
+                goto tag; for (; !tag.end(); ++tag) tag: {
                     const char *name(tag.Name());
-                    [tags_ addObject:[(NSString *)CYStringCreate(name) autorelease]];
+                    NSString *string((NSString *) CYStringCreate(name));
+                    if (string == nil)
+                        continue;
+
+                    [tags_ addObject:[string autorelease]];
 
                     if (role_ == 0 && strncmp(name, "role::", 6) == 0 /*&& strcmp(name, "role::leaper") != 0*/) {
                         if (strcmp(name + 6, "enduser") == 0)
@@ -2344,9 +2349,7 @@ struct PackageNameOrdering :
                         else if (strcmp(name + 7, "obsolete") == 0)
                             obsolete_ = true;
                     }
-
-                    ++tag;
-                } while (!tag.end());
+                }
             }
         _end