diff options
author | Russell Belfer <rb@github.com> | 2014-05-12 10:28:45 -0700 |
---|---|---|
committer | Russell Belfer <rb@github.com> | 2014-05-12 10:28:45 -0700 |
commit | ce3b71d91b9cac3b462dec9ac2c7e397b55c00a6 (patch) | |
tree | d644cd507c33e44f720732c3006c82f7268f0fd6 | |
parent | b1914c36511af468366482c4dc8974bd1c2995fc (diff) | |
download | libgit2-ce3b71d91b9cac3b462dec9ac2c7e397b55c00a6.tar.gz |
Don't scale diff stat when not needed
-rw-r--r-- | src/diff_stats.c | 2 | ||||
-rw-r--r-- | tests/diff/stats.c | 4 |
2 files changed, 6 insertions, 0 deletions
diff --git a/src/diff_stats.c b/src/diff_stats.c index 6ad670c42..42ccbfb87 100644 --- a/src/diff_stats.c +++ b/src/diff_stats.c @@ -284,6 +284,8 @@ int git_diff_stats_to_buf( if (width < STATS_FULL_MIN_SCALE) width = STATS_FULL_MIN_SCALE; } + if (width > stats->max_filestat) + width = 0; for (i = 0; i < stats->files_changed; ++i) { if ((delta = git_diff_get_delta(stats->diff, i)) == NULL) diff --git a/tests/diff/stats.c b/tests/diff/stats.c index 055019f69..f731997da 100644 --- a/tests/diff/stats.c +++ b/tests/diff/stats.c @@ -54,6 +54,10 @@ void test_diff_stats__stat(void) cl_git_pass(git_diff_stats_to_buf(&buf, _stats, GIT_DIFF_STATS_FULL, 0)); cl_assert(strcmp(git_buf_cstr(&buf), stat) == 0); git_buf_free(&buf); + + cl_git_pass(git_diff_stats_to_buf(&buf, _stats, GIT_DIFF_STATS_FULL, 80)); + cl_assert(strcmp(git_buf_cstr(&buf), stat) == 0); + git_buf_free(&buf); } void test_diff_stats__multiple_hunks(void) |