"max-blob-size" config var to limit generated HTML size

Sometimes it is not feasible to generate the HTML pretty-print for large
files, especially if a source-filter is involved or binary data is to be
displayed. The "max-blob-size" config var allows to disable HTML output
for blobs bigger than X KBytes. Plain downloads are not affected.

Signed-off-by: Georg Lukas <georg@op-co.de>
This commit is contained in:
Georg Lukas 2009-11-28 03:44:33 +01:00
parent 545b5a5dca
commit ef07ccc72d
4 changed files with 14 additions and 0 deletions

View file

@ -107,6 +107,12 @@ static void print_object(const unsigned char *sha1, char *path, const char *base
curr_rev, path);
htmlf(")<br/>blob: %s\n", sha1_to_hex(sha1));
if (ctx.cfg.max_blob_size && size / 1024 > ctx.cfg.max_blob_size) {
htmlf("<div class='error'>blob size (%dKB) exceeds display size limit (%dKB).</div>",
size / 1024, ctx.cfg.max_blob_size);
return;
}
if (buffer_is_binary(buf, size))
print_binary_buffer(buf, size);
else