Sergey Raevskiy <sergey.raevskiy@visualsvn.com>
Found |
Patch |
r1579588 |
r1872381,
r1865266,
r1853483,
r1811992,
r1659314,
r1659217,
r1659212,
r1658482,
r1657893,
r1657525,
r1584576 |
r1579588 | rhuijben | 2014-03-20 10:59:21 +0000 (Thu, 20 Mar 2014)
Make ra serf properly parse lock timeouts installed by generic dav clients.
* subversion/libsvn_ra_serf/get_lock.c
(locks_closed): Properly parse timout format. This is the actual fix.
* subversion/libsvn_ra_serf/lock.c
(locks_closed): Properly parse timeout format from the server response of
the LOCK requests.
* subversion/tests/cmdline/lock_tests.py
(dav_lock_timeout): New test, creating timeout lock via http request.
(test_list): Add test.
This issue was
Found by: Sergey Raevskiy <sergey.raevskiy{_AT_}visualsvn.com>
(but the patch from his mail doesn't fix the issue on trunk.
It might have worked around the problem on 1.7.x and 1.8.x)
r1584576 | philip | 2014-04-04 09:25:03 +0000 (Fri, 04 Apr 2014)
Add an XFAIL regression test for issue 3515, a DAV client cannot
refresh a lock using a LOCK request with an If: header.
Patch by: Sergey Raevskiy <sergey.raevskiy{_AT_}visualsvn.com>
r1657525 | philip | 2015-02-05 10:41:26 +0000 (Thu, 05 Feb 2015)
Fix unitialized memory use in svn_fs_fs__lock() / svn_fs_fs__unlock().
Patch by: sergey.raevskiy{_AT_}visualsvn.com
me
* subversion/subversion/libsvn_fs_fs/lock.c
(lock_body): Move allocation from here ...
(svn_fs_fs__lock): ... to here.
(unlock_body): Move allocation from here ...
(unlock_single, svn_fs_fs__unlock): ... to here.
* subversion/subversion/tests/libsvn_fs/locks-test.c
(obtain_write_lock_failure_test): New.
(test_funcs): Add new test.
r1657893 | philip | 2015-02-06 16:43:12 +0000 (Fri, 06 Feb 2015)
Fix SEGV in libsvn_repos due to legacy lock API when executing
pre-commit hook.
* subversion/subversion/libsvn_repos/hooks.c
(lock_token_content): Add special handling for 'magic' value
((const char *) 1).
* subversion/subversion/tests/libsvn_repos/repos-test.c
(deprecated_access_context_api): New.
(test_funcs): Add new test.
Patch by: sergey.raevskiy{_AT_}visualsvn.com
me
r1658482 | philip | 2015-02-09 17:44:43 +0000 (Mon, 09 Feb 2015)
Fix multiple reporting of the same lock in FSFS.
In some unusual (but not impossible) scenarios this function could report the
same lock multiple times: there should be the path with lock, and one of its
children should be locked as well.
* subversion/libsvn_fs_fs/lock.c
(walk_digests_callback_t): Remove unused argument and update comment.
(locks_walker): Update callback.
(walk_digest_files): Don't walk digest files recursively.
* subversion/tests/libsvn_fs/locks-test.c
(get_locks_callback): Check if a lock was already reported.
(parent_and_child_lock): New.
(test_funcs): Add new test.
Patch by: sergey.raevskiy{_AT_}visualsvn.com
r1659212 | philip | 2015-02-12 10:38:48 +0000 (Thu, 12 Feb 2015)
Simplify implementation of svn_fs_fs__lock() / svn_fs_fs__unlock().
* subversion/libsvn_fs_fs/lock.c
(schedule_index_update): New helper function.
(struct lock_info_t,
struct unlock_info_t): Drop the unused fields.
(lock_body,
unlock_body): Rework the algorithm.
Patch by: sergey.raevskiy{_AT_}visualsvn.com
r1659217 | philip | 2015-02-12 10:42:45 +0000 (Thu, 12 Feb 2015)
Follow-up to r1658482: Refactor walk_locks() function: remove the redundant
complexity of walk_digest_files() / walk_digests_callback_t.
* subversion/libsvn_fs_fs/lock.c
(lock_expired): New helper function.
(get_lock): Use the new function.
(struct walk_locks_baton,
walk_digests_callback_t,
locks_walker,
walk_digest_files): Remove.
(walk_locks): Inline code from locks_walker() and walk_digest_files() with
use of new helper function.
Patch by: sergey.raevskiy{_AT_}visualsvn.com
r1659314 | philip | 2015-02-12 16:48:46 +0000 (Thu, 12 Feb 2015)
* subversion/libsvn_fs_fs/lock.c
(lock_body): Call apr_pstrdup() when initializing svn_lock_t fields.
Patch by: sergey.raevskiy{_AT_}visualsvn.com
r1811992 | julianfoad | 2017-10-12 16:14:05 +0000 (Thu, 12 Oct 2017)
Issue SVN-4729: Add '--include' and '--exclude' options to 'svnadmin dump'.
* include/svn_repos.h
(svn_repos_dump_filter_func_t): New.
(svn_repos_dump_fs4): Update function signature and comment.
(svn_repos_dump_fs3): Update comment.
* libsvn_repos/deprecated.c
(svn_repos_dump_fs3): Update caller.
* libsvn_repos/dump.c
(write_revision_record): Call to svn_repos_fs_revision_proplist() (with
AUTHZ_FUNC) instead of svn_fs_revision_proplist2() to filter revision
properties as well as revisions. Update comment.
(dump_filter_baton_t,
dump_filter_authz_func): New.
(svn_repos_dump_fs4): Initialize and pass AUTHZ_FUNC and AUTHZ_BATON to
the repos layer API if FILTER_FUNC is specified by caller.
* subversion/svnadmin/svnadmin.c
(svnadmin__cmdline_options_t): Add enum values for new options.
(options_table): Add new options.
(cmd_table): Add new options to 'dump' subcommand.
(svnadmin_opt_state): Add new fields to represent new options.
(ary_prefix_match): New. Copied from svndumpfilter.
(dump_filter_baton_t,
dump_filter_func): New.
(subcommand_dump): Initialize FILTER_BATON. Pass DUMP_FILTER_FUNC and a
pointer to FILTER_BATON to svn_repos_dump_fs() if any filtering prefixes
specified.
(sub_main): Handle new options.
* subversion/tests/cmdline/svnadmin_tests.py
(dump_exclude,
dump_exclude_copysource,
dump_include,
dump_not_include_copysource,
dump_exclude_by_pattern,
dump_include_by_pattern,
dump_exclude_all_rev_changes,
dump_invalid_filtering_option): New.
(test_list): Add new tests to table.
* subversion/tests/libsvn_repos/dump-load-test.c
(test_dump_bad_props): Update caller.
Patch by: sergey.raevskiy{_AT_}visualsvn.com
r1853483 | julianfoad | 2019-02-13 10:37:50 +0000 (Wed, 13 Feb 2019)
Fix #4760 "Missing children when svnadmin dump --include/exclude converts
copy-dir to add-dir".
Follow-up to r1811992: Canonicalize PATH before passing it to the FILTER_FUNC.
In some cases (e.g. for nodes under copied directories) PATH passed by
repos layer to AUTHZ_FUNC may be non-canonical (missing leading '/'). This
causes FILTER_FUNC implemented in svnadmin to wrongly report PATH as "not
included".
* subversion/libsvn_repos/dump.c
(dump_filter_authz_func): Canonicalize PATH before passing it
to the FILTER_FUNC. Add comment.
* subversion/tests/cmdline/svnadmin_tests.py
(dump_include_copied_directory): New.
(test_list): Add new test to table.
Patch by: sergey.raevskiy{_AT_}visualsvn.com
r1865266 | stsp | 2019-08-16 06:02:53 +0000 (Fri, 16 Aug 2019)
* subversion/mod_dav_svn/repos.c
(get_resource): Following up on r1850651: Set cleanup handler for
FS warning logging regardless of presence of R->USER.
Patch by: sergey.raevskiy{_AT_}visualsvn.com
r1872381 | hartmannathan | 2020-01-06 14:08:39 +0000 (Mon, 06 Jan 2020)
Rework r1866425 ('Last-Modified' header). Do not use pointer comparison
and 'special value' for APR_TIME_T.
* subversion/mod_dav_svn/dav_svn.h
(dav_resource_private): Add new member IS_PUBLIC_URI.
* subversion/mod_dav_svn/repos.c
(parse_uri,
get_parentpath_resource): Set IS_PUBLIC_URI to TRUE for 'public' URIs (not
under '/!svn/')
(get_last_modified): Delete.
(set_headers): Rework of 'Last-Modified' related code.
See dev@ email thread "[Patch] Rework of r1866425 ('Last-Modified' header)"
started 2019/12/10, archived at several places, including:
https://lists.apache.org/thread.html/aff4ab41e87c997fbc90fc79e3240ffcda10fe7f09a1e31bec4af797%40%3Cdev.subversion.apache.org%3E
Patch by: sergey.raevskiy{_AT_}visualsvn.com