12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849 |
- #!/usr/bin/perl -w
- use strict;
- my ($lhs, $rev, $tmp, $rhs, $s);
- my @cset_text = ();
- my @pipe_text = ();
- my $have_cset = 0;
- while (<>) {
- next if /^---/;
- if (($lhs, $tmp, $rhs) = (/^(ChangeSet\@)([^,]+)(, .*)$/)) {
- &cset_rev if ($have_cset);
- $rev = $tmp;
- $have_cset = 1;
- push(@cset_text, $_);
- }
- elsif ($have_cset) {
- push(@cset_text, $_);
- }
- }
- &cset_rev if ($have_cset);
- exit(0);
- sub cset_rev {
- my $empty_cset = 0;
- open PIPE, "bk export -tpatch -hdu -r $rev | diffstat -p1 2>/dev/null |" or die;
- while ($s = <PIPE>) {
- $empty_cset = 1 if ($s =~ /0 files changed/);
- push(@pipe_text, $s);
- }
- close(PIPE);
- if (! $empty_cset) {
- print @cset_text;
- print @pipe_text;
- print "\n\n";
- }
- @pipe_text = ();
- @cset_text = ();
- }
|