[svn.haxx.se] · SVN Dev · SVN Users · SVN Org · TSVN Dev · TSVN Users · Subclipse Dev · Subclipse Users · this month's index

[PATCH] Revv svn_client_commit_item_t structure V2

From: Ivan Zhakov <chemodax_at_gmail.com>
Date: 2005-08-24 14:00:18 CEST

Hi,
There is revised version of patch which I recently posted. I have
fixed log message and long lines. Switched to use
APR_ARRAY_PUSH/APR_ARRAY_IDX macro. And now compatible structure in
function svn_client__get_log_msg allocated in subpool.

[[
Isolate svn_client_commit_item_t.revision and add
svn_client_commit_item_t.copyfrom_rev. It's required for "replace from
copy operations".

* subversion/clients/cmdline/cl.h
  (svn_cl__get_log_message): Fix documentation.

* subversion/clients/cmdline/commit-cmd.c
* subversion/clients/cmdline/copy-cmd.c
* subversion/clients/cmdline/delete-cmd.c
* subversion/clients/cmdline/import-cmd.c
* subversion/clients/cmdline/main.c
* subversion/clients/cmdline/mkdir-cmd.c
* subversion/clients/cmdline/move-cmd.c
  (svn_cl__commit,svn_cl__copy, svn_cl__delete,
  svn_cl__import, main, svn_cl__mkdir, svn_cl_move): Use
  ctx->log_msg_func2/ctx->log_msg_baton2 instead of
  ctx->log_msg_func/ctx->log_msg_baton.

* subversion/clients/cmdline/util.c
  (svn_cl__get_log_message): Turn function into svn_client_get_commit_log2_t
  type. Use APR_ARRAY_IDX macro.

* subversion/include/svn_client.h:
  (svn_client_commit_item2_t): New structure, copied from
  svn_client_commit_item2_t with addition field copyfrom_rev.
  (svn_client_commit_item_t): Deprecate.
  (svn_client_get_commit_log2_t): Revv API, new callback accepts array of
  svn_client_get_commit_log2_t.
  (svn_client_get_commit_log_t): Deprecate.
  (svn_client_ctx_t): Add new log_msg_func2/log_msg_batton2 members for new
  API. Deprecate log_msg_func/log_msg_batton.

* subversion/libsvn_client/add.c
  (mkdir_urls): Use function svn_client__get_log_msg() instead of direct call
  to ctx->log_msg_func.

* subversion/libsvn_client/client.h
  (svn_client__callback_baton_t): Fix documentation.
  (svn_client__get_log_msg): New function declaration.

* subversion/libsvn_client/commit.c
  (svn_client_import2, svn_client_commit_3): Use function
  svn_client__get_log_msg instead of direct call to ctx->log_msg_func. Use
  svn_client_commit_item2_t in place of svn_client_commit_item2_t. Use
  APR_ARRAY_PUSH/APR_ARRAY_IDX macros.
  (have_processed_parent, adjust_rel_targets): Use svn_client_commit_item2_t
  in place of svn_client_commit_item2_t. Use
  APR_ARRAY_PUSH/APR_ARRAY_IDX macros.
  
* subversion/libsvn_client/commit_util.c
  (svn_client__get_log_msg): Utility function for backward compability
  with 1.2 API.
  (add_committable): Add new parameter copyfrom_rev. Use APR_ARRAY_PUSH macro.
  (look_up_committable,
  svn_client__sort_commit_item_urls,
  svn_client__condense_commit_items,
  file_mod_t, svn_client__do_commit): Use svn_client_commit_item2_t in place
  of svn_client_commit_item_t. Use APR_ARRAY_PUSH/APR_ARRAY_IDX macros.
  (harvest_committables): Pass copyfrom_rev parameter to add_committable
  function.
  (do_item_commit): Validate item->copyfrom_rev instead of item->revision.
  Pass item->copyfrom_rev to editor->add_file and editor->add_directory when
  copyfrom_url != NULL.
  
* subversion/libsvn_client/copy.c
  (wc_to_repos_copy, repos_to_repos_copy): Use svn_client_commit_item2_t in
  place of svn_client_commit_item_t. Use function svn_client__get_log_msg
  instead of direct call to ctx->log_msg_func. Use APR_ARRAY_PUSH macro.

* subversion/libsvn_client/delete.c
  (delete_urls): Use svn_client_commit_item2_t in place of
  svn_client_commit_item_t. Use function
  svn_client__get_log_msg instead of direct call to ctx->log_msg_func.

* subversion/libsvn_client/ra.c
  (get_wc_prop, push_wc_prop): Use svn_client_commit_item2_t in place of
  svn_client_commit_item_t. Use APR_ARRAY_IDX macro
]]

-- 
Ivan Zhakov


---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org

Received on Wed Aug 24 14:01:52 2005

This is an archived mail posted to the Subversion Dev mailing list.

This site is subject to the Apache Privacy Policy and the Apache Public Forum Archive Policy.