Merge branch 'js/blame-lib'
The internal logic used in "git blame" has been libified to make it easier to use by cgit. * js/blame-lib: (29 commits) blame: move entry prepend to libgit blame: move scoreboard setup to libgit blame: move scoreboard-related methods to libgit blame: move fake-commit-related methods to libgit blame: move origin-related methods to libgit blame: move core structures to header blame: create entry prepend function blame: create scoreboard setup function blame: create scoreboard init function blame: rework methods that determine 'final' commit blame: wrap blame_sort and compare_blame_final blame: move progress updates to a scoreboard callback blame: make sanity_check use a callback in scoreboard blame: move no_whole_file_rename flag to scoreboard blame: move xdl_opts flags to scoreboard blame: move show_root flag to scoreboard blame: move reverse flag to scoreboard blame: move contents_from to scoreboard blame: move copy/move thresholds to scoreboard blame: move stat counters to scoreboard ...
This commit is contained in:
23
diff.c
23
diff.c
@ -5270,6 +5270,29 @@ size_t fill_textconv(struct userdiff_driver *driver,
|
||||
return size;
|
||||
}
|
||||
|
||||
int textconv_object(const char *path,
|
||||
unsigned mode,
|
||||
const struct object_id *oid,
|
||||
int oid_valid,
|
||||
char **buf,
|
||||
unsigned long *buf_size)
|
||||
{
|
||||
struct diff_filespec *df;
|
||||
struct userdiff_driver *textconv;
|
||||
|
||||
df = alloc_filespec(path);
|
||||
fill_filespec(df, oid->hash, oid_valid, mode);
|
||||
textconv = get_textconv(df);
|
||||
if (!textconv) {
|
||||
free_filespec(df);
|
||||
return 0;
|
||||
}
|
||||
|
||||
*buf_size = fill_textconv(textconv, df, buf);
|
||||
free_filespec(df);
|
||||
return 1;
|
||||
}
|
||||
|
||||
void setup_diff_pager(struct diff_options *opt)
|
||||
{
|
||||
/*
|
||||
|
||||
Reference in New Issue
Block a user