Fix issue #3681: Add '--drop-all-empty-revs' to 'svndumpfilter include/exclude' to remove all the empty revisions found in the dumpstream. This would allow admins to purge empty revisions from repositories previously populated by 'svndumpfilter' when --drop-empty-revs was not provided, or by partial-repository mirroring via 'svnsync', etc. * subversion/svndumpfilter/svndumpfilter.c (struct parse_baton_t): Add 'drop_all_empty_revs' member. (output_revision): If 'drop_all_empty_revs' is set, remove all the empty revisions (those that make no path modifications) found in the dumpstream. Meanwhile, preserve the meaning of 'drop-empty-revs' which removes only the revisions emptied by filtering process. (svndumpfilter__drop_all_empty_revs): New. (options_table): Add new 'drop-all-empty-revs' option. (cmd_table): Make 'exclude' and 'include' accept the new option. (struct svndumpfilter_opt_state): Add 'drop-all-empty-revs'. (parse_baton_initialize): Add new option value to parse baton. (do_filter): Check if 'drop-all-empty-revs' is set while printing the filtering notification message. (main): Parse the new option. Handle the case of 'drop-empty-revs' and 'drop-all-empty-revs' being used together. * subversion/tests/cmdline/svndumpfilter_tests.py (drop_all_empty_revisions): New test. (test_list): Add reference to the new test. * subversion/tests/cmdline/svndumpfilter_tests_data/empty_revisions.dump: New dump file for the test. Patch by: Vijayaguru G