]> git.saurik.com Git - apt.git/commitdiff
micro-optimize and enhance readability of ListParser::VersionHash
authorDavid Kalnischkies <kalnischkies@gmail.com>
Mon, 1 Apr 2013 21:27:16 +0000 (23:27 +0200)
committerDavid Kalnischkies <kalnischkies@gmail.com>
Mon, 1 Apr 2013 21:27:16 +0000 (23:27 +0200)
apt-pkg/deb/deblistparser.cc

index 56d5297fc6ef9fc21bdd9441dc6f9c5db55acdad..67f0ac9c6f351253b2e4e7e6855b79580af35ac6 100644 (file)
@@ -284,7 +284,7 @@ unsigned short debListParser::VersionHash()
                             "Replaces",0};
    unsigned long Result = INIT_FCS;
    char S[1024];
-   for (const char **I = Sections; *I != 0; I++)
+   for (const char * const *I = Sections; *I != 0; ++I)
    {
       const char *Start;
       const char *End;
@@ -295,13 +295,13 @@ unsigned short debListParser::VersionHash()
          of certain fields. dpkg also has the rather interesting notion of
          reformatting depends operators < -> <= */
       char *J = S;
-      for (; Start != End; Start++)
+      for (; Start != End; ++Start)
       {
-        if (isspace(*Start) == 0)
-           *J++ = tolower_ascii(*Start);
-        if (*Start == '<' && Start[1] != '<' && Start[1] != '=')
-           *J++ = '=';
-        if (*Start == '>' && Start[1] != '>' && Start[1] != '=')
+        if (isspace(*Start) != 0)
+           continue;
+        *J++ = tolower_ascii(*Start);
+
+        if ((*Start == '<' || *Start == '>') && Start[1] != *Start && Start[1] != '=')
            *J++ = '=';
       }