Merge fixes up to GIT 1.1.3
authorJunio C Hamano <junkio@cox.net>
Mon, 16 Jan 2006 06:25:35 +0000 (22:25 -0800)
committerJunio C Hamano <junkio@cox.net>
Mon, 16 Jan 2006 06:25:35 +0000 (22:25 -0800)
1  2 
describe.c

diff --cc describe.c
@@@ -98,10 -98,8 +98,10 @@@ static int compare_names(const void *_a
        return (a_date > b_date) ? -1 : (a_date == b_date) ? 0 : 1;
  }
  
- static void describe(char *arg)
 -static void describe(struct commit *cmit, int last_one)
++static void describe(char *arg, int last_one)
  {
 +      unsigned char sha1[20];
 +      struct commit *cmit;
        struct commit_list *list;
        static int initialized = 0;
        struct commit_name *n;
@@@ -156,16 -153,14 +157,18 @@@ int main(int argc, char **argv
                        abbrev = strtoul(arg + 9, NULL, 10);
                        if (abbrev < 4 || 40 <= abbrev)
                                abbrev = DEFAULT_ABBREV;
 -                      continue;
                }
 -              if (get_sha1(arg, sha1) < 0)
 -                      usage(describe_usage);
 -              cmit = lookup_commit_reference(sha1);
 -              if (!cmit)
 +              else
                        usage(describe_usage);
 -              describe(cmit, i == argc - 1);
        }
-               describe("HEAD");
 +
 +      if (i == argc)
-               while (i < argc)
-                       describe(argv[i++]);
++              describe("HEAD", 1);
 +      else
++              while (i < argc) {
++                      describe(argv[i], (i == argc - 1));
++                      i++;
++              }
 +
        return 0;
  }