Skip to content

Commit

Permalink
free(NULL) is perfectly valid.
Browse files Browse the repository at this point in the history
Jonas noticed some places say "if (X) free(X)" which is totally
unnecessary.

Signed-off-by: Junio C Hamano <junkio@cox.net>
  • Loading branch information
Junio C Hamano committed Aug 28, 2006
1 parent b3c952f commit 4cac42b
Show file tree
Hide file tree
Showing 10 changed files with 21 additions and 44 deletions.
6 changes: 2 additions & 4 deletions builtin-apply.c
Expand Up @@ -1131,8 +1131,7 @@ static struct fragment *parse_binary_hunk(char **buf_p,
return frag;

corrupt:
if (data)
free(data);
free(data);
*status_p = -1;
error("corrupt binary patch at line %d: %.*s",
linenr-1, llen-1, buffer);
Expand Down Expand Up @@ -1329,8 +1328,7 @@ static void show_stats(struct patch *patch)
printf(" %s%-*s |%5d %.*s%.*s\n", prefix,
len, name, patch->lines_added + patch->lines_deleted,
add, pluses, del, minuses);
if (qname)
free(qname);
free(qname);
}

static int read_old_data(struct stat *st, const char *path, void *buf, unsigned long size)
Expand Down
3 changes: 1 addition & 2 deletions builtin-fmt-merge-msg.c
Expand Up @@ -55,8 +55,7 @@ static void free_list(struct list *list)

for (i = 0; i < list->nr; i++) {
free(list->list[i]);
if (list->payload[i])
free(list->payload[i]);
free(list->payload[i]);
}
free(list->list);
free(list->payload);
Expand Down
6 changes: 2 additions & 4 deletions builtin-repo-config.c
Expand Up @@ -122,10 +122,8 @@ static int get_value(const char* key_, const char* regex_)
ret = (seen == 1) ? 0 : 1;

free_strings:
if (repo_config)
free(repo_config);
if (global)
free(global);
free(repo_config);
free(global);
return ret;
}

Expand Down
6 changes: 2 additions & 4 deletions builtin-rev-list.c
Expand Up @@ -93,10 +93,8 @@ static void show_commit(struct commit *commit)
free_commit_list(commit->parents);
commit->parents = NULL;
}
if (commit->buffer) {
free(commit->buffer);
commit->buffer = NULL;
}
free(commit->buffer);
commit->buffer = NULL;
}

static void process_blob(struct blob *blob,
Expand Down
6 changes: 2 additions & 4 deletions config.c
Expand Up @@ -361,8 +361,7 @@ int git_config(config_fn_t fn)
}

ret += git_config_from_file(fn, filename);
if (repo_config)
free(repo_config);
free(repo_config);
return ret;
}

Expand Down Expand Up @@ -734,8 +733,7 @@ int git_config_set_multivar(const char* key, const char* value,
out_free:
if (0 <= fd)
close(fd);
if (config_filename)
free(config_filename);
free(config_filename);
if (lock_file) {
unlink(lock_file);
free(lock_file);
Expand Down
3 changes: 1 addition & 2 deletions fetch.c
Expand Up @@ -302,8 +302,7 @@ int pull(int targets, char **target, const char **write_ref,
if (ret)
goto unlock_and_fail;
}
if (msg)
free(msg);
free(msg);

return 0;

Expand Down
13 changes: 4 additions & 9 deletions http-fetch.c
Expand Up @@ -696,10 +696,8 @@ xml_start_tag(void *userData, const char *name, const char **atts)
strcat(ctx->name, ".");
strcat(ctx->name, c);

if (ctx->cdata) {
free(ctx->cdata);
ctx->cdata = NULL;
}
free(ctx->cdata);
ctx->cdata = NULL;

ctx->userFunc(ctx, 0);
}
Expand All @@ -726,8 +724,7 @@ static void
xml_cdata(void *userData, const XML_Char *s, int len)
{
struct xml_ctx *ctx = (struct xml_ctx *)userData;
if (ctx->cdata)
free(ctx->cdata);
free(ctx->cdata);
ctx->cdata = xmalloc(len + 1);
strlcpy(ctx->cdata, s, len + 1);
}
Expand Down Expand Up @@ -765,9 +762,7 @@ static void handle_remote_ls_ctx(struct xml_ctx *ctx, int tag_closed)
ls->dentry_flags |= IS_DIR;
}
} else if (!strcmp(ctx->name, DAV_PROPFIND_RESP)) {
if (ls->dentry_name) {
free(ls->dentry_name);
}
free(ls->dentry_name);
ls->dentry_name = NULL;
ls->dentry_flags = 0;
}
Expand Down
13 changes: 4 additions & 9 deletions http-push.c
Expand Up @@ -1238,10 +1238,8 @@ xml_start_tag(void *userData, const char *name, const char **atts)
strcat(ctx->name, ".");
strcat(ctx->name, c);

if (ctx->cdata) {
free(ctx->cdata);
ctx->cdata = NULL;
}
free(ctx->cdata);
ctx->cdata = NULL;

ctx->userFunc(ctx, 0);
}
Expand All @@ -1268,8 +1266,7 @@ static void
xml_cdata(void *userData, const XML_Char *s, int len)
{
struct xml_ctx *ctx = (struct xml_ctx *)userData;
if (ctx->cdata)
free(ctx->cdata);
free(ctx->cdata);
ctx->cdata = xmalloc(len + 1);
strlcpy(ctx->cdata, s, len + 1);
}
Expand Down Expand Up @@ -1518,9 +1515,7 @@ static void handle_remote_ls_ctx(struct xml_ctx *ctx, int tag_closed)
ls->dentry_flags |= IS_DIR;
}
} else if (!strcmp(ctx->name, DAV_PROPFIND_RESP)) {
if (ls->dentry_name) {
free(ls->dentry_name);
}
free(ls->dentry_name);
ls->dentry_name = NULL;
ls->dentry_flags = 0;
}
Expand Down
3 changes: 1 addition & 2 deletions path-list.c
Expand Up @@ -85,8 +85,7 @@ void path_list_clear(struct path_list *list, int free_items)
for (i = 0; i < list->nr; i++) {
if (list->strdup_paths)
free(list->items[i].path);
if (list->items[i].util)
free(list->items[i].util);
free(list->items[i].util);
}
free(list->items);
}
Expand Down
6 changes: 2 additions & 4 deletions refs.c
Expand Up @@ -348,10 +348,8 @@ void unlock_ref(struct ref_lock *lock)
if (lock->lk)
rollback_lock_file(lock->lk);
}
if (lock->ref_file)
free(lock->ref_file);
if (lock->log_file)
free(lock->log_file);
free(lock->ref_file);
free(lock->log_file);
free(lock);
}

Expand Down

0 comments on commit 4cac42b

Please sign in to comment.