From: Seija Kijin <doremylover123@xxxxxxxxx> We can avoid having to call memset by calling calloc Signed-off-by: Seija <doremylover123@xxxxxxxxx> --- revision: use calloc instead of malloc where possible We can avoid having to call memset by calling calloc Signed-off-by: Seija doremylover123@xxxxxxxxx Published-As: https://github.com/gitgitgadget/git/releases/tag/pr-git-1390%2FAreaZR%2Fcalloc-v7 Fetch-It-Via: git fetch https://github.com/gitgitgadget/git pr-git-1390/AreaZR/calloc-v7 Pull-Request: https://github.com/git/git/pull/1390 Range-diff vs v6: 1: e012cf5c158 ! 1: e91cea8dea8 revision: use calloc instead of malloc where possible @@ ## Metadata ## -Author: Seija <doremylover123@xxxxxxxxx> +Author: Seija Kijin <doremylover123@xxxxxxxxx> ## Commit message ## revision: use calloc instead of malloc where possible We can avoid having to call memset by calling calloc - Signed-off-by: Seija doremylover123@xxxxxxxxx + Signed-off-by: Seija <doremylover123@xxxxxxxxx> ## builtin/pack-redundant.c ## @@ builtin/pack-redundant.c: static inline struct llist_item *llist_item_get(void) @@ builtin/pack-redundant.c: static inline struct llist_item *llist_item_get(void) - (*list)->size = 0; -} - - static struct llist * llist_copy(struct llist *list) + static void llist_free(struct llist *list) { + for (struct llist_item *i = list->front, *next; i; i = next) { +@@ builtin/pack-redundant.c: static struct llist * llist_copy(struct llist *list) struct llist *ret; struct llist_item *new_item, *old_item, *prev; @@ builtin/pack-redundant.c: static struct pack_list * add_pack(struct packed_git * if (open_pack_index(p)) return NULL; -@@ builtin/pack-redundant.c: int cmd_pack_redundant(int argc, const char **argv, const char *prefix) +@@ builtin/pack-redundant.c: int cmd_pack_redundant(int argc, const char **argv, const char *prefix UNUSED, s scan_alt_odb_packs(); /* ignore objects given on stdin */ - llist_init(&ignore); + CALLOC_ARRAY(ignore, 1); if (!isatty(0)) { + struct object_id oid; while (fgets(buf, sizeof(buf), stdin)) { - oid = xmalloc(sizeof(*oid)); ## remote.c ## @@ remote.c: void apply_push_cas(struct push_cas_option *cas, @@ submodule.c: static struct fetch_task *fetch_task_create(struct submodule_parall + + CALLOC_ARRAY(task, 1); - task->sub = submodule_from_path(spf->r, treeish_name, path); - + if (validate_submodule_path(path) < 0) + exit(128); builtin/pack-redundant.c | 17 +++++------------ remote.c | 4 ++-- submodule.c | 10 +++++----- 3 files changed, 12 insertions(+), 19 deletions(-) diff --git a/builtin/pack-redundant.c b/builtin/pack-redundant.c index bc61990a933..7015a85bf78 100644 --- a/builtin/pack-redundant.c +++ b/builtin/pack-redundant.c @@ -63,13 +63,6 @@ static inline struct llist_item *llist_item_get(void) return new_item; } -static inline void llist_init(struct llist **list) -{ - *list = xmalloc(sizeof(struct llist)); - (*list)->front = (*list)->back = NULL; - (*list)->size = 0; -} - static void llist_free(struct llist *list) { for (struct llist_item *i = list->front, *next; i; i = next) { @@ -84,7 +77,7 @@ static struct llist * llist_copy(struct llist *list) struct llist *ret; struct llist_item *new_item, *old_item, *prev; - llist_init(&ret); + CALLOC_ARRAY(ret, 1); if ((ret->size = list->size) == 0) return ret; @@ -480,7 +473,7 @@ static void load_all_objects(void) struct pack_list *pl = local_packs; struct llist_item *hint, *l; - llist_init(&all_objects); + CALLOC_ARRAY(all_objects, 1); while (pl) { hint = NULL; @@ -507,7 +500,7 @@ static void cmp_local_packs(void) /* only one packfile */ if (!pl->next) { - llist_init(&pl->unique_objects); + CALLOC_ARRAY(pl->unique_objects, 1); return; } @@ -544,7 +537,7 @@ static struct pack_list * add_pack(struct packed_git *p) return NULL; l.pack = p; - llist_init(&l.remaining_objects); + CALLOC_ARRAY(l.remaining_objects, 1); if (open_pack_index(p)) return NULL; @@ -650,7 +643,7 @@ int cmd_pack_redundant(int argc, const char **argv, const char *prefix UNUSED, s scan_alt_odb_packs(); /* ignore objects given on stdin */ - llist_init(&ignore); + CALLOC_ARRAY(ignore, 1); if (!isatty(0)) { struct object_id oid; while (fgets(buf, sizeof(buf), stdin)) { diff --git a/remote.c b/remote.c index 10104d11e3c..462ff105273 100644 --- a/remote.c +++ b/remote.c @@ -2854,9 +2854,9 @@ void apply_push_cas(struct push_cas_option *cas, struct remote_state *remote_state_new(void) { - struct remote_state *r = xmalloc(sizeof(*r)); + struct remote_state *r; - memset(r, 0, sizeof(*r)); + CALLOC_ARRAY(r, 1); hashmap_init(&r->remotes_hash, remotes_hash_cmp, NULL, 0); hashmap_init(&r->branches_hash, branches_hash_cmp, NULL, 0); diff --git a/submodule.c b/submodule.c index 7ec564854d0..7707c6f48f0 100644 --- a/submodule.c +++ b/submodule.c @@ -1489,14 +1489,13 @@ struct fetch_task { */ static const struct submodule *get_non_gitmodules_submodule(const char *path) { - struct submodule *ret = NULL; + struct submodule *ret; const char *name = default_name_or_path(path); if (!name) return NULL; - ret = xmalloc(sizeof(*ret)); - memset(ret, 0, sizeof(*ret)); + CALLOC_ARRAY(ret, 1); ret->path = name; ret->name = name; @@ -1536,8 +1535,9 @@ static struct fetch_task *fetch_task_create(struct submodule_parallel_fetch *spf const char *path, const struct object_id *treeish_name) { - struct fetch_task *task = xmalloc(sizeof(*task)); - memset(task, 0, sizeof(*task)); + struct fetch_task *task; + + CALLOC_ARRAY(task, 1); if (validate_submodule_path(path) < 0) exit(128); base-commit: 2ccc89b0c16c51561da90d21cfbb4b58cc877bf6 -- gitgitgadget