Merge branch 'mv/sequencer-pick-error-diag'
authorJunio C Hamano <gitster@pobox.com>
Thu, 9 May 2013 20:30:19 +0000 (13:30 -0700)
committerJunio C Hamano <gitster@pobox.com>
Thu, 9 May 2013 20:30:19 +0000 (13:30 -0700)
Fix "git cherry-pick $annotated_tag", which was mistakenly rejected.

* mv/sequencer-pick-error-diag:
cherry-pick: picking a tag that resolves to a commit is OK

sequencer.c
index cf8fbeb8d5ac2b6ca3b498f2115c02eeea22910a..ab6f8a722d1dfa8f9633d8c046aad26ef4d0404e 100644 (file)
@@ -1077,10 +1077,10 @@ int sequencer_pick_revisions(struct replay_opts *opts)
                        continue;
 
                if (!get_sha1(name, sha1)) {
-                       enum object_type type = sha1_object_info(sha1, NULL);
-
-                       if (type > 0 && type != OBJ_COMMIT)
+                       if (!lookup_commit_reference_gently(sha1, 1)) {
+                               enum object_type type = sha1_object_info(sha1, NULL);
                                die(_("%s: can't cherry-pick a %s"), name, typename(type));
+                       }
                } else
                        die(_("%s: bad revision"), name);
        }