Patrick Steinhardt (patrick.steinhardt at


r1769485 | stefan2 | 2016-11-13 10:42:24 +0000 (Sun, 13 Nov 2016)

Change the svn_*_list APIs to use NULL as the "don't filter by pattern"
parameter instead of an empty pattern list.

Suggested by: Patrick Steinhardt (patrick.steinhardt at

* subversion/include/svn_repos.h
  (svn_repos_list):  Document the new PATTERN options behavior.

* subversion/libsvn_repos/list.c
  (matches_any):  Implement the new behavior.
  (svn_repos_list):  Empty lists will almost always be created by dumb
                     scripts.  It's probably a good idea to explicitly
                     not waste any resources in the degenerate case.

* subversion/include/svn_ra.h
  (svn_ra_list):  Document the new PATTERN options behavior.

* subversion/libsvn_ra_svn/protocol
  (3.1.1. Main Command Set):  The patterns list in the list command is
                              now optional.

* subversion/libsvn_subr/log.c
  (svn_log__list):  Make the logging cope with NULL pattern lists.

* subversion/svnserve/serve.c
  (list): Receive NULL for PATTERNS, if no list was received.

* subversion/libsvn_ra_svn/client.c
  (ra_svn_list):  Omit the pattern list entirely, if patterns is NULL. 

* subversion/include/svn_client.h
  (svn_client_list4):  Document the new PATTERN options behavior.
  (svn_client_list3):  Update docstring.

* subversion/libsvn_client/deprecated.c
  (svn_client_list3):  Update implementation.

* subversion/libsvn_client/list.c
  (match_patterns):  Implement the new behavior.
  (list_internal):  Update docstring.

* subversion/svn/list-cmd.c
  (svn_cl__list):  If no patterns were specified, pass NULL to the API.

* subversion/svnbench/null-list-cmd.c
  (svn_cl__null_list):  Same.