You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@subversion.apache.org by gs...@apache.org on 2010/05/10 01:10:05 UTC
svn commit: r942628 - in /subversion/trunk/subversion/libsvn_wc: log.c log.h
Author: gstein
Date: Sun May 9 23:10:05 2010
New Revision: 942628
URL: http://svn.apache.org/viewvc?rev=942628&view=rev
Log:
Rename parameters on the svn_wc__loggy_* functions to note they must be
absolute paths. Assert this fact, and simplify loggy_path().
* subversion/libsvn_wc/log.h:
(svn_wc__loggy_delete_entry, svn_wc__loggy_delete_lock,
svn_wc__loggy_entry_modify, svn_wc__loggy_move,
svn_wc__loggy_set_entry_timestamp_from_wc,
svn_wc__loggy_set_entry_working_size_from_wc,
svn_wc__loggy_set_timestamp): rename parameters to *_ABSPATH
* subversion/libsvn_wc/log.c:
(loggy_path): for a NULL return, simply assert the equality of ABSPATH
and ADM_ABSPATH. no need for a special error (we know it won't be
thrown, and all this goes away soon).
(svn_wc__loggy_delete_entry, svn_wc__loggy_delete_lock,
svn_wc__loggy_entry_modify, svn_wc__loggy_move,
svn_wc__loggy_set_entry_timestamp_from_wc,
svn_wc__loggy_set_entry_working_size_from_wc,
svn_wc__loggy_set_timestamp): rename parameters to *_ABSPATH. assert
they are absolute. track rename in calls to loggy_path
Modified:
subversion/trunk/subversion/libsvn_wc/log.c
subversion/trunk/subversion/libsvn_wc/log.h
Modified: subversion/trunk/subversion/libsvn_wc/log.c
URL: http://svn.apache.org/viewvc/subversion/trunk/subversion/libsvn_wc/log.c?rev=942628&r1=942627&r2=942628&view=diff
==============================================================================
--- subversion/trunk/subversion/libsvn_wc/log.c (original)
+++ subversion/trunk/subversion/libsvn_wc/log.c Sun May 9 23:10:05 2010
@@ -643,30 +643,22 @@ svn_wc__run_xml_log(svn_wc__db_t *db,
}
-/* Return the portion of PATH that is relative to the working copy directory
- * ADM_ABSPATH, or SVN_WC_ENTRY_THIS_DIR if PATH is that directory. PATH must
- * not be outside that directory. */
+/* Return (in *RELPATH) the portion of ABSPATH that is relative to the
+ working copy directory ADM_ABSPATH, or SVN_WC_ENTRY_THIS_DIR if ABSPATH
+ is that directory. ABSPATH must within ADM_ABSPATH. */
static svn_error_t *
-loggy_path(const char **logy_path,
- const char *path,
+loggy_path(const char **relpath,
+ const char *abspath,
const char *adm_abspath,
apr_pool_t *scratch_pool)
{
- const char *abspath;
+ *relpath = svn_dirent_is_child(adm_abspath, abspath, NULL);
- SVN_ERR(svn_dirent_get_absolute(&abspath, path, scratch_pool));
- *logy_path = svn_dirent_is_child(adm_abspath, abspath, NULL);
-
- if (! (*logy_path))
+ if (*relpath == NULL)
{
- if (strcmp(abspath, adm_abspath) == 0) /* same path */
- *logy_path = SVN_WC_ENTRY_THIS_DIR;
- else /* not a child path */
- return svn_error_createf(SVN_ERR_BAD_RELATIVE_PATH, NULL,
- _("Path '%s' is not a child of '%s'"),
- svn_dirent_local_style(path, scratch_pool),
- svn_dirent_local_style(adm_abspath,
- scratch_pool));
+ SVN_ERR_ASSERT(strcmp(abspath, adm_abspath) == 0);
+
+ *relpath = "";
}
return SVN_NO_ERROR;
@@ -710,7 +702,7 @@ svn_wc__loggy_translated_file(svn_wc__db
svn_error_t *
svn_wc__loggy_delete_entry(svn_wc__db_t *db,
const char *adm_abspath,
- const char *path,
+ const char *local_abspath,
svn_revnum_t revision,
svn_wc__db_kind_t kind,
apr_pool_t *scratch_pool)
@@ -718,7 +710,9 @@ svn_wc__loggy_delete_entry(svn_wc__db_t
const char *loggy_path1;
svn_stringbuf_t *log_accum = NULL;
- SVN_ERR(loggy_path(&loggy_path1, path, adm_abspath, scratch_pool));
+ SVN_ERR_ASSERT(svn_dirent_is_absolute(local_abspath));
+
+ SVN_ERR(loggy_path(&loggy_path1, local_abspath, adm_abspath, scratch_pool));
svn_xml_make_open_tag(&log_accum, scratch_pool, svn_xml_self_closing,
SVN_WC__LOG_DELETE_ENTRY,
SVN_WC__LOG_ATTR_NAME,
@@ -736,13 +730,15 @@ svn_wc__loggy_delete_entry(svn_wc__db_t
svn_error_t *
svn_wc__loggy_delete_lock(svn_wc__db_t *db,
const char *adm_abspath,
- const char *path,
+ const char *local_abspath,
apr_pool_t *scratch_pool)
{
const char *loggy_path1;
svn_stringbuf_t *log_accum = NULL;
- SVN_ERR(loggy_path(&loggy_path1, path, adm_abspath, scratch_pool));
+ SVN_ERR_ASSERT(svn_dirent_is_absolute(local_abspath));
+
+ SVN_ERR(loggy_path(&loggy_path1, local_abspath, adm_abspath, scratch_pool));
svn_xml_make_open_tag(&log_accum, scratch_pool, svn_xml_self_closing,
SVN_WC__LOG_DELETE_LOCK,
SVN_WC__LOG_ATTR_NAME, loggy_path1,
@@ -756,7 +752,7 @@ svn_wc__loggy_delete_lock(svn_wc__db_t *
svn_error_t *
svn_wc__loggy_entry_modify(svn_wc__db_t *db,
const char *adm_abspath,
- const char *path,
+ const char *local_abspath,
const svn_wc_entry_t *entry,
apr_uint64_t modify_flags,
apr_pool_t *scratch_pool)
@@ -765,6 +761,7 @@ svn_wc__loggy_entry_modify(svn_wc__db_t
const char *loggy_path1;
apr_hash_t *prop_hash = apr_hash_make(scratch_pool);
+ SVN_ERR_ASSERT(svn_dirent_is_absolute(local_abspath));
SVN_ERR_ASSERT(modify_flags != 0);
/* ### this code has a limited set of modifications. enforce it. */
@@ -863,7 +860,7 @@ svn_wc__loggy_entry_modify(svn_wc__db_t
SVN_ERR_ASSERT(apr_hash_count(prop_hash) != 0);
- SVN_ERR(loggy_path(&loggy_path1, path, adm_abspath, scratch_pool));
+ SVN_ERR(loggy_path(&loggy_path1, local_abspath, adm_abspath, scratch_pool));
apr_hash_set(prop_hash, SVN_WC__LOG_ATTR_NAME,
APR_HASH_KEY_STRING, loggy_path1);
@@ -879,19 +876,20 @@ svn_wc__loggy_entry_modify(svn_wc__db_t
svn_error_t *
svn_wc__loggy_move(svn_wc__db_t *db,
const char *adm_abspath,
- const char *src_path,
- const char *dst_path,
+ const char *src_abspath,
+ const char *dst_abspath,
apr_pool_t *scratch_pool)
{
svn_stringbuf_t *log_accum = NULL;
const char *loggy_path1;
const char *loggy_path2;
svn_node_kind_t kind;
- const char *src_abspath = svn_dirent_join(adm_abspath, src_path,
- scratch_pool);
- SVN_ERR(loggy_path(&loggy_path1, src_path, adm_abspath, scratch_pool));
- SVN_ERR(loggy_path(&loggy_path2, dst_path, adm_abspath, scratch_pool));
+ SVN_ERR_ASSERT(svn_dirent_is_absolute(src_abspath));
+ SVN_ERR_ASSERT(svn_dirent_is_absolute(dst_abspath));
+
+ SVN_ERR(loggy_path(&loggy_path1, src_abspath, adm_abspath, scratch_pool));
+ SVN_ERR(loggy_path(&loggy_path2, dst_abspath, adm_abspath, scratch_pool));
SVN_ERR(svn_io_check_path(src_abspath, &kind, scratch_pool));
@@ -916,13 +914,15 @@ svn_wc__loggy_move(svn_wc__db_t *db,
svn_error_t *
svn_wc__loggy_set_entry_timestamp_from_wc(svn_wc__db_t *db,
const char *adm_abspath,
- const char *path,
+ const char *local_abspath,
apr_pool_t *scratch_pool)
{
svn_stringbuf_t *log_accum = NULL;
const char *loggy_path1;
- SVN_ERR(loggy_path(&loggy_path1, path, adm_abspath, scratch_pool));
+ SVN_ERR_ASSERT(svn_dirent_is_absolute(local_abspath));
+
+ SVN_ERR(loggy_path(&loggy_path1, local_abspath, adm_abspath, scratch_pool));
svn_xml_make_open_tag(&log_accum,
scratch_pool,
svn_xml_self_closing,
@@ -940,13 +940,15 @@ svn_wc__loggy_set_entry_timestamp_from_w
svn_error_t *
svn_wc__loggy_set_entry_working_size_from_wc(svn_wc__db_t *db,
const char *adm_abspath,
- const char *path,
+ const char *local_abspath,
apr_pool_t *scratch_pool)
{
svn_stringbuf_t *log_accum = NULL;
const char *loggy_path1;
- SVN_ERR(loggy_path(&loggy_path1, path, adm_abspath, scratch_pool));
+ SVN_ERR_ASSERT(svn_dirent_is_absolute(local_abspath));
+
+ SVN_ERR(loggy_path(&loggy_path1, local_abspath, adm_abspath, scratch_pool));
svn_xml_make_open_tag(&log_accum,
scratch_pool,
svn_xml_self_closing,
@@ -965,14 +967,16 @@ svn_wc__loggy_set_entry_working_size_fro
svn_error_t *
svn_wc__loggy_set_timestamp(svn_wc__db_t *db,
const char *adm_abspath,
- const char *path,
+ const char *local_abspath,
const char *timestr,
apr_pool_t *scratch_pool)
{
svn_stringbuf_t *log_accum = NULL;
const char *loggy_path1;
- SVN_ERR(loggy_path(&loggy_path1, path, adm_abspath, scratch_pool));
+ SVN_ERR_ASSERT(svn_dirent_is_absolute(local_abspath));
+
+ SVN_ERR(loggy_path(&loggy_path1, local_abspath, adm_abspath, scratch_pool));
svn_xml_make_open_tag(&log_accum,
scratch_pool,
svn_xml_self_closing,
Modified: subversion/trunk/subversion/libsvn_wc/log.h
URL: http://svn.apache.org/viewvc/subversion/trunk/subversion/libsvn_wc/log.h?rev=942628&r1=942627&r2=942628&view=diff
==============================================================================
--- subversion/trunk/subversion/libsvn_wc/log.h (original)
+++ subversion/trunk/subversion/libsvn_wc/log.h Sun May 9 23:10:05 2010
@@ -66,7 +66,7 @@ svn_wc__loggy_translated_file(svn_wc__db
svn_error_t *
svn_wc__loggy_delete_entry(svn_wc__db_t *db,
const char *adm_abspath,
- const char *path,
+ const char *local_abspath,
svn_revnum_t revision,
svn_wc__db_kind_t kind,
apr_pool_t *scratch_pool);
@@ -81,7 +81,7 @@ svn_wc__loggy_delete_entry(svn_wc__db_t
svn_error_t *
svn_wc__loggy_delete_lock(svn_wc__db_t *db,
const char *adm_abspath,
- const char *path,
+ const char *local_abspath,
apr_pool_t *scratch_pool);
@@ -99,7 +99,7 @@ svn_wc__loggy_delete_lock(svn_wc__db_t *
svn_error_t *
svn_wc__loggy_entry_modify(svn_wc__db_t *db,
const char *adm_abspath,
- const char *path,
+ const char *local_abspath,
const svn_wc_entry_t *entry,
apr_uint64_t modify_flags,
apr_pool_t *scratch_pool);
@@ -119,15 +119,15 @@ svn_wc__loggy_entry_modify(svn_wc__db_t
svn_error_t *
svn_wc__loggy_move(svn_wc__db_t *db,
const char *adm_abspath,
- const char *src_path,
- const char *dst_path,
+ const char *src_abspath,
+ const char *dst_abspath,
apr_pool_t *scratch_pool);
svn_error_t *
svn_wc__loggy_set_entry_timestamp_from_wc(svn_wc__db_t *db,
const char *adm_abspath,
- const char *path,
+ const char *local_abspath,
apr_pool_t *scratch_pool);
@@ -139,7 +139,7 @@ svn_wc__loggy_set_entry_timestamp_from_w
svn_error_t *
svn_wc__loggy_set_entry_working_size_from_wc(svn_wc__db_t *db,
const char *adm_abspath,
- const char *path,
+ const char *local_abspath,
apr_pool_t *scratch_pool);
@@ -151,7 +151,7 @@ svn_wc__loggy_set_entry_working_size_fro
svn_error_t *
svn_wc__loggy_set_timestamp(svn_wc__db_t *db,
const char *adm_abspath,
- const char *path,
+ const char *local_abspath,
const char *timestr,
apr_pool_t *scratch_pool);