feat(cgit/ui-tree): don't link to blame for binary blobs
This commit is contained in:
parent
37b0b37771
commit
6932c431bb
1 changed files with 4 additions and 2 deletions
6
third_party/cgit/ui-tree.c
vendored
6
third_party/cgit/ui-tree.c
vendored
|
@ -89,6 +89,7 @@ static void print_object(const struct object_id *oid, const char *path, const ch
|
||||||
enum object_type type;
|
enum object_type type;
|
||||||
char *buf;
|
char *buf;
|
||||||
unsigned long size;
|
unsigned long size;
|
||||||
|
int is_binary;
|
||||||
|
|
||||||
type = oid_object_info(the_repository, oid, &size);
|
type = oid_object_info(the_repository, oid, &size);
|
||||||
if (type == OBJ_BAD) {
|
if (type == OBJ_BAD) {
|
||||||
|
@ -103,6 +104,7 @@ static void print_object(const struct object_id *oid, const char *path, const ch
|
||||||
"Error reading object %s", oid_to_hex(oid));
|
"Error reading object %s", oid_to_hex(oid));
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
is_binary = buffer_is_binary(buf, size);
|
||||||
|
|
||||||
cgit_set_title_from_path(path);
|
cgit_set_title_from_path(path);
|
||||||
|
|
||||||
|
@ -110,7 +112,7 @@ static void print_object(const struct object_id *oid, const char *path, const ch
|
||||||
htmlf("blob: %s (", oid_to_hex(oid));
|
htmlf("blob: %s (", oid_to_hex(oid));
|
||||||
cgit_plain_link("plain", NULL, NULL, ctx.qry.head,
|
cgit_plain_link("plain", NULL, NULL, ctx.qry.head,
|
||||||
rev, path);
|
rev, path);
|
||||||
if (ctx.repo->enable_blame) {
|
if (ctx.repo->enable_blame && !is_binary) {
|
||||||
html(") (");
|
html(") (");
|
||||||
cgit_blame_link("blame", NULL, NULL, ctx.qry.head,
|
cgit_blame_link("blame", NULL, NULL, ctx.qry.head,
|
||||||
rev, path);
|
rev, path);
|
||||||
|
@ -123,7 +125,7 @@ static void print_object(const struct object_id *oid, const char *path, const ch
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (buffer_is_binary(buf, size))
|
if (is_binary)
|
||||||
print_binary_buffer(buf, size);
|
print_binary_buffer(buf, size);
|
||||||
else
|
else
|
||||||
print_text_buffer(basename, buf, size);
|
print_text_buffer(basename, buf, size);
|
||||||
|
|
Loading…
Reference in a new issue