projects
/
git.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Some more memory leak avoidance
[git.git]
/
server-info.c
diff --git
a/server-info.c
b/server-info.c
index
7d7bcb2
..
0eb5132
100644
(file)
--- a/
server-info.c
+++ b/
server-info.c
@@
-12,7
+12,7
@@
static int add_info_ref(const char *path, const unsigned char *sha1)
struct object *o = parse_object(sha1);
fprintf(info_ref_fp, "%s %s\n", sha1_to_hex(sha1), path);
struct object *o = parse_object(sha1);
fprintf(info_ref_fp, "%s %s\n", sha1_to_hex(sha1), path);
- if (o->type ==
tag_type
) {
+ if (o->type ==
TYPE_TAG
) {
o = deref_tag(o, path, 0);
if (o)
fprintf(info_ref_fp, "%s %s^{}\n",
o = deref_tag(o, path, 0);
if (o)
fprintf(info_ref_fp, "%s %s^{}\n",
@@
-99,7
+99,10
@@
static int read_pack_info_file(const char *infofile)
while (fgets(line, sizeof(line), fp)) {
int len = strlen(line);
if (line[len-1] == '\n')
while (fgets(line, sizeof(line), fp)) {
int len = strlen(line);
if (line[len-1] == '\n')
- line[len-1] = 0;
+ line[--len] = 0;
+
+ if (!len)
+ continue;
switch (line[0]) {
case 'P': /* P name */
switch (line[0]) {
case 'P': /* P name */
@@
-140,7
+143,12
@@
static int compare_info(const void *a_, const void *b_)
return 1;
/* then it does not matter but at least keep the comparison stable */
return 1;
/* then it does not matter but at least keep the comparison stable */
- return (*a)->p - (*b)->p;
+ if ((*a)->p == (*b)->p)
+ return 0;
+ else if ((*a)->p < (*b)->p)
+ return -1;
+ else
+ return 1;
}
static void init_pack_info(const char *infofile, int force)
}
static void init_pack_info(const char *infofile, int force)
@@
-195,6
+203,7
@@
static void write_pack_info_file(FILE *fp)
int i;
for (i = 0; i < num_pack; i++)
fprintf(fp, "P %s\n", info[i]->p->pack_name + objdirlen + 6);
int i;
for (i = 0; i < num_pack; i++)
fprintf(fp, "P %s\n", info[i]->p->pack_name + objdirlen + 6);
+ fputc('\n', fp);
}
static int update_info_packs(int force)
}
static int update_info_packs(int force)