If we have no files selected for processing yet but we try to
produce a status output this would cause a division by zero error
when computing the percent done. Last time I talked to a user,
crashing a program over performing an undefined operation isn't
very nice. So instead lets set the percentage done to 0.
Signed-off-by: Shawn O. Pearce <redacted>
---
This is on top of the merge-recursive series I just sent.
You may already have it fixed in your tree, or maybe not.
merge-recursive.c | 2 +-
1 files changed, 1 insertions(+), 1 deletions(-)
diff --git a/merge-recursive.c b/merge-recursive.c
index c4e21bc..2a89461 100644
--- a/merge-recursive.c
+++ b/merge-recursive.c
@@ -182,7 +182,7 @@ static void setup_progress_signal(void)
static void display_progress()
{
- unsigned percent = merged_cnt * 100 / total_cnt;
+ unsigned percent = total_cnt ? merged_cnt * 100 / total_cnt : 0;
if (progress_update || percent != last_percent) {
fprintf(stderr, "%4u%% (%u/%u) done\r",
percent, merged_cnt, total_cnt);--
1.5.0.rc1.g4494