if (str == NULL)
return NULL;
len = strlen(str);
- while(len > 0 && str[len - 1] == c)
+ while (len > 0 && str[len - 1] == c)
len--;
if (len == 0)
return NULL;
list->refs[list->count++] = ref;
}
-struct refinfo *cgit_mk_refinfo(const char *refname, const unsigned char *sha1)
+static struct refinfo *cgit_mk_refinfo(const char *refname, const unsigned char *sha1)
{
struct refinfo *ref;
return ref;
}
+static void cgit_free_taginfo(struct taginfo *tag)
+{
+ if (tag->tagger)
+ free(tag->tagger);
+ if (tag->tagger_email)
+ free(tag->tagger_email);
+ if (tag->msg)
+ free(tag->msg);
+ free(tag);
+}
+
+static void cgit_free_refinfo(struct refinfo *ref)
+{
+ if (ref->refname)
+ free((char *)ref->refname);
+ switch (ref->object->type) {
+ case OBJ_TAG:
+ cgit_free_taginfo(ref->tag);
+ break;
+ case OBJ_COMMIT:
+ cgit_free_commitinfo(ref->commit);
+ break;
+ }
+ free(ref);
+}
+
+void cgit_free_reflist_inner(struct reflist *list)
+{
+ int i;
+
+ for (i = 0; i < list->count; i++) {
+ cgit_free_refinfo(list->refs[i]);
+ }
+ free(list->refs);
+}
+
int cgit_refs_cb(const char *refname, const unsigned char *sha1, int flags,
void *cb_data)
{
return 0;
}
-void cgit_diff_tree_cb(struct diff_queue_struct *q,
- struct diff_options *options, void *data)
+static void cgit_diff_tree_cb(struct diff_queue_struct *q,
+ struct diff_options *options, void *data)
{
int i;
char *diffbuf = NULL;
int buflen = 0;
-int filediff_cb(void *priv, mmbuffer_t *mb, int nbuf)
+static int filediff_cb(void *priv, mmbuffer_t *mb, int nbuf)
{
int i;
int tl, sl, rv = 0;
/* favor legacy setting */
- if(atoi(str))
+ if (atoi(str))
return 1;
- for(;;) {
+ for (;;) {
str += strspn(str, delim);
tl = strcspn(str, delim);
if (!tl)
break;
for (f = cgit_snapshot_formats; f->suffix; f++) {
sl = strlen(f->suffix);
- if((tl == sl && !strncmp(f->suffix, str, tl)) ||
+ if ((tl == sl && !strncmp(f->suffix, str, tl)) ||
(tl == sl - 1 && !strncmp(f->suffix + 1, str, tl - 1))) {
rv |= f->bit;
break;
return (*size == st.st_size ? 0 : e);
}
-int is_token_char(char c)
+static int is_token_char(char c)
{
return isalnum(c) || c == '_';
}
/* Replace name with getenv(name), return pointer to zero-terminating char
*/
-char *expand_macro(char *name, int maxlength)
+static char *expand_macro(char *name, int maxlength)
{
char *value;
int len;