X-Git-Url: https://git.verplant.org/?a=blobdiff_plain;f=rev-parse.c;h=40707ac6ca7258878b47ed72074b3cf7364d3a56;hb=180926636e47ecfe28d03cec493af75899994f0f;hp=1b08b455811d914ba88ba138b1c0187ac6e20d58;hpb=a8be83fe00eded0bd6cb0001879ddf211a2cf2f2;p=git.git diff --git a/rev-parse.c b/rev-parse.c index 1b08b455..40707ac6 100644 --- a/rev-parse.c +++ b/rev-parse.c @@ -62,7 +62,7 @@ static int get_parent(char *name, unsigned char *result, int idx) /* * This is like "get_sha1()", except it allows "sha1 expressions", - * notably "xyz.p" for "parent of xyz" + * notably "xyz^" for "parent of xyz" */ static int get_extended_sha1(char *name, unsigned char *sha1) { @@ -70,15 +70,15 @@ static int get_extended_sha1(char *name, unsigned char *sha1) int len = strlen(name); parent = 1; - if (len > 3 && name[len-1] >= '1' && name[len-1] <= '9') { + if (len > 2 && name[len-1] >= '1' && name[len-1] <= '9') { parent = name[len-1] - '0'; len--; } - if (len > 2 && !memcmp(name + len - 2, ".p", 2)) { + if (len > 1 && name[len-1] == '^') { int ret; - name[len-2] = 0; + name[len-1] = 0; ret = get_parent(name, sha1, parent); - name[len-2] = '.'; + name[len-1] = '^'; if (!ret) return 0; }