Browse files

Merge pull request #384 from kiryl/warnings

Add more -W flags to CFLAGS
  • Loading branch information...
2 parents a807607 + d568d58 commit 71a4c1f16ffc71bced673c5883d5ea621cc8d24f @vmg vmg committed Sep 19, 2011
Showing with 50 additions and 53 deletions.
  1. +1 −1 CMakeLists.txt
  2. +6 −6 src/cache.c
  3. +2 −2 src/commit.c
  4. +1 −0 src/commit.h
  5. +1 −1 src/config_file.c
  6. +1 −1 src/mwindow.c
  7. +11 −11 src/odb_loose.c
  8. +4 −4 src/odb_pack.c
  9. +1 −1 src/refs.c
  10. +0 −5 src/remote.c
  11. +1 −1 src/repository.c
  12. +3 −3 src/revwalk.c
  13. +3 −3 src/signature.c
  14. +6 −3 src/tree.c
  15. +1 −1 tests/t00-core.c
  16. +3 −6 tests/t04-commit.c
  17. +2 −2 tests/t07-hashtable.c
  18. +2 −2 tests/t12-repo.c
  19. +1 −0 tests/test_lib.h
View
2 CMakeLists.txt
@@ -58,7 +58,7 @@ IF (MSVC)
SET(CMAKE_C_FLAGS_DEBUG "/Od /DEBUG /MTd")
SET(CMAKE_C_FLAGS_RELEASE "/MT /O2")
ELSE ()
- SET(CMAKE_C_FLAGS "-O2 -g -Wall -Wextra")
+ SET(CMAKE_C_FLAGS "-O2 -g -Wall -Wextra -Wstrict-aliasing=2 -Wstrict-prototypes -Wmissing-prototypes")
IF (NOT MINGW) # MinGW always does PIC and complains if we tell it to
SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -fPIC")
ENDIF ()
View
12 src/cache.c
@@ -58,12 +58,12 @@ void git_cache_free(git_cache *cache)
void *git_cache_get(git_cache *cache, const git_oid *oid)
{
- const uint32_t *hash;
+ uint32_t hash;
cache_node *node = NULL;
void *result = NULL;
- hash = (const uint32_t *)oid->id;
- node = &cache->nodes[hash[0] & cache->size_mask];
+ memcpy(&hash, oid->id, sizeof(hash));
+ node = &cache->nodes[hash & cache->size_mask];
git_mutex_lock(&node->lock);
{
@@ -79,13 +79,13 @@ void *git_cache_get(git_cache *cache, const git_oid *oid)
void *git_cache_try_store(git_cache *cache, void *entry)
{
- const uint32_t *hash;
+ uint32_t hash;
const git_oid *oid;
cache_node *node = NULL;
oid = &((git_cached_obj*)entry)->oid;
- hash = (const uint32_t *)oid->id;
- node = &cache->nodes[hash[0] & cache->size_mask];
+ memcpy(&hash, oid->id, sizeof(hash));
+ node = &cache->nodes[hash & cache->size_mask];
/* increase the refcount on this object, because
* the cache now owns it */
View
4 src/commit.c
@@ -169,7 +169,7 @@ int git_commit_create(
return error;
}
-int commit_parse_buffer(git_commit *commit, const void *data, size_t len)
+int git_commit__parse_buffer(git_commit *commit, const void *data, size_t len)
{
const char *buffer = data;
const char *buffer_end = (const char *)data + len;
@@ -236,7 +236,7 @@ int commit_parse_buffer(git_commit *commit, const void *data, size_t len)
int git_commit__parse(git_commit *commit, git_odb_object *obj)
{
assert(commit);
- return commit_parse_buffer(commit, obj->raw.data, obj->raw.len);
+ return git_commit__parse_buffer(commit, obj->raw.data, obj->raw.len);
}
#define GIT_COMMIT_GETTER(_rvalue, _name, _return) \
View
1 src/commit.h
@@ -30,4 +30,5 @@ struct git_commit {
void git_commit__free(git_commit *c);
int git_commit__parse(git_commit *commit, git_odb_object *obj);
+int git_commit__parse_buffer(git_commit *commit, const void *data, size_t len);
#endif
View
2 src/config_file.c
@@ -553,7 +553,7 @@ static char *cfg_readline(diskfile_backend *cfg)
/*
* Consume a line, without storing it anywhere
*/
-void cfg_consume_line(diskfile_backend *cfg)
+static void cfg_consume_line(diskfile_backend *cfg)
{
char *line_start, *line_end;
View
2 src/mwindow.c
@@ -113,7 +113,7 @@ void git_mwindow_scan_lru(
* Close the least recently used window. You should check to see if
* the file descriptors need closing from time to time.
*/
-int git_mwindow_close_lru(git_mwindow_file *mwf)
+static int git_mwindow_close_lru(git_mwindow_file *mwf)
{
unsigned int i;
git_mwindow *lru_w = NULL, *lru_l = NULL;
View
22 src/odb_loose.c
@@ -463,7 +463,7 @@ static int locate_object(char *object_location, loose_backend *backend, const gi
}
/* Explore an entry of a directory and see if it matches a short oid */
-int fn_locate_object_short_oid(void *state, char *pathbuf) {
+static int fn_locate_object_short_oid(void *state, char *pathbuf) {
loose_locate_object_state *sstate = (loose_locate_object_state *)state;
size_t pathbuf_len = strlen(pathbuf);
@@ -559,7 +559,7 @@ static int locate_object_short_oid(char *object_location, git_oid *res_oid, loos
*
***********************************************************/
-int loose_backend__read_header(size_t *len_p, git_otype *type_p, git_odb_backend *backend, const git_oid *oid)
+static int loose_backend__read_header(size_t *len_p, git_otype *type_p, git_odb_backend *backend, const git_oid *oid)
{
char object_path[GIT_PATH_MAX];
git_rawobj raw;
@@ -581,7 +581,7 @@ int loose_backend__read_header(size_t *len_p, git_otype *type_p, git_odb_backend
return GIT_SUCCESS;
}
-int loose_backend__read(void **buffer_p, size_t *len_p, git_otype *type_p, git_odb_backend *backend, const git_oid *oid)
+static int loose_backend__read(void **buffer_p, size_t *len_p, git_otype *type_p, git_odb_backend *backend, const git_oid *oid)
{
char object_path[GIT_PATH_MAX];
git_rawobj raw;
@@ -602,7 +602,7 @@ int loose_backend__read(void **buffer_p, size_t *len_p, git_otype *type_p, git_o
return GIT_SUCCESS;
}
-int loose_backend__read_prefix(
+static int loose_backend__read_prefix(
git_oid *out_oid,
void **buffer_p,
size_t *len_p,
@@ -643,7 +643,7 @@ int loose_backend__read_prefix(
return GIT_SUCCESS;
}
-int loose_backend__exists(git_odb_backend *backend, const git_oid *oid)
+static int loose_backend__exists(git_odb_backend *backend, const git_oid *oid)
{
char object_path[GIT_PATH_MAX];
@@ -652,7 +652,7 @@ int loose_backend__exists(git_odb_backend *backend, const git_oid *oid)
return locate_object(object_path, (loose_backend *)backend, oid) == GIT_SUCCESS;
}
-int loose_backend__stream_fwrite(git_oid *oid, git_odb_stream *_stream)
+static int loose_backend__stream_fwrite(git_oid *oid, git_odb_stream *_stream)
{
loose_writestream *stream = (loose_writestream *)_stream;
loose_backend *backend = (loose_backend *)_stream->backend;
@@ -673,13 +673,13 @@ int loose_backend__stream_fwrite(git_oid *oid, git_odb_stream *_stream)
return git_filebuf_commit_at(&stream->fbuf, final_path);
}
-int loose_backend__stream_write(git_odb_stream *_stream, const char *data, size_t len)
+static int loose_backend__stream_write(git_odb_stream *_stream, const char *data, size_t len)
{
loose_writestream *stream = (loose_writestream *)_stream;
return git_filebuf_write(&stream->fbuf, data, len);
}
-void loose_backend__stream_free(git_odb_stream *_stream)
+static void loose_backend__stream_free(git_odb_stream *_stream)
{
loose_writestream *stream = (loose_writestream *)_stream;
@@ -702,7 +702,7 @@ static int format_object_header(char *hdr, size_t n, size_t obj_len, git_otype o
return len+1;
}
-int loose_backend__stream(git_odb_stream **stream_out, git_odb_backend *_backend, size_t length, git_otype type)
+static int loose_backend__stream(git_odb_stream **stream_out, git_odb_backend *_backend, size_t length, git_otype type)
{
loose_backend *backend;
loose_writestream *stream;
@@ -754,7 +754,7 @@ int loose_backend__stream(git_odb_stream **stream_out, git_odb_backend *_backend
return GIT_SUCCESS;
}
-int loose_backend__write(git_oid *oid, git_odb_backend *_backend, const void *data, size_t len, git_otype type)
+static int loose_backend__write(git_oid *oid, git_odb_backend *_backend, const void *data, size_t len, git_otype type)
{
int error, header_len;
char final_path[GIT_PATH_MAX], header[64];
@@ -797,7 +797,7 @@ int loose_backend__write(git_oid *oid, git_odb_backend *_backend, const void *da
return error;
}
-void loose_backend__free(git_odb_backend *_backend)
+static void loose_backend__free(git_odb_backend *_backend)
{
loose_backend *backend;
assert(_backend);
View
8 src/odb_pack.c
@@ -363,7 +363,7 @@ int pack_backend__read_header(git_rawobj *obj, git_odb_backend *backend, const g
}
*/
-int pack_backend__read(void **buffer_p, size_t *len_p, git_otype *type_p, git_odb_backend *backend, const git_oid *oid)
+static int pack_backend__read(void **buffer_p, size_t *len_p, git_otype *type_p, git_odb_backend *backend, const git_oid *oid)
{
struct git_pack_entry e;
git_rawobj raw;
@@ -382,7 +382,7 @@ int pack_backend__read(void **buffer_p, size_t *len_p, git_otype *type_p, git_od
return GIT_SUCCESS;
}
-int pack_backend__read_prefix(
+static int pack_backend__read_prefix(
git_oid *out_oid,
void **buffer_p,
size_t *len_p,
@@ -421,13 +421,13 @@ int pack_backend__read_prefix(
return GIT_SUCCESS;
}
-int pack_backend__exists(git_odb_backend *backend, const git_oid *oid)
+static int pack_backend__exists(git_odb_backend *backend, const git_oid *oid)
{
struct git_pack_entry e;
return pack_entry_find(&e, (struct pack_backend *)backend, oid) == GIT_SUCCESS;
}
-void pack_backend__free(git_odb_backend *_backend)
+static void pack_backend__free(git_odb_backend *_backend)
{
struct pack_backend *backend;
size_t i;
View
2 src/refs.c
@@ -1548,7 +1548,7 @@ int git_reference_foreach(git_repository *repo, unsigned int list_flags, int (*c
return git_futils_direach(refs_path, GIT_PATH_MAX, _dirent_loose_listall, &data);
}
-int cb__reflist_add(const char *ref, void *data)
+static int cb__reflist_add(const char *ref, void *data)
{
return git_vector_insert((git_vector *)data, git__strdup(ref));
}
View
5 src/remote.c
@@ -216,11 +216,6 @@ int git_remote_download(char **filename, git_remote *remote)
return git_fetch_download_pack(filename, remote);
}
-git_headarray *git_remote_tips(git_remote *remote)
-{
- return &remote->refs;
-}
-
int git_remote_update_tips(struct git_remote *remote)
{
int error = GIT_SUCCESS;
View
2 src/repository.c
@@ -156,7 +156,7 @@ static int quickcheck_repository_dir(const char *repository_path)
return GIT_SUCCESS;
}
-static git_repository *repository_alloc()
+static git_repository *repository_alloc(void)
{
int error;
View
6 src/revwalk.c
@@ -52,7 +52,7 @@ struct git_revwalk {
unsigned int sorting;
};
-commit_list *commit_list_insert(commit_object *item, commit_list **list_p)
+static commit_list *commit_list_insert(commit_object *item, commit_list **list_p)
{
commit_list *new_list = git__malloc(sizeof(commit_list));
new_list->item = item;
@@ -61,7 +61,7 @@ commit_list *commit_list_insert(commit_object *item, commit_list **list_p)
return new_list;
}
-void commit_list_free(commit_list **list_p)
+static void commit_list_free(commit_list **list_p)
{
commit_list *list = *list_p;
@@ -74,7 +74,7 @@ void commit_list_free(commit_list **list_p)
*list_p = NULL;
}
-commit_object *commit_list_pop(commit_list **stack)
+static commit_object *commit_list_pop(commit_list **stack)
{
commit_list *top = *stack;
commit_object *item = top ? top->item : NULL;
View
6 src/signature.c
@@ -203,7 +203,7 @@ static int parse_timezone_offset(const char *buffer, int *offset_out)
return GIT_SUCCESS;
}
-int process_next_token(const char **buffer_out, char **storage,
+static int process_next_token(const char **buffer_out, char **storage,
const char *token_end, const char *right_boundary)
{
int error = process_trimming(*buffer_out, storage, token_end, 0);
@@ -218,7 +218,7 @@ int process_next_token(const char **buffer_out, char **storage,
return GIT_SUCCESS;
}
-const char *scan_for_previous_token(const char *buffer, const char *left_boundary)
+static const char *scan_for_previous_token(const char *buffer, const char *left_boundary)
{
const char *start;
@@ -234,7 +234,7 @@ const char *scan_for_previous_token(const char *buffer, const char *left_boundar
return start;
}
-int parse_time(git_time_t *time_out, const char *buffer)
+static int parse_time(git_time_t *time_out, const char *buffer)
{
long time;
int error;
View
9 src/tree.c
@@ -24,7 +24,7 @@ struct tree_key_search {
size_t filename_len;
};
-int entry_search_cmp(const void *key, const void *array_member)
+static int entry_search_cmp(const void *key, const void *array_member)
{
const struct tree_key_search *ksearch = key;
const git_tree_entry *entry = array_member;
@@ -37,7 +37,7 @@ int entry_search_cmp(const void *key, const void *array_member)
return result ? result : ((int)ksearch->filename_len - (int)entry->filename_len);
}
-int entry_sort_cmp(const void *a, const void *b)
+static int entry_sort_cmp(const void *a, const void *b)
{
const git_tree_entry *entry_a = (const git_tree_entry *)(a);
const git_tree_entry *entry_b = (const git_tree_entry *)(b);
@@ -157,6 +157,7 @@ static int tree_parse_buffer(git_tree *tree, const char *buffer, const char *buf
while (buffer < buffer_end) {
git_tree_entry *entry;
+ long tmp;
entry = git__calloc(1, sizeof(git_tree_entry));
if (entry == NULL) {
@@ -167,8 +168,10 @@ static int tree_parse_buffer(git_tree *tree, const char *buffer, const char *buf
if (git_vector_insert(&tree->entries, entry) < GIT_SUCCESS)
return GIT_ENOMEM;
- if (git__strtol32((long *)&entry->attr, buffer, &buffer, 8) < GIT_SUCCESS)
+ if (git__strtol32(&tmp, buffer, &buffer, 8) < GIT_SUCCESS ||
+ !buffer || tmp > UINT_MAX || tmp < 0)
return git__throw(GIT_EOBJCORRUPTED, "Failed to parse tree. Can't parse attributes");
+ entry->attr = tmp;
if (*buffer++ != ' ') {
error = git__throw(GIT_EOBJCORRUPTED, "Failed to parse tree. Object it corrupted");
View
2 tests/t00-core.c
@@ -506,7 +506,7 @@ END_TEST
static char *empty_tmp_dir = "test_gitfo_rmdir_recurs_test";
-static int setup_empty_tmp_dir()
+static int setup_empty_tmp_dir(void)
{
char path[GIT_PATH_MAX];
View
9 tests/t04-commit.c
@@ -498,9 +498,6 @@ BEGIN_TEST(signature4, "creating a zero character signature")
END_TEST
-/* External declaration for testing the buffer parsing method */
-int commit_parse_buffer(git_commit *commit, void *data, size_t len);
-
BEGIN_TEST(parse2, "parse a whole commit buffer")
const int broken_commit_count = sizeof(test_commits_broken) / sizeof(*test_commits_broken);
const int working_commit_count = sizeof(test_commits_working) / sizeof(*test_commits_working);
@@ -516,7 +513,7 @@ BEGIN_TEST(parse2, "parse a whole commit buffer")
memset(commit, 0x0, sizeof(git_commit));
commit->object.repo = repo;
- must_fail(commit_parse_buffer(
+ must_fail(git_commit__parse_buffer(
commit,
test_commits_broken[i],
strlen(test_commits_broken[i]))
@@ -532,7 +529,7 @@ BEGIN_TEST(parse2, "parse a whole commit buffer")
memset(commit, 0x0, sizeof(git_commit));
commit->object.repo = repo;
- must_pass(commit_parse_buffer(
+ must_pass(git_commit__parse_buffer(
commit,
test_commits_working[i],
strlen(test_commits_working[i]))
@@ -544,7 +541,7 @@ BEGIN_TEST(parse2, "parse a whole commit buffer")
memset(commit, 0x0, sizeof(git_commit));
commit->object.repo = repo;
- must_pass(commit_parse_buffer(
+ must_pass(git_commit__parse_buffer(
commit,
test_commits_working[i],
strlen(test_commits_working[i]))
View
4 tests/t07-hashtable.c
@@ -34,7 +34,7 @@ typedef struct _aux_object {
int visited;
} table_item;
-uint32_t hash_func(const void *key, int hash_id)
+static uint32_t hash_func(const void *key, int hash_id)
{
uint32_t r;
const git_oid *id = key;
@@ -43,7 +43,7 @@ uint32_t hash_func(const void *key, int hash_id)
return r;
}
-int hash_cmpkey(const void *a, const void *b)
+static int hash_cmpkey(const void *a, const void *b)
{
return git_oid_cmp(a, b);
}
View
4 tests/t12-repo.c
@@ -34,7 +34,7 @@ typedef struct {
int position;
} fake_backend;
-git_odb_backend *new_backend(int position)
+static git_odb_backend *new_backend(int position)
{
fake_backend *b;
@@ -47,7 +47,7 @@ git_odb_backend *new_backend(int position)
return (git_odb_backend *)b;
}
-int test_backend_sorting(git_odb *odb)
+static int test_backend_sorting(git_odb *odb)
{
unsigned int i;
View
1 tests/test_lib.h
@@ -13,6 +13,7 @@
#define SUITE_NAME(SNAME) libgit2_suite_##SNAME
#define BEGIN_SUITE(SNAME) \
+ git_testsuite *libgit2_suite_##SNAME(void);\
git_testsuite *libgit2_suite_##SNAME(void) {\
git_testsuite *_gitsuite = git_testsuite_new(#SNAME);

0 comments on commit 71a4c1f

Please sign in to comment.