Ramkumar Ramachandra wrote:
> +++ b/dump_editor.c
> @@ -128,7 +128,7 @@ svn_error_t *get_dump_editor(const svn_delta_editor_t **editor,
> de->close_directory = close_directory;
> de->change_dir_prop = change_dir_prop;
> de->change_file_prop = change_file_prop;
> - de->apply_textdelta = apply_textdelta;
> + /* de->apply_textdelta = apply_textdelta; */
Hmm...
[...]
> +++ b/dumpr_util.h
> @@ -1,6 +1,11 @@
> #ifndef DUMPR_UTIL_H_
> #define DUMPR_UTIL_H_
>
> +struct replay_baton {
> + const svn_delta_editor_t *editor;
> + void *baton;
> +};
> +
Context during svnsync-like replay ops:
- a diff replayer
- its context object
Maybe "void *edit_baton" would be clearer.
> struct edit_baton {
Which might involve renaming this to dump_edit_baton to avoid
confusion.
> +++ b/svndumpr.c
> @@ -8,10 +8,40 @@
[...]
> +static svn_error_t *replay_revstart(svn_revnum_t revision,
> + void *replay_baton,
> + const svn_delta_editor_t **editor,
> + void **edit_baton,
> + apr_hash_t *rev_props,
> + apr_pool_t *pool)
This function is called to acquire an editor to replay one revision.
> +{
> + /* Extract editor and editor_baton from the replay_baton and
> + set them so that the editor callbacks can use them */
This comment just paraphrases the code. What in particular requires
explanation here?
> + struct replay_baton *rb = replay_baton;
> + *editor = rb->editor;
> + *edit_baton = rb->baton;
> +
> + return SVN_NO_ERROR;
> +}
[...]
> @@ -47,6 +77,25 @@ svn_error_t *open_connection(const char *url)
>
> svn_error_t *replay_range(svn_revnum_t start_revision, svn_revnum_t end_revision)
> {
[...]
> + SVN_ERR(svn_cmdline_printf(pool, SVN_REPOS_DUMPFILE_MAGIC_HEADER ": %d\n",
> + SVN_REPOS_DUMPFILE_FORMAT_VERSION));
Did this sneak in from a later patch?
> + SVN_ERR(svn_ra_replay_range(session, start_revision, end_revision,
> + 0, TRUE, replay_revstart, replay_revend,
> + replay_baton, pool));
Makes sense.
Received on 2010-07-07 20:27:52 CEST