diff options
author | Carlos Martín Nieto <cmn@elego.de> | 2012-11-13 16:13:10 -0800 |
---|---|---|
committer | Carlos Martín Nieto <cmn@elego.de> | 2012-11-13 16:17:37 -0800 |
commit | 6132a54e0b4b3c5c9b03c0eba191bb756738d34a (patch) | |
tree | 315527ec0fbad63de351cb569ec8a3447ac49207 | |
parent | 513e794ef47363b8900816a9b141b3eae81eb83e (diff) | |
download | libgit2-6132a54e0b4b3c5c9b03c0eba191bb756738d34a.tar.gz |
Fix a few valgrind errors
-rw-r--r-- | src/config.c | 2 | ||||
-rw-r--r-- | src/index.c | 3 | ||||
-rw-r--r-- | src/transports/local.c | 2 |
3 files changed, 5 insertions, 2 deletions
diff --git a/src/config.c b/src/config.c index 4fb161169..571a1f998 100644 --- a/src/config.c +++ b/src/config.c @@ -436,7 +436,7 @@ int git_config_get_bool(int *out, git_config *cfg, const char *name) int git_config_get_string(const char **out, git_config *cfg, const char *name) { int ret; - const char *str; + const char *str = NULL; if ((ret = get_string(&str, cfg, name)) < 0) return ret; diff --git a/src/index.c b/src/index.c index 5a3532926..007f19a43 100644 --- a/src/index.c +++ b/src/index.c @@ -1098,7 +1098,8 @@ static int read_reuc(git_index *index, const char *buffer, size_t size) size_t len; int i; - if (git_vector_init(&index->reuc, 16, reuc_cmp) < 0) + /* This gets called multiple times, the vector might already be initialized */ + if (index->reuc._alloc_size == 0 && git_vector_init(&index->reuc, 16, reuc_cmp) < 0) return -1; while (size) { diff --git a/src/transports/local.c b/src/transports/local.c index 84acc797b..587b55ba8 100644 --- a/src/transports/local.c +++ b/src/transports/local.c @@ -227,6 +227,8 @@ static int local_negotiate_fetch( git_oid_cpy(&rhead->loid, git_object_id(obj)); else if (error != GIT_ENOTFOUND) return error; + else + memset(&rhead->loid, 0, sizeof(git_oid)); git_object_free(obj); giterr_clear(); } |