summaryrefslogtreecommitdiff
path: root/subversion/libsvn_subr/deprecated.c
diff options
context:
space:
mode:
Diffstat (limited to 'subversion/libsvn_subr/deprecated.c')
-rw-r--r--subversion/libsvn_subr/deprecated.c259
1 files changed, 221 insertions, 38 deletions
diff --git a/subversion/libsvn_subr/deprecated.c b/subversion/libsvn_subr/deprecated.c
index ec51333..93bd89d 100644
--- a/subversion/libsvn_subr/deprecated.c
+++ b/subversion/libsvn_subr/deprecated.c
@@ -32,17 +32,22 @@
deprecated functions in this file. */
#define SVN_DEPRECATED
+#include "svn_hash.h"
#include "svn_subst.h"
#include "svn_path.h"
#include "svn_opt.h"
#include "svn_cmdline.h"
+#include "svn_version.h"
#include "svn_pools.h"
#include "svn_dso.h"
#include "svn_mergeinfo.h"
+#include "svn_utf.h"
#include "svn_xml.h"
#include "opt.h"
#include "private/svn_opt_private.h"
+#include "private/svn_mergeinfo_private.h"
+#include "private/svn_subr_private.h"
#include "svn_private_config.h"
@@ -69,38 +74,28 @@ kwstruct_to_kwhash(const svn_subst_keywords_t *kwstruct,
if (kwstruct->revision)
{
- apr_hash_set(kwhash, SVN_KEYWORD_REVISION_LONG,
- APR_HASH_KEY_STRING, kwstruct->revision);
- apr_hash_set(kwhash, SVN_KEYWORD_REVISION_MEDIUM,
- APR_HASH_KEY_STRING, kwstruct->revision);
- apr_hash_set(kwhash, SVN_KEYWORD_REVISION_SHORT,
- APR_HASH_KEY_STRING, kwstruct->revision);
+ svn_hash_sets(kwhash, SVN_KEYWORD_REVISION_LONG, kwstruct->revision);
+ svn_hash_sets(kwhash, SVN_KEYWORD_REVISION_MEDIUM, kwstruct->revision);
+ svn_hash_sets(kwhash, SVN_KEYWORD_REVISION_SHORT, kwstruct->revision);
}
if (kwstruct->date)
{
- apr_hash_set(kwhash, SVN_KEYWORD_DATE_LONG,
- APR_HASH_KEY_STRING, kwstruct->date);
- apr_hash_set(kwhash, SVN_KEYWORD_DATE_SHORT,
- APR_HASH_KEY_STRING, kwstruct->date);
+ svn_hash_sets(kwhash, SVN_KEYWORD_DATE_LONG, kwstruct->date);
+ svn_hash_sets(kwhash, SVN_KEYWORD_DATE_SHORT, kwstruct->date);
}
if (kwstruct->author)
{
- apr_hash_set(kwhash, SVN_KEYWORD_AUTHOR_LONG,
- APR_HASH_KEY_STRING, kwstruct->author);
- apr_hash_set(kwhash, SVN_KEYWORD_AUTHOR_SHORT,
- APR_HASH_KEY_STRING, kwstruct->author);
+ svn_hash_sets(kwhash, SVN_KEYWORD_AUTHOR_LONG, kwstruct->author);
+ svn_hash_sets(kwhash, SVN_KEYWORD_AUTHOR_SHORT, kwstruct->author);
}
if (kwstruct->url)
{
- apr_hash_set(kwhash, SVN_KEYWORD_URL_LONG,
- APR_HASH_KEY_STRING, kwstruct->url);
- apr_hash_set(kwhash, SVN_KEYWORD_URL_SHORT,
- APR_HASH_KEY_STRING, kwstruct->url);
+ svn_hash_sets(kwhash, SVN_KEYWORD_URL_LONG, kwstruct->url);
+ svn_hash_sets(kwhash, SVN_KEYWORD_URL_SHORT, kwstruct->url);
}
if (kwstruct->id)
{
- apr_hash_set(kwhash, SVN_KEYWORD_ID,
- APR_HASH_KEY_STRING, kwstruct->id);
+ svn_hash_sets(kwhash, SVN_KEYWORD_ID, kwstruct->id);
}
return kwhash;
@@ -361,7 +356,7 @@ print_command_info(const svn_opt_subcommand_desc_t *cmd,
{
if (cmd->valid_options[i])
{
- if (have_options == FALSE)
+ if (!have_options)
{
SVN_ERR(svn_cmdline_fputs(_("\nValid options:\n"),
stream, pool));
@@ -523,6 +518,33 @@ svn_opt_args_to_target_array(apr_array_header_t **targets_p,
}
svn_error_t *
+svn_opt_print_help3(apr_getopt_t *os,
+ const char *pgm_name,
+ svn_boolean_t print_version,
+ svn_boolean_t quiet,
+ const char *version_footer,
+ const char *header,
+ const svn_opt_subcommand_desc2_t *cmd_table,
+ const apr_getopt_option_t *option_table,
+ const int *global_options,
+ const char *footer,
+ apr_pool_t *pool)
+{
+ return svn_error_trace(svn_opt_print_help4(os,
+ pgm_name,
+ print_version,
+ quiet,
+ FALSE,
+ version_footer,
+ header,
+ cmd_table,
+ option_table,
+ global_options,
+ footer,
+ pool));
+}
+
+svn_error_t *
svn_opt_print_help2(apr_getopt_t *os,
const char *pgm_name,
svn_boolean_t print_version,
@@ -534,10 +556,11 @@ svn_opt_print_help2(apr_getopt_t *os,
const char *footer,
apr_pool_t *pool)
{
- return svn_error_trace(svn_opt_print_help3(os,
+ return svn_error_trace(svn_opt_print_help4(os,
pgm_name,
print_version,
quiet,
+ FALSE,
version_footer,
header,
cmd_table,
@@ -575,8 +598,11 @@ svn_opt_print_help(apr_getopt_t *os,
}
}
else if (print_version) /* just --version */
- SVN_ERR(svn_opt__print_version_info(pgm_name, version_footer, quiet,
- pool));
+ {
+ SVN_ERR(svn_opt__print_version_info(pgm_name, version_footer,
+ svn_version_extended(FALSE, pool),
+ quiet, FALSE, pool));
+ }
else if (os && !targets->nelts) /* `-h', `--help', or `help' */
svn_opt_print_generic_help(header,
cmd_table,
@@ -766,6 +792,25 @@ svn_io_get_dirents(apr_hash_t **dirents,
}
svn_error_t *
+svn_io_start_cmd2(apr_proc_t *cmd_proc,
+ const char *path,
+ const char *cmd,
+ const char *const *args,
+ svn_boolean_t inherit,
+ svn_boolean_t infile_pipe,
+ apr_file_t *infile,
+ svn_boolean_t outfile_pipe,
+ apr_file_t *outfile,
+ svn_boolean_t errfile_pipe,
+ apr_file_t *errfile,
+ apr_pool_t *pool)
+{
+ return svn_io_start_cmd3(cmd_proc, path, cmd, args, NULL, inherit,
+ infile_pipe, infile, outfile_pipe, outfile,
+ errfile_pipe, errfile, pool);
+}
+
+svn_error_t *
svn_io_start_cmd(apr_proc_t *cmd_proc,
const char *path,
const char *cmd,
@@ -825,6 +870,22 @@ svn_io_dir_walk(const char *dirname,
&baton, pool));
}
+svn_error_t *
+svn_io_stat_dirent(const svn_io_dirent2_t **dirent_p,
+ const char *path,
+ svn_boolean_t ignore_enoent,
+ apr_pool_t *result_pool,
+ apr_pool_t *scratch_pool)
+{
+ return svn_error_trace(
+ svn_io_stat_dirent2(dirent_p,
+ path,
+ FALSE,
+ ignore_enoent,
+ result_pool,
+ scratch_pool));
+}
+
/*** From constructors.c ***/
svn_log_changed_path_t *
svn_log_changed_path_dup(const svn_log_changed_path_t *changed_path,
@@ -1036,14 +1097,6 @@ svn_path_canonicalize(const char *path, apr_pool_t *pool)
return svn_dirent_canonicalize(path, pool);
}
-svn_boolean_t
-svn_path_is_canonical(const char *path, apr_pool_t *pool)
-{
- return svn_uri_is_canonical(path, pool) ||
- svn_dirent_is_canonical(path, pool) ||
- svn_relpath_is_canonical(path);
-}
-
/*** From mergeinfo.c ***/
@@ -1061,8 +1114,8 @@ svn_mergeinfo_inheritable(svn_mergeinfo_t *output,
}
svn_error_t *
-svn_rangelist_inheritable(apr_array_header_t **inheritable_rangelist,
- const apr_array_header_t *rangelist,
+svn_rangelist_inheritable(svn_rangelist_t **inheritable_rangelist,
+ const svn_rangelist_t *rangelist,
svn_revnum_t start,
svn_revnum_t end,
apr_pool_t *pool)
@@ -1073,17 +1126,90 @@ svn_rangelist_inheritable(apr_array_header_t **inheritable_rangelist,
pool, pool));
}
+svn_error_t *
+svn_rangelist_merge(svn_rangelist_t **rangelist,
+ const svn_rangelist_t *changes,
+ apr_pool_t *pool)
+{
+ SVN_ERR(svn_rangelist_merge2(*rangelist, changes,
+ pool, pool));
+
+ return svn_error_trace(
+ svn_rangelist__combine_adjacent_ranges(*rangelist, pool));
+}
+
+svn_error_t *
+svn_mergeinfo_diff(svn_mergeinfo_t *deleted, svn_mergeinfo_t *added,
+ svn_mergeinfo_t from, svn_mergeinfo_t to,
+ svn_boolean_t consider_inheritance,
+ apr_pool_t *pool)
+{
+ return svn_error_trace(svn_mergeinfo_diff2(deleted, added, from, to,
+ consider_inheritance, pool,
+ pool));
+}
+
+svn_error_t *
+svn_mergeinfo_merge(svn_mergeinfo_t mergeinfo,
+ svn_mergeinfo_t changes,
+ apr_pool_t *pool)
+{
+ return svn_error_trace(svn_mergeinfo_merge2(mergeinfo, changes, pool,
+ pool));
+}
+
+svn_error_t *
+svn_mergeinfo_remove(svn_mergeinfo_t *mergeinfo, svn_mergeinfo_t eraser,
+ svn_mergeinfo_t whiteboard, apr_pool_t *pool)
+{
+ return svn_mergeinfo_remove2(mergeinfo, eraser, whiteboard, TRUE, pool,
+ pool);
+}
+
+svn_error_t *
+svn_mergeinfo_intersect(svn_mergeinfo_t *mergeinfo,
+ svn_mergeinfo_t mergeinfo1,
+ svn_mergeinfo_t mergeinfo2,
+ apr_pool_t *pool)
+{
+ return svn_mergeinfo_intersect2(mergeinfo, mergeinfo1, mergeinfo2,
+ TRUE, pool, pool);
+}
+
/*** From config.c ***/
+svn_error_t *
+svn_config_create(svn_config_t **cfgp,
+ svn_boolean_t section_names_case_sensitive,
+ apr_pool_t *result_pool)
+{
+ return svn_error_trace(svn_config_create2(cfgp,
+ section_names_case_sensitive,
+ FALSE,
+ result_pool));
+}
+
+svn_error_t *
+svn_config_read2(svn_config_t **cfgp, const char *file,
+ svn_boolean_t must_exist,
+ svn_boolean_t section_names_case_sensitive,
+ apr_pool_t *result_pool)
+{
+ return svn_error_trace(svn_config_read3(cfgp, file,
+ must_exist,
+ section_names_case_sensitive,
+ FALSE,
+ result_pool));
+}
svn_error_t *
svn_config_read(svn_config_t **cfgp, const char *file,
svn_boolean_t must_exist,
- apr_pool_t *pool)
+ apr_pool_t *result_pool)
{
- return svn_error_trace(svn_config_read2(cfgp, file,
+ return svn_error_trace(svn_config_read3(cfgp, file,
must_exist,
- FALSE,
- pool));
+ FALSE, FALSE,
+ result_pool));
}
#ifdef SVN_DISABLE_FULL_VERSION_MATCH
@@ -1126,3 +1252,60 @@ svn_xml_make_header(svn_stringbuf_t **str, apr_pool_t *pool)
{
svn_xml_make_header2(str, NULL, pool);
}
+
+void
+svn_utf_initialize(apr_pool_t *pool)
+{
+ svn_utf_initialize2(FALSE, pool);
+}
+
+svn_error_t *
+svn_subst_build_keywords(svn_subst_keywords_t *kw,
+ const char *keywords_val,
+ const char *rev,
+ const char *url,
+ apr_time_t date,
+ const char *author,
+ apr_pool_t *pool)
+{
+ apr_hash_t *kwhash;
+ const svn_string_t *val;
+
+ SVN_ERR(svn_subst_build_keywords2(&kwhash, keywords_val, rev,
+ url, date, author, pool));
+
+ /* The behaviour of pre-1.3 svn_subst_build_keywords, which we are
+ * replicating here, is to write to a slot in the svn_subst_keywords_t
+ * only if the relevant keyword was present in keywords_val, otherwise
+ * leaving that slot untouched. */
+
+ val = svn_hash_gets(kwhash, SVN_KEYWORD_REVISION_LONG);
+ if (val)
+ kw->revision = val;
+
+ val = svn_hash_gets(kwhash, SVN_KEYWORD_DATE_LONG);
+ if (val)
+ kw->date = val;
+
+ val = svn_hash_gets(kwhash, SVN_KEYWORD_AUTHOR_LONG);
+ if (val)
+ kw->author = val;
+
+ val = svn_hash_gets(kwhash, SVN_KEYWORD_URL_LONG);
+ if (val)
+ kw->url = val;
+
+ val = svn_hash_gets(kwhash, SVN_KEYWORD_ID);
+ if (val)
+ kw->id = val;
+
+ return SVN_NO_ERROR;
+}
+
+/*** From version.c ***/
+svn_error_t *
+svn_ver_check_list(const svn_version_t *my_version,
+ const svn_version_checklist_t *checklist)
+{
+ return svn_ver_check_list2(my_version, checklist, svn_ver_compatible);
+}