author | Lars Hjemli <hjemli@gmail.com> | 2007-05-13 09:24:23 (UTC) |
---|---|---|
committer | Lars Hjemli <hjemli@gmail.com> | 2007-05-13 09:24:23 (UTC) |
commit | 1b49de3c2c52e29c78f870826b6334abdadc0295 (patch) (unidiff) | |
tree | 65c91902c77afe4837d2a650de5863e6afc9c9a7 /cgit.h | |
parent | f5af0beb6ab569d64950ca55a52a07923917ce81 (diff) | |
download | cgit-1b49de3c2c52e29c78f870826b6334abdadc0295.zip cgit-1b49de3c2c52e29c78f870826b6334abdadc0295.tar.gz cgit-1b49de3c2c52e29c78f870826b6334abdadc0295.tar.bz2 |
Add shared diff-handling functions
This adds a standard interface for tree diffing.
Signed-off-by: Lars Hjemli <hjemli@gmail.com>
-rw-r--r-- | cgit.h | 5 |
1 files changed, 5 insertions, 0 deletions
@@ -6,32 +6,33 @@ | |||
6 | #include <cache.h> | 6 | #include <cache.h> |
7 | #include <grep.h> | 7 | #include <grep.h> |
8 | #include <object.h> | 8 | #include <object.h> |
9 | #include <tree.h> | 9 | #include <tree.h> |
10 | #include <commit.h> | 10 | #include <commit.h> |
11 | #include <tag.h> | 11 | #include <tag.h> |
12 | #include <diff.h> | 12 | #include <diff.h> |
13 | #include <diffcore.h> | 13 | #include <diffcore.h> |
14 | #include <refs.h> | 14 | #include <refs.h> |
15 | #include <revision.h> | 15 | #include <revision.h> |
16 | #include <log-tree.h> | 16 | #include <log-tree.h> |
17 | #include <archive.h> | 17 | #include <archive.h> |
18 | #include <xdiff/xdiff.h> | 18 | #include <xdiff/xdiff.h> |
19 | 19 | ||
20 | 20 | ||
21 | typedef void (*configfn)(const char *name, const char *value); | 21 | typedef void (*configfn)(const char *name, const char *value); |
22 | typedef void (*filepair_fn)(struct diff_filepair *pair); | ||
22 | 23 | ||
23 | struct cacheitem { | 24 | struct cacheitem { |
24 | char *name; | 25 | char *name; |
25 | struct stat st; | 26 | struct stat st; |
26 | int ttl; | 27 | int ttl; |
27 | int fd; | 28 | int fd; |
28 | }; | 29 | }; |
29 | 30 | ||
30 | struct repoinfo { | 31 | struct repoinfo { |
31 | char *url; | 32 | char *url; |
32 | char *name; | 33 | char *name; |
33 | char *path; | 34 | char *path; |
34 | char *desc; | 35 | char *desc; |
35 | char *owner; | 36 | char *owner; |
36 | char *module_link; | 37 | char *module_link; |
37 | int snapshots; | 38 | int snapshots; |
@@ -103,32 +104,36 @@ extern char *cgit_query_sha2; | |||
103 | extern char *cgit_query_path; | 104 | extern char *cgit_query_path; |
104 | extern char *cgit_query_name; | 105 | extern char *cgit_query_name; |
105 | extern int cgit_query_ofs; | 106 | extern int cgit_query_ofs; |
106 | 107 | ||
107 | extern int htmlfd; | 108 | extern int htmlfd; |
108 | 109 | ||
109 | extern void cgit_global_config_cb(const char *name, const char *value); | 110 | extern void cgit_global_config_cb(const char *name, const char *value); |
110 | extern void cgit_repo_config_cb(const char *name, const char *value); | 111 | extern void cgit_repo_config_cb(const char *name, const char *value); |
111 | extern void cgit_querystring_cb(const char *name, const char *value); | 112 | extern void cgit_querystring_cb(const char *name, const char *value); |
112 | 113 | ||
113 | extern int chk_zero(int result, char *msg); | 114 | extern int chk_zero(int result, char *msg); |
114 | extern int chk_positive(int result, char *msg); | 115 | extern int chk_positive(int result, char *msg); |
115 | 116 | ||
116 | extern int hextoint(char c); | 117 | extern int hextoint(char c); |
117 | 118 | ||
118 | extern void *cgit_free_commitinfo(struct commitinfo *info); | 119 | extern void *cgit_free_commitinfo(struct commitinfo *info); |
120 | extern void cgit_diff_tree(const unsigned char *old_sha1, | ||
121 | const unsigned char *new_sha1, | ||
122 | filepair_fn fn); | ||
123 | extern void cgit_diff_commit(struct commit *commit, filepair_fn fn); | ||
119 | 124 | ||
120 | extern char *fmt(const char *format,...); | 125 | extern char *fmt(const char *format,...); |
121 | 126 | ||
122 | extern void html(const char *txt); | 127 | extern void html(const char *txt); |
123 | extern void htmlf(const char *format,...); | 128 | extern void htmlf(const char *format,...); |
124 | extern void html_txt(char *txt); | 129 | extern void html_txt(char *txt); |
125 | extern void html_ntxt(int len, char *txt); | 130 | extern void html_ntxt(int len, char *txt); |
126 | extern void html_attr(char *txt); | 131 | extern void html_attr(char *txt); |
127 | extern void html_hidden(char *name, char *value); | 132 | extern void html_hidden(char *name, char *value); |
128 | extern void html_link_open(char *url, char *title, char *class); | 133 | extern void html_link_open(char *url, char *title, char *class); |
129 | extern void html_link_close(void); | 134 | extern void html_link_close(void); |
130 | extern void html_filemode(unsigned short mode); | 135 | extern void html_filemode(unsigned short mode); |
131 | 136 | ||
132 | extern int cgit_read_config(const char *filename, configfn fn); | 137 | extern int cgit_read_config(const char *filename, configfn fn); |
133 | extern int cgit_parse_query(char *txt, configfn fn); | 138 | extern int cgit_parse_query(char *txt, configfn fn); |
134 | extern struct commitinfo *cgit_parse_commit(struct commit *commit); | 139 | extern struct commitinfo *cgit_parse_commit(struct commit *commit); |