diff options
-rw-r--r-- | src/refspec.c | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/src/refspec.c b/src/refspec.c index 961f939c6..f92a6d2b6 100644 --- a/src/refspec.c +++ b/src/refspec.c @@ -142,6 +142,7 @@ int git_refspec__parse(git_refspec *refspec, const char *input, bool is_fetch) giterr_set( GITERR_INVALID, "'%s' is not a valid refspec.", input); + git_refspec__free(refspec); return -1; } @@ -153,6 +154,8 @@ void git_refspec__free(git_refspec *refspec) git__free(refspec->src); git__free(refspec->dst); git__free(refspec->string); + + memset(refspec, 0x0, sizeof(git_refspec)); } const char *git_refspec_src(const git_refspec *refspec) |