refspec: add back a refspec_item_init() function
authorÆvar Arnfjörð Bjarmason <avarab@gmail.com>
Tue, 5 Jun 2018 19:54:39 +0000 (19:54 +0000)
committerJunio C Hamano <gitster@pobox.com>
Mon, 11 Jun 2018 17:11:31 +0000 (10:11 -0700)
Re-add the non-fatal version of refspec_item_init_or_die() renamed
away in an earlier change to get a more minimal diff. This should be
used by callers that have their own error handling.

This new function could be marked "static" since nothing outside of
refspec.c uses it, but expecting future use of it, let's make it
available to other users.

Signed-off-by: Ævar Arnfjörð Bjarmason <avarab@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
refspec.c
refspec.h
index 54b6fe0c6d7372d5fc27c04e0d6e93761ba68250..597ddf8b52d9294edc6bb0f2e2a1fa47d47df2ae 100644 (file)
--- a/refspec.c
+++ b/refspec.c
@@ -122,12 +122,16 @@ static int parse_refspec(struct refspec_item *item, const char *refspec, int fet
        return 1;
 }
 
-void refspec_item_init_or_die(struct refspec_item *item, const char *refspec,
-                             int fetch)
+int refspec_item_init(struct refspec_item *item, const char *refspec, int fetch)
 {
        memset(item, 0, sizeof(*item));
+       return parse_refspec(item, refspec, fetch);
+}
 
-       if (!parse_refspec(item, refspec, fetch))
+void refspec_item_init_or_die(struct refspec_item *item, const char *refspec,
+                             int fetch)
+{
+       if (!refspec_item_init(item, refspec, fetch))
                die("Invalid refspec '%s'", refspec);
 }
 
index 4caaf1f8e3b79a9b68beca5f841dbfc487d154a2..9b6e64a824e4be1025f3f0a07fa5a59296698489 100644 (file)
--- a/refspec.h
+++ b/refspec.h
@@ -32,6 +32,8 @@ struct refspec {
        int fetch;
 };
 
+int refspec_item_init(struct refspec_item *item, const char *refspec,
+                     int fetch);
 void refspec_item_init_or_die(struct refspec_item *item, const char *refspec,
                              int fetch);
 void refspec_item_clear(struct refspec_item *item);