Log Message: |
Avoid parsing the hooks-env file multiple times for closely-knit hook
invocations, specifically the pre-/post- pairs for commit, revprop
change, lock, and unlock operations.
* subversion/libsvn_repos/repos.h,
* subversion/libsvn_repos/hooks.c
(svn_repos__parse_hooks_env): Was parse_hooks_env().
(svn_repos__hooks_start_commit,
svn_repos__hooks_pre_commit,
svn_repos__hooks_post_commit,
svn_repos__hooks_pre_revprop_change,
svn_repos__hooks_post_revprop_change,
svn_repos__hooks_pre_lock,
svn_repos__hooks_post_lock,
svn_repos__hooks_pre_unlock,
svn_repos__hooks_post_unlock): Add 'hooks_env' parameter, used now
instead of calling parse_hooks_env() from within.
* subversion/libsvn_repos/commit.c
(complete_cb, svn_repos__get_commit_ev2): Call
svn_repos__parse_hooks_env(), and update calls to hook wrapper
functions.
* subversion/libsvn_repos/fs-wrap.c
(svn_repos_fs_commit_txn, svn_repos_fs_begin_txn_for_commit2,
svn_repos_fs_change_rev_prop4, svn_repos_fs_lock, svn_repos_fs_unlock):
Call svn_repos__parse_hooks_env(), and update calls to hook wrapper
functions.
* subversion/libsvn_repos/load-fs-vtable.c
(close_revision): Call svn_repos__parse_hooks_env(), and update
calls to hook wrapper functions.
|